1 선 장치 에뮬레이션


10

내가하고 싶은 것은 ATTiny IC가 1 선 버스의 슬레이브가되고 자체 S / N과 특정 기능에 대한 명령 목록이 있다는 것입니다.

내가 알고 싶은 것은 arduino 사이트에서 하나의 와이어 라이브러리 를 사용하여 데이터를 슬레이브로 보낼 수 있는지입니다 .

예를 들어, 요청 된 정보를 마스터에보고하는 여러 유형의 센서가있는 한 방에 슬레이브를 두거나 마스터가 블라인드와 같은 것을 제어하도록 지시 할 수 있습니다.

질문 버스 라인을 모니터링하고 마스터의 요청에 응답하고 일반 센서가 데이터를 전송하는 방식도 고려해야합니까? 최상의 기능을 얻으려면 슬레이브를 어느 주파수에서 실행해야합니까?

참고로 기생의 힘을 사용하지 않습니다.



@ Gerben-검색하기 전에 그것을 발견했습니다. 그것을 통해 감추었다. 그러나 약간의 오류가 있었기 때문에 걱정했지만 걱정은하지 못했습니다. 또한 사용자 정의 슬레이브를 사용하는 검색 적 디자인은 일반적인 것처럼 보이지 않으므로 위의 질문입니다.
RSM

도서관이 그것을 지원한다고합니다. 내가 생각 하기에 특별히 라이브러리가 있습니다. 속도는 약 15kbps 인 것으로 보입니다. CPU 속도는 실제로 중요하지 않지만 라이브러리에 따라 다릅니다. 배터리 전원을 사용하지 않는 경우 8mhz 또는 16mhz에서 실행하면 괜찮습니다.
Gerben

@ Gerben 나는 라이브러리가 어떻게 실행되는지 테스트 할 것이다. 여전히 얻지 못하는 한 가지는 왜 하나의 와이어 슬레이브를 사용하지 않는 것이 드문 이유입니까?
RSM

@RSM이 라이브러리 확인해야합니다 github.com/MarkusLange/OneWireSlave
Ryu_hayabusa

답변:


3

내가 아는 한, 질문에 링크 한 1 와이어 라이브러리는 슬레이브가 아닌 마스터로만 행동 할 수 있습니다.

: 난 그냥 여기에 1 와이어 노예로 아두 이노 보드를 설정하는 라이브러리를 발표했습니다 https://github.com/neuoy/OneWireArduinoSlave (편집 : 여기로 이사 https://gitea.youb.fr/youen/OneWireArduinoSlave ). 나는 맞춤형 홈 오토메이션 시스템에서 사용하며 내 설정에서 완벽하게 작동합니다 (1 와이어 마스터, DS9490R은 USB를 통해 랩톱에 연결되어 있으며 Arduino Uno 인 Arduino에 전원을 공급합니다). 라이브러리는 롬 일치, 바이트 전송 및 수신과 같은 낮은 수준의 세부 정보를 처리합니다 (실제로는 제대로 이해하기가 어렵고 대부분 로직 분석기 없이는 불가능합니다). 나머지는 당신에게 달려 있습니다.

그것은 완전히 인터럽트로 구현되며 모든 통신은 백그라운드에서 수행되며 평소와 같이 다른 코드를 병렬로 실행할 수 있으며 바이트가 수신 될 때 콜백으로 통지됩니다. 마스터로 바이트를 보내는 것도 비동기식입니다.

나는 또한 Ryu_hayabusa에 의해 위에서 언급 한 것처럼 적어도 하나의 다른 라이브러리 ( https://github.com/MarkusLange/OneWireSlave ) 가 있다는 것을 알고 있습니다 . 그것은 나를 위해 작동하지 않았지만 (내 하드웨어 설정 때문인지 다른 이유인지 알지 못함) 다른 사람에게는 확실히 작동하므로 시도해 볼 가치가 있습니다. 이 라이브러리는 인터럽트로 구현되지 않은 것으로 보이므로 마스터 활동을 기다리는 동안 프로그램이 차단됩니다 (많은 시나리오에서 완벽하게 허용됨).


저장소는 이동 한 것으로 보인다 gitea.youb.fr/youen/OneWireArduinoSlave
조나스 베를린에게

1
@JonasBerlin 실제로, 나는 저장소를 옮겼다 (그것을 반영하기 위해 답을 편집했다). 나는 예전의 링크를 백업용으로 남겨두고 GitHub에서 다른 사람들을 찾기위한 참고 자료로 남겨둔다.
당신은

문제를 복사해야합니까?
조나스 베를린
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.