<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于TC9012F的紅外遙控器解碼器的設計

基于TC9012F的紅外遙控器解碼器的設計

作者: 時(shí)間:2011-11-02 來(lái)源:網(wǎng)絡(luò ) 收藏

  T是一種通用型紅外遙控信號發(fā)送用CMOS大規模集成電路,適用于電視(TV),磁帶錄像機(VTR),激光唱機等設備的遙控操作。市場(chǎng)上,以T為核心的9012型被廣泛使用且價(jià)格便宜。將設計的基于單片機AT89C51的9012型紅外遙控應用于生產(chǎn)即時(shí)顯示系統中,作為參數設置和系統控制用,在實(shí)際應用中收到了良好效果。

  1 紅外線(xiàn)遙控信號發(fā)送器電路 T的遙控信號

  TC9012F為4位專(zhuān)用微控制器,其內部振蕩電路的振蕩頻率fosc典型值為455 kHz。當不按下操作鍵時(shí),其內部455 kHz的時(shí)鐘振蕩器停止工作,以減少電池消耗。內部分頻電路將振蕩頻率,fosc進(jìn)行12分頻后,變成頻率fc=37.9 kHz,占空比為1/3的脈沖載波信號。 紅外遙控信號發(fā)送器電路由集成電路TC9012F、鍵盤(pán)矩陣電路、驅動(dòng)器和紅外發(fā)光二極管組成,遙控信號為37.9 kHz的脈沖載波被遙控編碼脈沖調制的已調波,如圖1所示。



  遙控編碼脈沖由引導碼、用戶(hù)碼、功能碼和功能碼的相反碼組成,用戶(hù)碼是同一組碼發(fā)送兩次,如圖2所示。用戶(hù)碼為8位,所以整個(gè)脈沖碼為32位。引導碼作為接收數據的準備脈沖,他由8TCP(4.5 ms)的高電平和8TCP(4.5 ms)的低電平組成。用戶(hù)碼和功能碼采用脈沖位置調制(PPM)方式編碼,根據脈沖之間的時(shí)間間隔來(lái)區分碼值的"0"或"1"。對應于二進(jìn)制數字信號的"0"或"1",脈沖時(shí)間間隔分別為2TCP(1.125 ms)和4TCP(2.25 ms),而每一脈沖的寬度仍不變,均為T(mén)CP(0.562 6 ms)。由于用戶(hù)碼發(fā)送兩次,功能碼與其相反碼一起發(fā)送,因此系統的誤動(dòng)作很少。

  本遙控器采用第一次發(fā)送的遙控信號的編碼脈沖(圖3所示)和第二、第三次連續發(fā)送的遙控信號的編碼脈沖(圖4所示)不同的工作方式。這樣,當按鍵一直按著(zhù)的時(shí)候,從第二次連續發(fā)送開(kāi)始,只發(fā)送引導碼和用戶(hù)碼第一位SO的相反碼SO,因此可減少接收處理時(shí)間和紅外發(fā)光二極管功耗,遙控編碼脈沖經(jīng)脈沖載波調制后由TC9021F的第腳輸出,再經(jīng)激勵器驅動(dòng)紅外發(fā)光二極管,發(fā)送出波長(cháng)為940nm的脈沖紅外光。假設用戶(hù)碼為十六進(jìn)制的76H則第一次發(fā)送的遙控信號的編碼脈沖如圖3所示。



  由圖2和圖3可以看出,遙控編碼脈沖波形的輸出時(shí)間為192TCP或224TCP,α為用戶(hù)碼(8位)的輸出時(shí)間。當α≥26TCP時(shí),遙控編碼脈沖波形輸出時(shí)間為224TCP.另外,對于連續發(fā)送的編碼脈沖中用戶(hù)碼第一位的相反碼的脈沖間隔時(shí)間,當SO="1"時(shí),則SO="0",該時(shí)間為2TCP,當SO="0"時(shí),則SO="1",該時(shí)間為4TCP.

  2硬件設計

  硬件以AT89C51單片機為核心,如圖5所示,圖中只給出接收紅外遙控信號的部分電路。紅外遙控信號經(jīng)過(guò)紅外接收模塊接收后,解調為遙控信號的編碼脈沖由輸出端A輸出,其波形如圖3和圖4所示,此信號經(jīng)過(guò)反相器74LS04輸出到AT89C51的外部中斷INT0輸入端.單片機通過(guò)運行程序對TC9021所發(fā)出的編碼脈沖進(jìn)行接收和譯碼。

  3單片機程序設計

  單片機程序主要解決的問(wèn)題就是如何對接收到的9021型紅外遙控器所發(fā)射的信號進(jìn)行解碼,編碼脈沖信號是由引導碼、用戶(hù)碼、和功能碼等部分組成,我們只對獲取其功能碼過(guò)程進(jìn)行分析。在單片機設置中,將單片機AT89C51內部定時(shí)器/計數器T0設為定時(shí)方式1,定時(shí)時(shí)間為1 ms;設外部中斷INT0為下降沿中斷觸發(fā)方式,由于在接收時(shí)將編碼脈沖信號進(jìn)行反相,因此,每當INT0外管腳信號下降沿到來(lái)時(shí),外部中斷INT0發(fā)生中斷,啟動(dòng)定時(shí)器T0,定時(shí)器每次中斷定時(shí)時(shí)間為1 ms并累加到定時(shí)計數器中,在下一次外部中斷INT0發(fā)生中斷時(shí)讀取定時(shí)計數器中的時(shí)間,通過(guò)對兩個(gè)脈沖之間的定時(shí)時(shí)間的分析來(lái)對遙控器功能碼進(jìn)行解碼。圖6、圖7和圖8分別給出解碼器主程序、定時(shí)器T0中斷程序和外部中斷INT0中斷程序的流程圖。





  4結 語(yǔ)

  生產(chǎn)即時(shí)顯示系統面向生產(chǎn)現場(chǎng),對生產(chǎn)效率進(jìn)行量化管理,目前在發(fā)達國家和國內一些外資企業(yè)已經(jīng)得到廣泛的應用。他通過(guò)即時(shí)顯示生產(chǎn)中的定額任務(wù)量、生產(chǎn)目標以及當前時(shí)刻實(shí)際完成的生產(chǎn)數量,可以使生產(chǎn)情況一目了然,提高了生產(chǎn)效率。此顯示系統一般都安放在生產(chǎn)線(xiàn)上方,工作人員需要經(jīng)常對顯示系統進(jìn)行操作,設定和修改數據,用紅外遙控器對生產(chǎn)即時(shí)顯示系統進(jìn)行不接觸的參數設定,可以使操作靈活方便,抗干擾強。



關(guān)鍵詞: C9012F 紅外遙控器 解碼器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>