欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4454|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

關(guān)于單片機(jī)紅外遙控器程序的編寫

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:639952 發(fā)表于 2019-11-11 20:29 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
我現(xiàn)在用單片機(jī)外接一個(gè)紅外模塊,想要通過(guò)單片機(jī)上按鍵控制紅外模塊發(fā)射紅外,這個(gè)紅外模塊編碼是5個(gè)16進(jìn)制數(shù)組成,遵循NEC協(xié)議,我已經(jīng)有了要發(fā)送的編碼,比如這個(gè)A1 F1 00 FF 45    ,這個(gè)第一位是地址碼,第二位操作碼,三四位用戶碼,第五位解碼。我一共有四個(gè)值編碼,分別按下單片機(jī)上的四個(gè)按鍵比如1、2、3、4.控制這個(gè)外接模塊發(fā)射紅外信號(hào),從而控制小燈的亮滅。這是我的紅外模塊以及我的一部分程序,不知道接下來(lái)怎么寫了,求教

51hei圖片20191111202748.jpg (80.34 KB, 下載次數(shù): 26)

51hei圖片20191111202748.jpg

51hei圖片20191111202805.png (227.73 KB, 下載次數(shù): 24)

51hei圖片20191111202805.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:617449 發(fā)表于 2019-11-12 09:36 | 只看該作者
你好!
1、for 發(fā)送的過(guò)程里面不應(yīng)該有延時(shí)
2、用單片機(jī)作為主控,直接用單片機(jī)發(fā)射紅外,不用外置紅外模塊
3、單片機(jī)晶振采用 11.0592,單片機(jī)波特率要和紅外模塊一致
回復(fù)

使用道具 舉報(bào)

板凳
ID:639952 發(fā)表于 2019-11-12 10:18 | 只看該作者
來(lái)51學(xué)習(xí)1 發(fā)表于 2019-11-12 09:36
你好!
1、for 發(fā)送的過(guò)程里面不應(yīng)該有延時(shí)
2、用單片機(jī)作為主控,直接用單片機(jī)發(fā)射紅外,不用外置紅外模 ...

波特率是對(duì)的,現(xiàn)在的要求是用這個(gè)紅外模塊來(lái)發(fā)送
回復(fù)

使用道具 舉報(bào)

地板
ID:187303 發(fā)表于 2019-11-12 11:02 | 只看該作者
你這個(gè)模塊應(yīng)該是通過(guò)串口收發(fā)送數(shù)據(jù)的,可以參考51串口的例子
回復(fù)

使用道具 舉報(bào)

5#
ID:187303 發(fā)表于 2019-11-12 11:06

6#
ID:383215 發(fā)表于 2019-11-12 11:46 | 只看該作者
僅僅編一個(gè)紅外遙控解碼的程序,難度不太大,最難的是在一段程序里插入紅外遙控解碼程序,紅外發(fā)射的信號(hào)慢、速率低,造成遙控解碼程序速度也很慢,要想完整解碼所有的紅外發(fā)射數(shù)據(jù),勢(shì)必影響主程序的運(yùn)行,前段時(shí)間我就編了一個(gè)紅外接收程序,外部中斷進(jìn)入紅外接收程序,解碼完成后又用定時(shí)中斷退出外部中斷,就用這個(gè)方法,我編出來(lái)的紅外遙控解碼程序相當(dāng)好用,靈敏度很高,距離夠遠(yuǎn),對(duì)主程序的影響在可以接收范圍之內(nèi),我也只能給你一個(gè)思路,就是外部中斷進(jìn)入紅外接收程序,解碼完成后又用定時(shí)中斷退出外部中斷,沒有紅外發(fā)射就不會(huì)進(jìn)入紅外接收程序。
紅外發(fā)射程序沒有編過(guò),難度應(yīng)該更小,無(wú)非就是把數(shù)字調(diào)制在38K的信號(hào),你要發(fā)射的數(shù)據(jù)A1 F1 00 FF 45最后兩位不對(duì),最后兩位是反碼關(guān)系,F(xiàn)F的反碼是00。
回復(fù)

使用道具 舉報(bào)

7#
ID:245004 發(fā)表于 2019-11-12 14:06 | 只看該作者
你上面的程序是:按鍵控制串口發(fā)送5個(gè)十六進(jìn)制代碼。
你的紅外模塊功能和參數(shù)我也不知道,所以不清楚你的模塊是怎么工作的?只能猜測(cè)它會(huì)發(fā)射你要的代碼出去。
一般NEC代碼的格式是:一個(gè)起始代碼 + 一個(gè)用戶碼 + 一個(gè)用戶碼反碼 + 一個(gè)數(shù)據(jù)代碼 + 一個(gè)數(shù)據(jù)代碼反碼。
如果你的模塊也是這樣發(fā)送的,那就要看你用什么接收這個(gè)信號(hào)?是模塊還是你學(xué)習(xí)板上面的紅外接收頭?
如果是模塊的話,估計(jì)是通過(guò)串行通訊給你的學(xué)習(xí)板發(fā)送代碼,你需要編寫串行通訊接收函數(shù)來(lái)接收這個(gè)信號(hào),再根據(jù)信號(hào)控制LED燈;
反之要是通過(guò)學(xué)習(xí)板上的接收頭接收,那就要編寫紅外接收函數(shù)來(lái)處理,而不是串行接收代碼函數(shù)。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表