紅外遙控是單片機應用的一個重要技術(shù),很多家用設備應用紅外遙控進行控制操作,掌握紅外遙控編程,是單片機開發(fā)人員一項基本的技術(shù)基礎。學習掌握紅外遙控技術(shù),必然要經(jīng)歷無數(shù)的調(diào)試修改,而目前,單片機模擬常用的Proteus并不提供紅外遙控調(diào)試信號發(fā)生器,導致我們調(diào)試紅外遙控程序只能刷到單片機,用紅外遙控器實物作為紅外遙控信號發(fā)生器,來驗正我們的紅外接收程序是否正解,由于紅外遙控器一般是用身邊的家用電器遙控器就地拿來臨時使用,其所發(fā)出的信號編碼是多少我們并不知道,所以我們的程序解碼得到的信號是不是遙控器發(fā)出的信號,也就是我們的解碼程序是否正確還是不好判斷。如果Proteus能有遙控信號發(fā)生器,能讓我們隨意編輯發(fā)送遙控信號,讓我們的解碼程序接收信號并進行解碼,以驗正解碼程序是否正確,將大大方便我們的解碼程序開發(fā)。本人用Proteus的EasyHDL設計了一個紅外遙控信號發(fā)生器,可以隨意編輯紅外信號,供同學們練習紅外遙控解碼程序開發(fā)調(diào)試。本Proteus設計在開啟模擬后首先發(fā)出9毫秒的低電平和4.5毫秒的高電平作為引導碼,而后每隔2秒發(fā)出一組遙控信號,每組遙控信號由用戶碼0x50及0x50的反碼,及遙控碼及遙控碼的反碼等數(shù)據(jù)組成,共四個字節(jié)32位數(shù)據(jù)。遙控碼又按0x58,0x88,0x0f,0xaa,0x27,0x69的順序循環(huán)發(fā)出,數(shù)據(jù)位0是0.56毫秒低電平加0.56毫秒高電平,數(shù)據(jù)位1是0.56毫秒低電平加1.68毫秒高電平,同學們可以修改這些數(shù)值以適應不同的遙控信號。同學們只要將自已的程序裝入本Proteus設計的單片機中,開啟模擬就能很方便的調(diào)試解碼程序。隨同本Proteus設計附一個本人的解碼程序用以配合演示,實際調(diào)試時將自已的程序替換該程序即可。
仿真截屏如下:
Play.JPG (109.16 KB, 下載次數(shù): 106)
下載附件
2020-7-3 21:06 上傳
51hei.png (18 KB, 下載次數(shù): 108)
下載附件
2020-7-3 21:57 上傳
Proteus設計在附件(仿真+hex文件)無源碼:
IR_t.zip
(15.85 KB, 下載次數(shù): 39)
2020-7-3 21:12 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|