採用Atmega8作為紅外發射編碼和接收解碼晶片設計

2020-12-12 電子工程世界網

1 引言

紅外遙控器已被廣泛使用在各種類型的家電產品上,它的出現給使用家器提供了很多的便利。紅外遙控系統一般由紅外發射裝置和紅外接受設備兩大部分組成。紅外發射裝置又可由鍵盤電路、紅外編碼晶片、電源和紅外發射電路組成。紅外接收設備可由紅外接收電路、紅外解碼晶片、電源和應用電路組成。通常為了使信號能更好的被傳輸發送端將基帶二進位信號調製為脈衝串信號,通過紅外發射管發射。本設計採用Atmega8作為紅外發射編碼和接收解碼晶片。

2 系統功能分析

一個完整的照明燈的紅外遙控電路應具有以下功能:

按下任意一個開關能使相應的燈實現亮滅的功能,按下總開關實現所有燈的亮滅,按下相應的定時關閉鍵能實現電燈在設定的時間內關閉。

3 系統硬體的實現方案

3.1 系統原理圖

通用紅外遙控系統由調製、發射和接收三大部分組成,本系統以Atmega8單片機作為紅外發射編碼和接收解碼晶片,另外再以HS5104作為發射編碼晶片,5個鍵盤輸入模塊中的三個用於給3路電燈分別進行亮滅操作,一個鍵盤輸入模塊用於操作所有燈的亮滅,最後剩下的一個鍵盤輸入模塊用於實現電燈在設定的時間內關閉的功能。紅外遙控系統如圖1所示:

圖1 紅外遙控系統

(1)發射系統

發射系統一般用電池供電,這就要求晶片的功耗要很低,晶片大多都設計成可以處於休眠狀態,當有按鍵按下時才工作,這樣可以降低功耗。紅外線通過紅外發光二極體(LED)發射出去,紅外發光二極體內部材料和普通發光二極體不同,在其兩端施加一定電壓時,它發出的是紅外線而不是可見光。

圖2a 簡單驅動電路

圖2b 射擊輸出驅動電路

如圖2a和圖2b是LED的驅動電路,圖2a是最簡單電路, 選用元件時要注意三極體的開關速度要快,還要考慮到LED的正向電流和反向漏電流,一般流過LED的最大正向電流為100mA,電流越大,其發射的波形強度越大。

圖2a電路有一點缺陷,當電池電壓下降時,流過LED的電流會降低,發射波形強度降低,遙控距離就會變小。圖2b所示的射極輸出電路可以解決這個問題,兩個二極體把三級管基極電壓鉗位在1.2V左右,因此三級管發射極電壓固定在0.6V左右,發射極電流IE基本不變,根據IE≈IC,所以流過LED的電流也基本不變,這樣保證了當電池電壓降低時還可以保證一定的遙控距離。

(2)接收系統

紅外信號接收系統的典型電路如圖3a所示:

圖3a 紅外線接收頭內部電路

該電路包括紅外監測二極體,放大器,限副器,帶通濾波器,積分電路,比較器等。紅外監測二極體監測到紅外信號,然後把信號送到放大器和限幅器,限幅器把脈衝幅度控制在一定的水平,而不論紅外發射器和接收器的距離遠近。交流信號進入帶通濾波器,帶通濾波器可以通過30khz到60khz的負載波,通過解調電路和積分電路進入比較器,比較器輸出高低電平,還原出發射端的信號波形。注意輸出的高低電平和發射端是反相的,這樣的目的是為了提高接收的靈敏度。

以上電路被集成在一個元件中,成為一體化紅外線接收頭,如圖3b所示:

圖3b 紅外線接收頭

紅外線接收頭的種類很多,引腳定義也不相同,一般都有三個引腳,包括供電腳,接地和信號輸出腳。根據發射端調製載波的不同應選用相應解調頻率的接收頭。

紅外線接收頭內部放大器的增益很大,很容易引起幹擾,因此在接收頭的供電腳上須加上濾波電容,一般在22uf以上。有的廠家建議在供電腳和電源之間接入330歐電阻,進一步降低電源幹擾。

(3)調製

紅外遙控發射數據時採用調製的方式,即把數據和一定頻率的載波進行「與」操作,這樣可以提高發射效率和降低電源功耗。

調製載波頻率一般在30khz到60khz之間,大多數使用的是38kHz,佔空比1/3的方波,如圖3.4所示,這是由發射端所使用的455kHz晶振決定的。在發射端要對晶振進行整數分頻,分頻係數一般取12,所以455kHz÷12≈37.9 kHz≈38kHz。

圖4 載波波形

圖5a為系統發射硬體方框圖:

圖5a 發射系統方框圖

圖5b為系統接受硬體方框圖:

圖5b 接收系統方框圖

3.2 各模塊電路原理圖

(1)Atmega8MCU介紹

系統的控制核心Atmega8單片機,是Atmel公司推出的基於AVR RICS低功耗CMOS 8位高性能單片機。由於其先進的指令集以及單時鐘周期指令執行時間, ATmega8 的數據吞吐率高達 1MIPS/MHz,從而可以緩減系統在功耗和處理速度之間的矛盾。圖6為其引腳排列圖。

圖6 Atmega8引腳排列圖

在本設計中的發射電路中,Atmega8單片機的PC6、PD0~PD3口用於鍵盤輸入;PB1口接紅外發光二極體以及發射指示燈。在接受電路中Atmega8單片機的PB1~PB3用於接三路電燈,PD5~PD7、PB0、PB6、PB7接六路指示燈,PD2接紅外接受頭。

(2)HS5104紅外遙控編碼發射電路

本設計中,還另外採用了編碼器BA5104組成紅外發射電路。K1~K8與地構成按鍵開關電路,這裡只用了K1~K5。其指令經三極體Q放大,驅動L1紅外發射管發射出經編碼後的紅外遙控信號。HS5104引腳排列圖如圖7所示:

圖7 HS5104引腳排列圖

腳位說明:

(3)其他電路

紅外發射二極體的接法如圖8所示:

圖8 紅外發射二極體連接原理圖

3.3 系統電路原理圖

發射電路硬體原理圖如圖9a和9b所示。

圖9a 發射電路(M8)硬體原理圖

圖9b 發射電路(hs5104)硬體原理圖

接收電路硬體原理圖如圖9c所示:

4 系統軟體的實現方案

4.1 系統總流程圖

本設計採用的BASCOM編程,是MCS公司開發的以BASIC高級程序設計語言為平臺的AVR單片機開發軟體,它簡要清晰,易於理解、掌握。軟體設計流程圖如圖10a和圖10b所示:

圖10a 發送程序流程圖

圖10b 接收程序流程圖

5 系統軟硬體的調試

5.1 系統硬體調試

在電腦上仿真以後按照硬體電路圖連接好電路,將編寫的程序寫入單片機之前先校驗下載線是否接通,然後再寫入。調試時,先連接好下載線與上位機、目標板,給單片機系統供電,晶片選擇ATMEGA8,它的下載環境如圖11所示。

圖11 智峰下載軟體界面圖

5.2 系統軟體調試

本系統使用的軟體開發環境是BASCOM-AVR IDE,它是MCS公司開發的以BASIC高級程序設計語言為平臺的AVR單片機開發軟體,該軟體具有可視化圖形界面,是與VB/QB高度兼容的結構化BASIC語言,簡要清晰,易於理解、掌握。除了有專門為AVR單片機串行和並行接口、外圍器件開發的語句外,另外還擴充了許多通用的單片機外部設備的專用語句,調用各種硬體資源更加得心應手。

在BASCOM-AVR IDE中,程序經過編譯之後,編譯產生的hex文件,供下載之用。同時也可進入BASCOM-AVR IDE提供的軟體仿真窗口進行仿真運行,從實物圖形化的硬體仿真平臺上,可以直觀地進行實驗操作。圖12為BASCOM-AVR IDE的開發環境主界面。

圖12 BASCOM-AVR開發環境圖

6 結語

紅外線遙控是目前使用最廣泛的一種通信和遙控手段。由於紅外線遙控裝置具有體積小、功耗低、功能強、成本低等特點,因而,繼彩電、錄像機之後,在錄音機、音響設備、空凋機以及玩具等其它小型電器裝置上也紛紛採用紅外線遙控。當然,紅外遙控照明燈如果要投入大規模生產時,還需要對它不斷的進行優化。

關鍵字:Atmega8 編輯:王磊 引用地址:http://news.eeworld.com.cn/mndz/article_2018052027050.html 本網站轉載的所有的文章、圖片、音頻視頻文件等資料的版權歸版權所有人所有,本站採用的非本站原創文章及圖片等內容無法一一聯繫確認版權者。如果本網所選內容的文章作者及編輯認為其作品不宜公開自由傳播,或不應無償使用,請及時通過電子郵件或電話通知我們,以迅速採取適當措施,避免給雙方造成不必要的經濟損失。

推薦閱讀

AVR BOOTLOADER 實例開發筆記

寫了一個基於Atmega8 的Bootloader應用實例,其間遇到了一些問題,下面把過程和問題敘述如下,供朋友們參考。工程實例的代碼在http://download.csdn.net/detail/knowmuch/7712209,也包含了一個C#的配套燒錄程序,歡迎有興趣的朋友們下載。1、準備一個目標程序(被加載的應用程式),一般環境編譯生成的結果是Hex文件,而寫進Flash的是Bin文件。二者轉換其實很簡單,去掉Hex中的類型、長度、校驗等,只留下數據依次排列就好了。a)Hex文件格式:以ASCII格式記錄,「:」表示一行開始,第1、2個字符表示此行數據長度。第3-6字符表示數據存儲的起始地址,第7、8字符表示類型,「00

發表於 2020-04-28

ATmega8熔絲設置

以下內容根據mega8的英文手冊翻譯,希望對大家有所幫助。如發現錯誤,懇請大家指正。mega8熔絲位:1:未編程(不選中)0:編程(選中)********************************熔絲位        說明            預設設置********************************RSTDISBL:    復位或I/O功能選擇    1        1:復位功能;0:I/O功能(PC6)WDTON: 

發表於 2020-03-31

基於atmega8的arduino最小系統製作(arduino uno作為下載器)

我們在最小系統的製作過程中,常常會遇到下載器驅動安裝不成功的問題,絕大多數原因是因為下載器驅動不兼容win10系統。而當用arduino uno作為下載器為最小系統燒錄程序的話,不但解決了win10下的驅動問題,也可使用arduino ide直接編寫下載程序,使燒錄更加方便。材料準備atmega8×116MHZ晶振×122pf陶瓷電容×2arduino uno ×1杜邦線若干可選,一個10k電阻和一個輕觸開關用於製作復位電路。atmega8引腳圖一、最小系統電路連接(僅需最為基礎的晶振電路)實物連接如圖二、arduino uno連接電腦打開arduino IDE文件-示例-ArduinoISP-ArduinoISP-燒錄燒錄完成後

發表於 2020-03-29

實戰ArduinoUNO製作高壓編程器恢復Atmega8熔絲

上個月折騰arduino最小系統,一不小心改錯晶振熔絲位,導致一塊Atmega8A-PU晶片無法識別,請教度娘得知需要使用高壓編程器來恢復熔絲,雖然淘寶上找到有現成的刷寫設備,本著折騰精神,百度了相關資料,發現DIY一個也應該不是很困難。然後就是根據資料裡面的電路圖上淘寶掏了相關電子元件(沒辦法,小地方,很多東西都買不到,只能網購),修修改改,沒想到竟然做出來了,現在把一些製作過程分享一下,首先先上做好的板子如下:下面說說製作過程,整個製作過程主要參考了以下相關資料http://jingyan.baidu.com/article/22a299b53e2ab89e19376a05.htmlhttp://mightyohm.com

發表於 2020-03-29

用兩個atmega48(或atmega8)製作的通用編程器

主48  通過串口和電腦相連從48代替74373鎖存器編程對象是w39v040。程序有待改善 ,檢測寫入(或擦除)完成的程序用延時程序代替的。主48 pb口為雙向口,發送給從48鎖存數據,發送和接收待編程的存儲器的數據。主48 pc口是控制線 oe、we、r/c、reset ,pc5接到從48的pc5當做ALE線。主48 pd口為6位地址。從48 pb口為輸入,接收地址。從48 pd口為地址輸出。單片機用的彙編語言,電腦端程序用的c語言。從48的程序:.include "m48def.inc";變更pinc 6 為5  因為6是復位腳reset: ldi r16,0;埠b設為輸入&

發表於 2020-03-29

基於ATmega8 單片機的工頻電壓/頻率儀設計

1.引言在電力生產和電氣測試工作中,經常需要測量工頻電壓和頻率。目前市面上工頻電壓表和頻率表種類繁多,本設計與其相比具有電路簡單、體積小、功耗低、性價比高等特點。利用低價位具備AVR高檔單片機性能的ATmega8單片機,設計工頻電壓和頻率兩用測量儀。ATmega8單片機除了有A/D轉換和定時計數器功能外,其內部的模擬比較器在測量頻率電路中省了測量過零電路;I/O埠20mA驅動能力直接驅動LED數碼管,省了驅動電路。使整個硬體電路非常簡單。2.硬體設計基於ATmega8單片機工頻電壓/頻率儀設計硬體電路如圖1所示。以單片機為核心,加上少量的外部元件構成。圖1中:T1是電源變壓器和電壓互感器兩用器件(電壓互感器有變比精度要求),提供

發表於 2020-03-11

相關焦點

  • 跟我學51單片機(六):單片機外部中斷及紅外遙控器解碼
    這一講將重點介紹單片機如何通過捕獲來實現對紅外遙控器解碼。通過該講,讀者可以掌握紅外遙控器的編碼原理以及如何通過單片機對遙控器進行解碼。  二、原理簡介  隨著家用電器、視聽產品的普及,紅外線遙控器已被廣泛使用在各種類型的家電產品上(如遙控開關、智能開關等)。其具有體積小、抗幹擾能力強、功耗低、功能強、成本低等特點,在工業設備中也得到廣泛應用。
  • 紅外遙控技術中單片機的應用
    引言   紅外遙控技術因其性能穩定、結構簡單、技術成熟等優點而在工業控制、儀器儀表、家電等領域中得到了廣泛的應用。一般通常使用專用的配對編、解碼晶片,組成紅外發射和接收電路,完成對設備或電器的遠動控制。圖1所示為按此方法進行紅外遙控的一般工作過程。
  • 基於MSP430F149的無線遙控教鞭設計方案
    接收部分的控制核心為TI 公司推出的低功耗MSP430 單片機, 主要完成發射端傳送來的紅外調製信息的接收和解碼操作, 將解析出的控制命令信息經串口轉USB 接口傳送至計算機, 此硬體模塊可直接插在計算機的USB 接口中, 直接由USB 接口供電; 計算機中的上位機軟體採用C# 編寫, 使用Microsoft Studio 2005 自帶的SerialPort 組件。
  • 紅外遙控功能的實現
    目錄:涉及知識點一體化紅外接收頭VS1838B簡介應用場景編碼標準
  • 紅外線遙控電動窗簾電路設計詳解
    本文所介紹的紅外窗簾遙控器的系統框圖如圖3-1所示,紅外窗簾接收控制器的系統框圖如圖3-2所示。該系統主要有兩個部分組成:一是遙控器部分,其功能為:單片機掃描遙控器上的6個按鍵(啟動/停止,打開,關閉,速度減小,速度增加和自動),當某個按鍵按下後,單片機便通過紅外發光二極體發射該按鍵的編碼。
  • 採用PC控制和單兵運行的無人車控制系統設計方案
    當上位機無線控制臺及PC端軟體準備好後,PC端控制軟體通過USB口向無線控制臺單片機發出指令,使其配置無線模塊相關寄存器,晶片進入指令發射模式;下位機由Atmega128單片機控制,在接收到上位機的指令後通過其集成的PWM外設模塊產生2路PWM波和4條轉向控制線經電機驅動模塊增大驅動能力後控制左右2個電機產生相應的動作。
  • 智能家居空調控制系統的設計
    1 系統整體設計及控制原理智能家居空調控制系統採用兩種方式控制空調,一種是傳統的遙控按鍵方式,另一種是通過手機藍牙發射命令。紅外控制主要由發送和接收兩個部分組成。目前大部分家電均採用紅外一體化接收頭來接收紅外信號。
  • 電子柵欄報警器工程設計,對射紅外發射管接收頭電路應用
    根據家庭需要,特設計製作成功了一款簡單、實用的對射式紅外線電子柵欄報警器,現介紹如下。一、基本原理 該電子柵欄報警器主要分發射機和接收機兩部分。發射機主要負責紅外線的發射,接收機主要負責紅外線的接收、判斷、警報觸發。
  • 基於ZigBee的無線紅外防盜報警系統設計
    作為防盜報警的關鍵產品,被動紅外探測器的無線化也逐漸成為一種趨勢。但是由於以下兩方面的原因,紅外探測無線報警系統虛警率較高:1)紅外探測器性能參差不齊;2)報警信號的無線傳輸容易受到幹擾,引起主機誤報警。
  • 如何設計一個基於單片機的智能排插?
    2 智能排插基本工作原理 為方便用戶使用,本設計將系統分成兩部分:排插控制系統和排插遙控器系統(如圖1、圖2 所示),它們分別由一片AT89S52 單片機控制。在排插控制系統中,單片機通過無線接收模塊接收遙控器的遙控命令、解碼並進行相關操作;單片機通過控制與排插插孔相連的繼電器來控制插孔的通斷電。 當然,插孔的通斷電也可以通過手動開關按鈕來操控。
  • 基於STM32定時器的紅外遙控數據接收設計原理
    打開APP 基於STM32定時器的紅外遙控數據接收設計原理 工程師3 發表於 2018-04-30 17:52:00 一、原理 1、紅外發射協議 紅外發射協議已經在之前的文章中寫過,在此就不贅述。
  • pt2272接收模塊電路圖及開關遙控圖解案例
    PT2272是一款用以解碼的晶片,編碼晶片PT2262發出的編碼信號由:地址碼、數據碼、同步碼組成一個完整的碼字,解碼晶片PT2272接收到信號後,其地址碼經過兩次比較核對後,VT腳才輸出高電平,與此同時相應的數據腳也輸出高電平,如果發送端一直按住按鍵,編碼晶片也會連續發射。
  • 基於ZigBee和紅外技術的病房監護系統設計【介紹】
    伺服器端採用基於網絡的管理平臺,醫生和值班護士通過PC或PDA 等設備,以WEB 瀏覽器方式查看實時數據和查詢資料庫中的歷史數據,及時做出診斷。  4.1 終端節點設計  本系統的ZigBee 模塊選用TI ZigBee SoC 晶片CC2430,片上集成高性能8051 內核、ADC、USART 等,兼容ZigBee 規範。
  • 雙模超高頻讀寫器的同步和解碼模塊設計和實現
    同步模塊以面積和低功耗為設計原則,在設計實現中,(1)採用過零點同步;(2)設計中兩種模式共用一條接收鏈路,通過外部接口,配置寄存器,選擇標準工作模式,同步模塊能夠快速判斷出標籤的理想返回速率並且進行返回速率的計算,各種速率共用一個判決機制,大大減小了同步模塊的面積;(3)解碼模塊增加再生信號相位檢測和同步時鐘相位檢測機制,提高了解碼的抗幹擾能力,降低了誤碼率,並且由同步判決模塊產生同步時鐘,經過相位檢測機制後得到的解碼時鐘
  • 遮擋式紅外探測報警器是怎樣的原理
    它由紅外發射、接收裝置和報警電路三部分組成,電路的核心部件是一塊音頻鎖相環集成電路LM567,該晶片在電路中既擔任振蕩器,又作選頻接收,外圍電路格外簡單,成本低廉,且製作容易,無須調試,工作時不受電壓溫度的影響,可在多種環境下長期穩定工作。
  • 基於CPLD的數字光端機的設計
    由於其編程靈活、設計開發周期短與先進的開發工具等特點使得對整個系統的設計調試周期大大縮短。而且對基帶信號和整個系統的控制也能處理的很好。Altera公司推出的MAX II系列晶片EPM240T100C5是一款性價比很高的CPLD晶片。共有240個邏輯單元,192個等效宏單元,內置8192bit的Flash,80個I/O口,低功耗,能滿足大部分設計的需要。
  • 編碼解碼是什麼意思?URL 如何編碼解碼?為什麼要編碼?
    編碼解碼是什麼?編碼是信息從一種形式或格式轉換為另一種形式的過程,也稱為計算機程式語言的代碼簡稱編碼。用預先規定的方法將文字、數字或其它對象編成數碼,或將信息、數據轉換成規定的電脈衝信號。編碼在電子計算機、電視、遙控和通訊等方面廣泛使用。編碼是信息從一種形式或格式轉換為另一種形式的過程。解碼,是編碼的逆過程。
  • 紅外報警系統方案
    1)報警主機A、設備功能:接收和處理報警信號,並且輸出報警控制信號,聯動其他報警設備;B、設備特點◆8有線+16無線防區:雙防區技術,節省連線。◆編程記憶功能:採用EEPROM非易失性記憶體,可多次修改,停電不丟失系統數據。◆支持8個無線遙控器錄碼:智能對碼,學習式錄入遙控器序列號,可錄入多達8個無線遙控器。
  • 採用ZigBee和RFID技術的電子標籤識別系統
    射頻晶片負責無線信號的編碼和解碼、調製和解調;電子標籤是系統的應用終端,裝載著物體的數據信息及標籤自身信息,從讀寫器天線發出的無線脈衝接收讀寫器所發出的控制信息,然後把電子標籤的數據信息通過天線再返回給讀寫器,完成讀寫器對電子標籤數據的讀寫。主從射頻模塊電路的設計,確保了讀寫器識別到的電子標籤信息準確性及可靠性。