MCU 드라이브 기반 디코더 적외선 리모콘 (NEC 프로토콜 디코딩 수신)

아도 내 드라이버를 증명하기 위해 신뢰성을 달성 할 수에서, 처음 두지도는 말한다.

왼쪽은 빨간색 원은 내가 적외선 수신기를 사용하는 것, 보물에 모두가 살 수있는 하드웨어 측면, 물론, NEC 적외선 프로토콜을 기반으로 나는 리모컨을 사용하는 것이 녹색 상자의 모습입니다 . 특히 간단한 적외선 수신부 배선 바로 그에게 전력을 제공하고, 데이터 신호 핀은 OJBK의 MCU의 대응 핀에 연결된다. 제가 사용하는 보드가 준비하지 않기 때문에, 나는 그가 자신 회로 만든 오래된 보드의 조각을 발견, 추한 추한 점,하지만 실제 아입니다.

우측 후방 드라이브 키 상기 직렬 기록 데이터와 성공적 : 이상 shortDown, longDownStar가 longDown, releaseLong 짧은 키 입력 시작 버튼을 눌러 대표이어서 0 숫자 키 0이고, 키 프레스 기간 언론과 버튼을 해제 네 가지 상태가있다 또한 인 releaseShort 키 짧은 보도 자료를 나타내지 만이 그림이 표시되지 않습니다,하지만 사람들이 확실히 달성 할 수 안심하시기 바랍니다.

NEC 프로토콜 :

우리가 기반 NEC 디코더 적외선 원격 제어를 할 수 있기 때문에, 우리가 처음 프로토콜이 단순 NEC, NEC 음 ....... 무엇인지 이해해야합니다, 그것은 어려운 것입니다 단일 와이어 프로토콜 아니다. 카자흐어! ! ! 그런 말을하지만, 우리는 여전히 단순히 볼 필요 데, 나는 NEC 코덱 형식을 소개 그냥 여기있어.
구체적으로 분할 다른 무선 혼잡 거의 단일 디코딩 포맷 NEC 코덱 포맷, 동기 부호 (신청자), 어드레스 코드, 어드레스 카운터 코드, 데이터 코드 (제어 코드), 반전 데이터 (반전 제어) 데이터 비트 결국 , 반복 코드 반복 코드 비트 단부 ..... 반복 코드 반복 코드 비트 종료 .

참고 : 나머지 두 개의 로컬 "데이터의 최종 비트"및 "최종 비트 반복 코드",이 두 가지 많은 장소에 아무것도하고, 용기를 소환 일반 무선 프로토콜뿐만 아니라 온라인 문서를 많이하지만, 관심을 지불하지 않습니다 온라인 이 시점에없는주의를 기울이, 단지 누르면 키에 대해 수행 할 수있는 경우 사용자가 긴 언론과 짧은 눌러 사이의 차이를 인식 할 수없는 나 같은, 관심을 지불하지 않으며, 우리가이 점에 특히주의와 희망 나중에 특별히 것이다 결국 이들 두 비트.

특정 인코딩에 대해 이야기하기 전에 / 프로토콜의 디코딩, 나는 그것을 선언 할 필요가 :

나는 프로토콜이 기본적으로 말을하지 않는 인코딩, 디코딩 프로토콜을 도입,하지만 두 형식은 동일, 차이가 없습니다 얘기 위에 있지만, 코덱의 편의를 위해, 우리는 일반적으로 두 차례의 코딩 수준을 말하는 보낸 사람이 높은 수준을 전송하는 수단 사용은 낮은 수준은 인수 또는 인터넷에있는 다른 블로거의 파형을 볼 때 우리는 그가 코딩 된 말에주의를 지불해야합니다 그래서 동일하지 않습니다, 수신기에 의해 수신된다 또는 프로토콜의 디코딩이 습관이 단지 문제는, 당신은 다음, 내가 인터넷의 대부분 회로를 아무 문제가 사용되지 않습니다 다시 교화 역 전기 회로처럼 스스로 할 수 있다면 동일한 회로, 수신 대기 상태 상태 신호선이 높다.

인코딩 포맷 (프레임 프로토콜) 소개 인코딩 된 콘텐츠의 각 부분의 그 구체적인 설명.

서문 : 사람들이 난 상관 없어 가이드 헤드 또는 뭔가 다른 전화처럼, 나는 프리앰블 그에게 전화하고 싶습니다. 프리앰블은 9ms 4.5ms 높은 레벨과 낮은 수준의 조성물은 전체 시간 동기 헤더 = 5 +. (9)의 4.5 13.5ms .

밀접 어드레스 코드 앞에 말하는 데이터의 4 바이트 뒤에 프리앰블 뒤에 어드레스 방지 코드, 데이터 코드, 안티 - 코드 데이터가 구성되고, 각각 1 비트의 데이터가 어떻게 구성되어

로직 1 : 논리 1은 560us 낮고 높은 1680us 용 조성물.

논리 0 : 0 논리에 의해 560us 560us 높고 낮은 구성 요소.

즉, 4 바이트의 데이터가 모두 논리 1과 0은이 프로세스의 최소 시간은 32 비트 (560 + 560) * 32us = 35840us =된다 35.84ms는 , 가장 높은 (560 + 1680) * 71680us = 32us 71.68ms.

데이터 프레임의 4 바이트의 도입 후, 데이터는 바로 다음 프레임 위치에 정지된다.

중지 데이터 프레임을 비트 : 것을 알아야한다, 상기 데이터 프레임의 앞에 말함 조성물의 다양한 수준에 의해 1 비트 말단은 그 하강 에지의 단부의 상승 에지에 의해 개시된다. 그러나, 정지 비트,하지만 경우에만 높은 수준 ---- 대한 구성, 이 수준의 길이 620us , 당신은 의심을 가질 수있다, 당신은 높은 수준이어야합니다? 모든 데이터 프레임이 떨어지거나 말의 상승 에지에 의해 시작되기 때문에이 있어야합니다, 그 프레임의 끝은 높은 상태 당신의 제품이 될 수 있습니다 후 말을하는 것입니다! 당신 정밀 화학! ! 얇은 제품! ! ! 문제 파악, 데이터 프레임 정지 그것을 얻지 비트?

: 코드가 반복 반복 코드는 최대 가자 때까지 계속 누른 코딩 키입니다, 당신은 리모콘의 버튼을 눌러를 나타내는 데 사용되는 리모컨은 n 개의 세그먼트 다음 프리앰블 기간, 데이터 심볼의 기간을 보내드립니다 반복 야드. 반복 코드는 9ms 약 2.5ms 높고 낮은 구성 요소. 반복 코드 모든 110ms가 한 번 전송 다음을 계산하는 방법 첫 번째 단락의 반복의 시간 코드를 전송, 나는, 온라인 보 스피커를 많이 읽어 사실, 매우 명확하지. 소위 반복 코드에 대해 이야기마다 110ms 후 전송 시작부터 프리앰블에서 우리는 코드의 첫 번째 단락은 시간의 어떤 기간이 중복 전송됩니다 계산하기 위해 함께 작동.

첫째 단락 반복 코드 : 프리앰블 데이터 프레임 시간 13.5ms + 시간 (분 : 35.84ms, 최대 : 71.68ms ) + 스톱 비트 데이터 프레임 560us = (분 : 49.9ms, 최대 : 85.74)는 그 첫 번째 세그먼트 반복 코드 시간이 상기 데이터 프레임의 종료 후에 송신해야 110ms - (분 : 49.9ms 최대 : 85.74) = (분 : 24.26ms 맥스 60.1ms) 내를, 우리는 프레임의 종료 후에 말하자면 그 24.26ms ~ 60.1ms 첫 번째 세그먼트는 프리앰블 내에 수용되도록하는 기준으로 결정될 수 있고, 물론, 처음부터 바람직 직접 카운트 시간이 가장 좋다.

정지 비트의 반복 코드 : 단부를 송신하는 반복 코드를 전송 한 후 각 세트 후의 정지 비트를 보낼 프레임으로 반복 코드 및 데이터 스톱 비트의 정지 비트 , 또한 560us 고레벨 조성물의 길이를 갖는다. 후방 정지 반복 코드 비트 N 개의 부족이 반복되는 패턴으로 다음되며, 동일한 코드의 반복에 대한 각각의 시간 간격은 우리가 낮은 수신해야하는 시간을 비트 후에 중복 코드 세트 셀 수 후 같은 110ms이다 반복 코드를 설정합니다. 110ms- (9ms + + 약 2.5ms 560us) = 97.94ms 97.94ms 고반복 코드 후의 모발의 다음 세트로 코드 비트 단부의 각각의 그룹을 반복한다.

이 페이스트도 나를 데이터가 약간 다른 비트 말했지만, 내 아내는 동일하며, 그림의 파형을 송신 측의 파형 대신 파형의 수신 측이다.

대부분의 온라인 대화 팔 부러진 된 다리 누락, 충분히 설명하지, 난 드라이브를 만들기 위해 말을 내가 모든 사람에 따라 매우 상세하게해야한다 말하는거야 말할 수는 없지만, 온라인으로 언급하지 않은 다른 블로거를 만회 할 수 있어야한다 장소, 그리고 난 정말 그들이이 밖으로 일을 눌러 드라이브 생각했다.

여기에 내가 더 말을 생각 문서를 붙여,하지만 어쩌면 당신이 도움이 될 수 있습니다, 코딩 부분에 관한 것입니다.

https://blog.csdn.net/lee_jimmy/article/details/81056420

 

내가 내 드라이버 코드를 업로드합니다, 당신은 단지 모듈을 구동 할 수 있어야 간단한 수정을 다운로드해야합니다.

마지막으로, 제한된 수준, 능력, 완벽하거나 병약 한 왕은 용서 잘못된 장소 및 코멘트 섹션에서 말해하도록 요구하지 말 하노라 지금까지 나를 수 있도록, 사람들이 자신에게 어떤 해.

 

 

 

 

 

 

 

 

 

 

 

출시 사 원저 · 원의 칭찬 0 · 조회수 394

추천

출처blog.csdn.net/qq_33784286/article/details/103310831