라벨이 i2c인 게시물 표시

T-PICOC3(MICROPYTHON)으로 온습도(SHT30) 테스트. (4)

이미지
  T-PICOC3(MICROPYTHON)으로 온습도(SHT30) 테스트. (4) 이전 포스트  에선 machine 라이브러리의 LED 출력 및 I2C 관련 기본 정보 및 온습도계인 SHT30에 대해 조금 알아 보았다. 그리고 간단히 내 장치랑 연결되 있는 온습도계의 I2C 어드레스까지 스캔을 했다. 이번엔 데이터를 진짜 가져와 보자. 일단 machine 라이브러리에 I2C 와 SoftI2C 가 존재 하는것 같다. 일반적인 I2C 는 기본 I2C 라인을 이용하여 사용하여 효율적이고 빠르지만 핀에 제약이 있고, 소프트웨어I2C 는 모든핀에 사용하지만 효율적이지는 않다고 한다. 일단 난 기본 I2C 를 사용해서 테스트 해봐야겠다. import random import utime import st7789 import tft_config import vga1_bold_16x32 as font1 import machine from machine import UART,Pin,Timer,ADC,I2C,PWM tft = tft_config . config( 1 , 0 , 0 ) led = Pin( 25 ,Pin . OUT) i2c = I2C( 0 ,scl = Pin( 13 ), sda = Pin( 12 ), freq = 400000 ) print (i2c . scan()) def tick (timer): global buf led . toggle() def sht30_1 (): global i2c i2c . writeto( 0x44 ,b ' \x2C\x06 ' ) data = i2c . readfrom( 0x44 , 6 ) print ( str (data)) def main (): led . value( 0 ) tim = Timer() tim . init(mode = Timer . PE...

T-PICOC3(MICROPYTHON)으로 온습도(SHT30) 테스트. (3)

이미지
  T-PICOC3(MICROPYTHON)으로 온습도(SHT30) 테스트. (3) 이전 포스트  에선 LCD 라이브러리를 이용해 예제 파일을 실행 시켜보았다. 일단 다른 main.py 파일을 만들어서 예제 소스를 복사 붙여넣기 한다음, 나에게 맞게 수정을  해봐야겠다. 그리고 나머지 출력 이나 버튼 입력등의 테스트를 진행해 볼생각이다. 아 그리고 파일을 main.py 로 생성후 pico 에 다운로드시 전원 입력되면 바로 실행이 된다. 자 일단 기본 LED 예제를 넣어서 테스트 해보자. 다운로드한 라이브러리 ( 1번째 포스트 )폴더 내의 doc 폴더에 raspberry-pi-pico-python-sdk.pdf 파일이 있다.  앞부분은 다 버리고 12page 부터 LED Blink 예제가 있다. 근데 그냥 키면 재미 없으니깐 타이머 예제를 활용해서 켜보자. from machine import Pin, Timer led = Pin( 25 , Pin . OUT) tim = Timer() def tick (timer):      global led      led . toggle() tim . init(freq = 2.5 , mode = Timer . PERIODIC, callback = tick) machine 라이브러리는 마이크로 파이썬 에서 사용하는 하드웨어 제어 라이브러리다. led 변수에 Pin 이란 인스턴스메소드를 할당시킨다. 그때 매개변수를 같이 넣고 led 란 변수는 machine.Pin(25,Pin.OUT) 으로 사용. 그리고 tim 변수에  Timer() 인스턴스메소드를 할당.  def tick(timer): 로 메소드 정의후 아래에는 위에서 만든 led 를 글로벌변수로 사용하고 tick 이 불려질때마다 led.toggle() 로 LED 를 토글시킨다. 그리고 타이머 초기화는 맨아래 init 으로 초기화 하는데 , freq는 h...