'Python'에 해당되는 글 7건

  1. 2023.04.19 Serial
  2. 2022.10.31 uft-8
  3. 2022.04.05 pip 설치 문제 Faltal error in launcher: Unable to create process using
  4. 2021.02.02 if index error
  5. 2021.01.27 aes256 암호화 복호화
  6. 2021.01.07 다른 module에서 메인 모듈의 함수를 호출하여 메인 모듈의 변수를 변경?
  7. 2021.01.04 python C#에서의 System.Action 처럼 다른 함수 불러오기

Serial

Python 2023. 4. 19. 15:36
import serial
import threading
import time
import parkingControl as Main
class Serial:
    def __init__(self, port, baudrate):
        self.port = port
        self.baudrate = baudrate
        self.serial_port = None
        self.thread_recv = None
        self.is_recv = False
   
    def connect(self):
        try:
            self.serial_port = serial.Serial(self.port, self.baudrate, timeout=0)
            self.is_recv = True
            self.thread_recv = threading.Thread(target=self.recv)
            self.thread_recv.daemon = False
            self.thread_recv.start()
            print("Connected!!")
        except Exception as e:
            print(f"Error connecting to serial port: {e}")
   
    def recv(self):
        while self.is_recv:
            data = self.serial_port.readline().decode().strip()
            if data:
                Main.on_receive_serial(data)

    def disconnect(self):
        self.is_recv = False
        if self.thread_recv:
            self.thread_recv.join()
        if self.serial_port:
            self.serial_port.close()
        print(f"diconnect {self.port}")

    def send(self, data):
        self.serial_port.write(data.encode())

if __name__ == "__main__":
    s = Serial("COM7", 115200)
    s.connect()
    while True:
        s.send("Hello, world!")
        time.sleep(10)

'Python' 카테고리의 다른 글

uft-8  (0) 2022.10.31
aes256 암호화 복호화  (0) 2021.01.27
:

uft-8

Python 2022. 10. 31. 14:06
# -*- coding: utf-8 -*-

'Python' 카테고리의 다른 글

Serial  (0) 2023.04.19
aes256 암호화 복호화  (0) 2021.01.27
:

pip 설치 문제 Faltal error in launcher: Unable to create process using

Python/problems_python 2022. 4. 5. 15:34

경로 문제

pip install XXX
라고 쓰지말고

python -m pip install XXX

:

if index error

Python/problems_python 2021. 2. 2. 13:16

a = "hi"

try:

    if data[0] == ":" and data[-1] == ";":
        print "aa"
    elif data[8] == "{" and data[-3] == "}":
        print "bb"
    else:
        print data
except:
    print data

:

aes256 암호화 복호화

Python 2021. 1. 27. 10:47
#-*-coding:utf-8-*-
import hashlib
import base64
#from Crypto import Random
from Crypto.Cipher import AES
iv = ""
BS = AES.block_size
class AESCipher:
def __init__(self, key, ivIn):
# print "key : " + key
# print "iv : " + ivIn
self.key = hashlib.sha256(key).digest()
global iv
iv = ivIn
def encrypt(self, raw):
raw = self.on_pad(raw)
cipher = AES.new(self.key, AES.MODE_CBC, iv)
return base64.b64encode(iv + cipher.encrypt(raw))
def decrypt(self, enc):
enc = base64.b64decode(enc)
dIv = enc[:BS]
cipher = AES.new(self.key, AES.MODE_CBC, dIv)
def on_pad(self, s):
return s + (BS - len(s) % BS) * chr(BS - len(s) % BS)
def on_unpad(self, s):
return s[:-ord(s[len(s)-1:])]



'Python' 카테고리의 다른 글

Serial  (0) 2023.04.19
uft-8  (0) 2022.10.31
:

다른 module에서 메인 모듈의 함수를 호출하여 메인 모듈의 변수를 변경?

Python/problems_python 2021. 1. 7. 09:40
#aa.py
import bb
a = 0
if __name__=="__main__":
bb.start()
print a
def end():
a = 15
#bb.py
def start():
import aa
aa.end()

#print 결과 = 0 ??
#포인터에 접근하여 값을 주고 싶은데 방법을 모르겠당..
결법?은 모르겠고 급한 불 끄기
데이터를 저장해놓는 module을 하나 더 만들어서 저장하고 불러왔다.




















#aa.py
import bb
import cc
a = 0
if __name__ == "__main__":
bb.start()
a = cc.c
print a
def end():
cc.c = 15
#bb.py
def start():
import aa
aa.end()
#cc.py
a = 0


#print 결과 = 15
#dataStorage 역할을 하는 cc.py module을 만들어 저장한 뒤 필요한 정보를 불러와 사용
#클래스를 사용해도 될 것 같음..?

python, main modules func to using another module, access main module value

:

python C#에서의 System.Action 처럼 다른 함수 불러오기

Python/problems_python 2021. 1. 4. 15:07

#aa.py
import bb
    def printA():
        print "A"

if __name__ == "__main__":
    bb.init()


#bb.py
def init():
    print 'bb'
    from aa import printA
    printA()


#if __name__ == "__main__":
을 통해서 현재 호출한 python이 main이 아닐 경우 실행하지 않도록
C, C++, C#의 main 함수 처럼 사용 할 수 있다.

: