라벨이 T-PICOC3(MICROPYTHON)으로 WIFI를 연결해 보자.인 게시물 표시

T-PICOC3(MICROPYTHON)으로 WIFI 를 연결해보자. (2)

이미지
  T-PICOC3(MICROPYTHON)으로 WIFI를 연결해보자. (2) 이전포스트  에선 WIFI를 사용하기 위해 했던 설정 부분을 확인해봤고, 실제로 ESP32-C3로 주변 2.4ghz 대역의 wifi들을 검색, 연결 까지 해보았다. 그리고 원래 시간을 받아와서 시스템 시간을 현재 시간으로 맞춰줄려고 했는데... wifi를 연결하면 자동으로 시간을 가져오는듯 하다? utime.localtime() 으로 시간을 확인할수 있다. 리턴은 (2023, 5, 10, 9, 20, 7, 2, 130) 이렇게 나오고 타입은 tuple 이다. 이녀석을 조금 다듬어서 출력되고 있는 온습도 밑에 같이 출력해줘야겠다. def check_time (): buftime = utime . localtime() #print(buftime) time = str (buftime[ 0 ])[ 2 :] + "/" + zfill( str (buftime[ 1 ]), 2 ) + "/" + zfill( str (buftime[ 2 ]), 2 ) + " " + zfill( str (buftime[ 3 ]), 2 ) + ":" + zfill( str (buftime[ 4 ]), 2 ) + ":" + zfill( str (buftime[ 5 ]), 2 ) return time def zfill (s,length): return ( "00" + s)[ - length:] 위와 같이 함수를 만들어서 23/05/10 09:27:18 의 형식으로 만들었다. 참고로 저위의 zfill 이란 함수는 날짜와 시간중 한자리수 즉 1~9 까지의 숫자를 01~09로 표현해 주기위해 만든 함수다. 그리고 저번에 만든 LCD 출력 함수에 넣어서 실행 시켜 보았다. 그래도 한번 확인은 해보자  http://worldtimeapi.org/  사이트에서 세계시간을 HTT...

T-PICOC3(MICROPYTHON)으로 WIFI 를 연결해보자. (1)

이미지
  T-PICOC3(MICROPYTHON)으로 WIFI를 연결해보자. (1) 처음 T-PicoC3 를 받고 전원을 넣어보면 wifi 를 이용해 특정 ssid 에 연결하려는 시도가 보인다. 아무래도 초기 QC 에서 보드 테스트용으로 software를 올린듯 하다. 나도 이 와이파이를 이용해 현재 무선 인터넷을 사용해보자. 회로도를 보면   위는 RP2040  위는 ESP32-C3 TX , RX , CTS , RTS 가 연결되어 있는것을 알수 있다.  그럼 바로 진행 하기 앞서 ESP32-C3의 UART 커맨드를 알기 위해 검색을 좀 해보니, User guide 사이트가 있다.  ESP-AT User Guide 링크 저곳을 참고 하길 바란다. 기본 AT 커맨드로 진행 하고 wifi , bluetooth 관련 커맨드도 있다.  내가 할건 WIFI 테스트를 할거니, 일단 기본으로 AT 라고 보내서 OK가 오는지 확인해 보자. 그러기 위해선 UART를 initialize 해줘야 한다.  uart1 = UART( 1 , baudrate = 115200 , tx = Pin( 8 ), rx = Pin( 9 )) Machine 라이브러리의 Uart 메소드를 uart1 이란 변수에 넣어주고 이녀석으로 사용한다. 맨앞은 스탑비트 1을 의미하고, 보레이트, tx, rx 핀등을 정의해준다. 그리고 나의경우 보통 통신 read는 스레드에서 처리하는데, micropython 의 스레드를 테스트 하던중, 너무 빡쳐서 포기하고 폴링방식으로 처리를 했다.  한마디로 보내고 데이터 읽기 기다리고 데이터 수신 완료후 다음 순서로 진행하는 방식이다. 아직까진 테스트니깐 이러한 방식으로 일단 데이터 수신이 되는지 확인해봤다. 송신의 경우 앞에 만들어준 변수를 사용해 uart1.write("내용") 수신의 경우 buffer = uart1.read()  방식인데. 처음에  uart1.write("AT") ...