本文設(shè)計(jì)了一種基于NiosⅡ的紅外學(xué)習(xí)型遙控器,把載波頻率測量、紅外信號(hào)解調(diào)、脈寬測量、調(diào)制發(fā)送IP核集中到FPGA器件上,極大地簡化外圍硬件電路,利用了Nios軟核CPU的32位處理器,可以很好地對脈寬進(jìn)行精確測量,同時(shí)提高處理速度,能夠精確地對載波頻率進(jìn)行測量,并將原始的紅外信號(hào)進(jìn)行最大程度上無失真還原,解決了單片機(jī)因時(shí)鐘頻率低無法對載波頻率進(jìn)行測量的瓶頸,實(shí)現(xiàn)了對各種各樣紅外遙控的學(xué)習(xí),真正完成了學(xué)習(xí)型遙控器的學(xué)習(xí)功能。
1 整體設(shè)計(jì)方案
系統(tǒng)主要由NiosⅡ處理器、Avalon總線、EPCS控制器、SDRAM控制器、FLASH控制器、輸入輸出I/O口、等精度測量載波頻率IP核、紅外信號(hào)解調(diào)IP核、紅外編碼脈寬測量IP核、紅外發(fā)送調(diào)制邏輯電路、中斷控制器等組成,如圖1所示。上電后,系統(tǒng)通過EPCS調(diào)用系統(tǒng)配置信息,系統(tǒng)進(jìn)行初始化。當(dāng)“學(xué)習(xí)”鍵按下時(shí),通過I/O口中斷產(chǎn)生一個(gè)測量紅外載波頻率請求信號(hào),此時(shí)“學(xué)習(xí)”指示燈亮。當(dāng)檢測到外部遙控紅外信號(hào)時(shí),處理器通過 Avalon總線調(diào)用等精度測量載波頻率IP核開始測量頻率,“學(xué)習(xí)”指示燈熄滅表示學(xué)習(xí)載波頻率成功。接下來通過“家電”按鍵即可將該載波頻率儲(chǔ)存到該家電紅外編碼FLASH載波頻率存儲(chǔ)區(qū)域。對應(yīng)的“家電”指示燈亮,表示可以進(jìn)入該家電紅外遙控信號(hào)學(xué)習(xí)或發(fā)送階段。學(xué)習(xí)時(shí),只需將家電遙控器發(fā)送窗對準(zhǔn)學(xué)習(xí)型遙控器的接收窗,發(fā)送紅外遙控信號(hào)。此時(shí)Nios軟核處理器會(huì)通過Avalon總線調(diào)用紅外信號(hào)解調(diào)IP核和紅外編碼脈寬測量IP核,完成紅外信號(hào)的解調(diào)和一幀完整編碼脈寬高低電平時(shí)間測量(此過程中處理的所有數(shù)據(jù)存儲(chǔ)在SDRAM中)。當(dāng)“學(xué)習(xí)”燈再次亮起,表示該信號(hào)已得到確認(rèn)。按下學(xué)習(xí)型遙控器的任一功能鍵,即可將該信號(hào)送到指定的該家電按鍵FLASH存儲(chǔ)區(qū)域;發(fā)送時(shí),先選擇“家電”選擇鍵(即選定了載波頻率),然后按下“功能鍵” 時(shí),NiosⅡ處理器會(huì)自動(dòng)調(diào)用FLASH存儲(chǔ)數(shù)據(jù),通過紅外發(fā)送邏輯電路調(diào)制到載波上,完成紅外信號(hào)還原。
2 硬件電路設(shè)計(jì)
2. 1 主控制電路設(shè)計(jì)
主控制電路主要以Altera FPGA系列Cyclone EPlCl2Q240C8器件為載體,通過SoPC技術(shù)構(gòu)建嵌入式軟核NiosⅡ處理器平臺(tái),運(yùn)用Verilog HDL硬件描述語言設(shè)計(jì)等精度測量載波頻率IP核、紅外信號(hào)解調(diào)IP核、紅外編碼脈寬測量IP核和紅外發(fā)送調(diào)制邏輯電路,以實(shí)現(xiàn)載波的精確測量,紅外信號(hào)解調(diào)、脈寬測量和調(diào)制功能。復(fù)位電路采用了專用看門狗芯片CATl025,以避免電路的死循環(huán),同時(shí)也可以通過手動(dòng)按下復(fù)位鍵,使系統(tǒng)重新啟動(dòng)。時(shí)鐘是采用外部時(shí)鐘方式,其頻率為50 MHz。主控制電路圖如圖2所示。
2.2 外圍硬件電路設(shè)計(jì)
2.2.1 按鍵與指示電路
為了簡化軟件程序,結(jié)合FPGA多I/O口的優(yōu)勢,本設(shè)計(jì)采用獨(dú)立按鍵方式,當(dāng)按鍵按下時(shí),F(xiàn)PGA對應(yīng)的I/O口會(huì)檢測到低電平;按鍵彈起時(shí),F(xiàn)PGA 對應(yīng)的I/O口會(huì)檢測到高電平。對于指示電路,采用不同顏色的發(fā)光二極管來指示不同的狀態(tài)或控制不同的家用電器,當(dāng)其中的一個(gè)指示燈閃爍時(shí),表示正在學(xué)習(xí)對應(yīng)的家電遙控器或者是發(fā)送對應(yīng)的家電遙控信號(hào)。
2.2.2 紅外接收和發(fā)送電路
紅外接收電路由紅外二極管、三極管9014及電阻組成。當(dāng)未檢測到紅外信號(hào)時(shí),紅外接收二極管電阻很大(近似于斷路),三極管9014處手截止?fàn)顟B(tài),此時(shí) IR_RECEIVE端檢測到高電平;當(dāng)檢測到紅外信號(hào)時(shí),紅外接收二極管電阻較小,這時(shí)三極管9014發(fā)射極正偏,集電極反偏,三極管處于放大狀態(tài)。紅外信號(hào)通過共發(fā)射極電路放大后輸入到FPGA的I/O口18腳,交給Nios軟核進(jìn)行處理。發(fā)送時(shí),經(jīng)過紅外發(fā)送調(diào)制邏輯電路調(diào)制后的紅外信號(hào)從FPGA I/O口16腳輸出,紅外信號(hào)通過三極管9014再次倒相放大后從集電極輸出,驅(qū)動(dòng)紅外發(fā)射管輻射出紅外調(diào)制信號(hào),從而實(shí)現(xiàn)紅外遙控信號(hào)的再生。紅外發(fā)送和接收電路如圖3所示。
2.2.3 存儲(chǔ)電路
存儲(chǔ)電路主要由AM29LV320DT(4 MB 16位并行總線)FLASH芯片和K4S641632H(64 MB 16位并行總線)SDRAM芯片組成。其中的SDRAM芯片起緩沖數(shù)據(jù)的作用,保存處理器及外部交換的數(shù)據(jù)信息,掉電或復(fù)位后數(shù)據(jù)丟失。FLASH閃速存儲(chǔ)器,用于SoPC系統(tǒng)的程序存放和需要掉電保存的數(shù)據(jù)存放,但是,F(xiàn)LASH的讀操作比SDRAM慢,寫速度更加緩慢(相對于SDRAM而言)。 NiosⅡ系統(tǒng)啟動(dòng)后,在NiosⅡ的Boot程序把存放在FLA-SH中的程序復(fù)制到SDRAM后,再運(yùn)行。
3 軟件設(shè)計(jì)
【本文標(biāo)簽】: 多層 pcb 多層PCB面板 沉金板 公司設(shè)備
【責(zé)任編輯】:鼎紀(jì)電子PCB??? 版權(quán)所有:http://ai-hots.com/轉(zhuǎn)載請注明出處
掃一掃更精彩!
2001-2018 深圳鼎紀(jì)電子有限公司 版權(quán)所有
粵ICP備16081348號(hào)
全國服務(wù)熱線:0755-27586790
24小時(shí)銷售熱線:18025855806|18682125228
地址:深圳市寶安區(qū)西鄉(xiāng)黃崗嶺工業(yè)區(qū)灣區(qū)人工智能產(chǎn)業(yè)園B棟605
深圳鼎紀(jì)電子有限公司:單面PCB板