반응형
아직 확인은 안 한 상태인데 문제가 있는 듯 보여서 일단 기사는 캡쳐
- 감지 모자 (astro-pi)는 MCU (또는 AVR이라고도 함)와 통신하는 데 SPI를 사용하고 압력 센서, 온도 / 습도 센서 및 가속도계 / 자이로 스코프 / 자 기계와 통신하려면 I2C를 사용합니다. 이를 위해 헤더 파일, 문서화 지원 및 테스트 / 예제 프로그램 세트를 개발 중입니다. http://experix.sourceforge.net 의 다운로드 섹션, my-hat 디렉토리 에서 찾을 수 있습니다 . (지금 거기에 몇 가지 오류가 있으며 수정 및 온도 측정 예제를 게시 할 준비를하고 있습니다.)
- SPI 및 I2C 클록 속도는 독립적이며 실제 전송은 전용 하드웨어에서 처리됩니다. 별도의 스레드를 실행하더라도 차이가 없습니다.
- 내 파이에서 똑같은 작업을 시도하고 있지만 SPI를 실행하는 동안 I2C가 올바르게 실행되는 데 문제가 있습니다. SPI 및 I2C 인터페이스를 실행하는 클럭 속도는 얼마입니까? 각 인터페이스가 별도의 스레드 또는 실행 파일에서 실행됩니까? 하나의 장치에 대해 8Mhz에서 SPI 인터페이스를 실행해야하지만 I2C 장치는 기본 100kHz로 클럭 된 상태로 둡니다. SPI 및 I2C 클록 속도는 독립적이며 실제 전송은 전용 하드웨어에서 처리됩니다. 별도의 스레드를 실행하더라도 차이가 없습니다.
- 그것이 내가 생각했던 것입니다. 그러나 두 실행 파일을 동시에 실행하면 I2C 판독 값이 지옥으로 이동하기 때문에 확신 할 수 없었습니다. SPI 및 I2C 실행 파일을 동시에 실행하지 않고 독립적으로 실행하면 완벽하게 실행됩니다 (데이터 손상없이 구성된 속도로 데이터 읽기). 그러나 I2C 실행 파일을 먼저 시작한 다음 SPI 실행 파일을 시작하면 I2C 판독 값이 손상되거나 전혀 전달되지 않습니다. 하지만 SPI 수치는 잘 나온다. 그래서 누구도 이것을 경험했는지 알아 보려고했습니다.
- 안녕하세요, 같은 문제가 있습니다. I2C 1에서 LCD를 사용하고 SPI에서 ATtiny85를 사용하고 있지만 SPI를 사용할 때 I2C가 작동을 멈 춥니 다.
해결방안으로 보이는 것은 스레드 잠금으로 해결
- 나는 여러 스레드가 SPI와 통신하는 통신에서 스레딩 잠금을 사용하여 간헐적 인 바핑을 정리했습니다. 읽기 또는 쓰기 기능은 잠금을 잡고 spi를 열고 읽기 또는 쓰기를 수행 한 다음 잠금을 닫고 해제합니다.
spi_lock=threading.Lock()
def readx():
values=None
with spi_lock:
spi.open(...
values=spi.xfer(...
spi.close(...
return values

반응형
'개발자 > 라즈베리파이4' 카테고리의 다른 글
| _tkinter.TclError: no display name and no $DISPLAY environment variable 에러 해결 (0) | 2021.02.09 |
|---|---|
| 지는 노을이 보고 싶어 10분 만에 만든 CCTV. Raspberry pi 사용 (0) | 2021.02.08 |
| Raspberry Pi Pico, 유연한 마이크로 컨트롤러 보드 (0) | 2021.01.29 |
| 팔로우해야 할 Top 10 Raspberry Pi 블로그 (0) | 2021.01.18 |
| 10가지 Raspberry Pi 프로젝트 아이디어 (0) | 2021.01.13 |
| 라즈베리파이 ubidots 데이터 송신 (0) | 2021.01.12 |
| Raspberry Pi와 인터페이싱 MPU6050 (가속도계 + 자이로 스코프) (4) | 2020.11.30 |
| Raspberry Pi IO Interface Module Test (0) | 2020.11.27 |
취업, 창업의 막막함, 외주 관리, 제품 부재!
당신의 고민은 무엇입니까? 현실과 동떨어진 교육, 실패만 반복하는 외주 계약,
아이디어는 있지만 구현할 기술이 없는 막막함.
우리는 알고 있습니다. 문제의 원인은 '명확한 학습, 실전 경험과 신뢰할 수 있는 기술력의 부재'에서 시작됩니다.
이제 고민을 멈추고, 캐어랩을 만나세요!
코딩(펌웨어), 전자부품과 디지털 회로설계, PCB 설계 제작, 고객(시장/수출) 발굴과 마케팅 전략으로 당신을 지원합니다.
제품 설계의 고수는 성공이 만든 게 아니라 실패가 만듭니다. 아이디어를 양산 가능한 제품으로!
귀사의 제품을 만드세요. 교육과 개발 실적으로 신뢰할 수 있는 파트너를 확보하세요.
캐어랩