• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于PSoC的紅外線通信測控系統(tǒng)

    2012-08-20 05:19:02于小億
    關(guān)鍵詞:固件子程序紅外線

    韓 旭,于小億

    (蘭州大學(xué) 信息科學(xué)與工程學(xué)院,甘肅 蘭州730000)

    紅外線通信由于結(jié)構(gòu)簡單、成本低,在家用電器、儀器儀表、工業(yè)控制中得到了廣泛的應(yīng)用。實(shí)現(xiàn)紅外線通信的方案很多,但主要是由專有集成電路和單片機(jī)實(shí)現(xiàn)兩種。由專用集成電路實(shí)現(xiàn)的紅外線通信主要是各種遙控器,但是它難以和單片機(jī)接口,應(yīng)用的靈活性差。單片機(jī)實(shí)現(xiàn)的紅外線發(fā)射器與接收器能方便地與其他電路模塊連接組成應(yīng)用系統(tǒng),在各種測量和控制系統(tǒng)中有大量應(yīng)用。本文介紹一種由特殊的單片機(jī),即可編程片上系統(tǒng)PSoC組成的紅外線通信測控系統(tǒng)的應(yīng)用實(shí)例。PSoC5是由Cypress公司生產(chǎn)的ARM Cortex-M3和CPLD兩大部分組成的芯片。它以固件元件的模式提供了許多模擬和數(shù)字功能單元,在集成開發(fā)環(huán)境Creator的支持下,這些功能單元和元件在畫板上放置、連接、引腳定義并進(jìn)行屬性配置形成設(shè)計(jì)原理圖,這個原理圖的功能由CPLD實(shí)現(xiàn)并與ARM微處理器連接。Creator的編譯器將各個元件生成其對應(yīng)的C語言文件,開發(fā)者只需在C語言框架程序中修改或編寫中斷、DMA和main程序即可完成軟件設(shè)計(jì)。這種圖形化編程方法不需要開發(fā)者了解PSoC芯片的底層硬件結(jié)構(gòu),編寫的代碼非常少,降低了開發(fā)的技術(shù)難度[1]。本設(shè)計(jì)所采用的PSoC實(shí)施方案對其他嵌入式設(shè)計(jì)也具有一定的指導(dǎo)作用。

    1 紅外線通信測控系統(tǒng)構(gòu)成

    紅外線通信測控系統(tǒng)的結(jié)構(gòu)如圖1所示。發(fā)送電路的電阻 R1為 510 Ω,R2為 10 Ω,晶體管 T1為 9013。 主機(jī)可以是任何帶有串行接口的計(jì)算機(jī)或嵌入式裝置,通過串行接口將數(shù)據(jù)傳送到PSoC或接收PSoC的數(shù)據(jù)。在發(fā)送端,PSoC將直接連接模擬量和數(shù)字量,串口接收的數(shù)據(jù)通過紅外線發(fā)射電路發(fā)送出去。在接收端,一體化接收頭輸出的信號送到PSoC,PSoC接收到一幀完整的信息后,處理后通過串行接口送到主機(jī),也可以直接輸出模擬量和數(shù)字量,并在LCD顯示出來[2]。

    2 紅外線通信測控系統(tǒng)固件元件原理圖設(shè)計(jì)

    紅外線通信測控系統(tǒng)發(fā)送和接收端電路都使用了多個固件元件,受篇幅限制,結(jié)合發(fā)射和接收電路的原理敘述,只對與發(fā)射和接收密切相關(guān)的幾個元件做詳細(xì)介紹,了解和掌握PSoC元件的屬性設(shè)計(jì)及使用方法。

    2.1 紅外線通信測控系統(tǒng)發(fā)射電路

    紅外線通信測控系統(tǒng)的發(fā)送端固件元件原理圖如圖2所示。外部的傳感模擬信號由引腳Pin_4輸入,經(jīng)程控增益放大器PGA放大后,送入模數(shù)轉(zhuǎn)換器ADC轉(zhuǎn)換成數(shù)字量,轉(zhuǎn)換結(jié)束產(chǎn)生isr_2中斷,在中斷子程序中將結(jié)果讀入ARM處理器。外部連接的開關(guān)量通過引腳Pin_2和 Pin_3接入狀態(tài)寄存器Status_Reg,外部主機(jī)的控制數(shù)據(jù)經(jīng)串行接口UART被ARM處理器接收。將上述數(shù)據(jù)組裝成發(fā)送的4 B 32 bit幀信息,第1字節(jié)高4位是設(shè)備碼,低4位是命令碼,第2字節(jié)是發(fā)送的開關(guān)量,第3和4字節(jié)是16 bit模擬量。紅外線通信測控系統(tǒng)發(fā)送端涉及的元件有多個,篇幅所限,只介紹與通信相關(guān)的幾個元件。

    首先介紹脈沖寬度調(diào)制元件PWM[3],要使用的元件必須進(jìn)行屬性配置,PWM的輸入時鐘由時鐘元件Clock_1提供,頻率設(shè)置為1 MHz。PWM的屬性配置如圖3所示。由通用數(shù)字塊UDB實(shí)現(xiàn)PWM元件,分辨率為16 bit,因?yàn)榧t外線通信傳送的是頻率為38 kHz的調(diào)制脈沖波,所以 PWM的周期為 26 μs,為了使輸出波形占空比為 1:1,PWM的比較值設(shè)置為 13 μs,比較類型設(shè)置為Less。當(dāng)然,在實(shí)際使用中可以將占空比調(diào)整為1:3、1:4等以達(dá)到增加發(fā)射距離和省電的目的。這樣,PWM元件啟動后,就能在PWM端輸出連續(xù)的方波。定時器Timer的屬性配置如圖4所示,模塊由PSoC內(nèi)部的UDB實(shí)現(xiàn),分辨率為 24 bit,因?yàn)榧t外線通信的數(shù)據(jù) 0由 560 μs高電平和 560 μs低電平組成,數(shù)據(jù) 1由 560 μs高電平和1 680 μs低電平組成,所以設(shè)置定時器周期為 560 μs,并且在定時器終端計(jì)數(shù)TC時產(chǎn)生中斷。

    進(jìn)行紅外線通信的數(shù)據(jù)發(fā)送,首先發(fā)送啟動碼,啟動碼由9 ms的高電平和4.5 ms的低電平組成,接著發(fā)送由0或1組成的32 bit數(shù)據(jù)碼。PWM和Timer啟動后,當(dāng)有數(shù)據(jù)傳輸時,將Control_Reg_2和Control_Reg_1寄存器置1,Pin_1端輸出38 kHz方波。當(dāng) Timer產(chǎn)生 16次 isr_1中斷(9 ms時間到),將 Control_Reg_1置0,Pin_1端無脈沖輸出,當(dāng)Timer產(chǎn)生8次isr_1中斷(4.5 ms時間到),啟動碼發(fā)送完畢。接著發(fā)送32 bit數(shù)據(jù), 先發(fā)送560 μs的高電平, 將Control_Reg_1置1,Pin_1端輸出38 kHz方波。當(dāng) Timer產(chǎn)生1 次 isr_1 中斷(560 μs時間到),將 Control_Reg_1 置 0,Pin_1端無脈沖輸出,直到Timer產(chǎn)生1次(如果數(shù)據(jù)是0)或 3次(如果數(shù)據(jù)是 1)isr_1中斷,直至將 32 bit數(shù)據(jù)發(fā)送完畢[4-5]。

    2.2 紅外線通信測控系統(tǒng)接收電路

    紅外線通信測控系統(tǒng)的接收端固件元件原理圖如圖5所示。將寄存器Control_Reg_1置1,紅外線接收頭輸出的信號通過Pin_1引腳接到定時器Timer的捕獲端capture,在 Timer的屬性配置中,下降沿捕獲,捕獲產(chǎn)生中斷,設(shè)置分辨率為32 bit,周期為4 294.967 s。當(dāng)捕獲發(fā)生后,將前次與本次捕獲值相減,如果接近13.5 ms,就找到了本次數(shù)據(jù)傳輸?shù)膯哟a,繼而接收32 bit數(shù)據(jù)碼。如果兩次捕獲值的差接近1.12 ms,接收的這位是0,如果兩次捕獲值的差接近2.24 ms,接收的這位就是1。接收到32 bit數(shù)據(jù)在LCD顯示出來,根據(jù)第1字節(jié)低4位功能碼,確定是進(jìn)行本地控制還是經(jīng)過串行接口UART傳輸給上位機(jī)。如果是本地控制,則將接收的第2字節(jié)輸出到控制寄存器Control_Reg_2,第3字節(jié)輸出到數(shù)模轉(zhuǎn)換器VDAC8_1[6]。

    3 紅外線通信測控系統(tǒng)應(yīng)用程序設(shè)計(jì)

    在Creator開發(fā)環(huán)境支持下,編譯器自動生成了固件元件的C語言源代碼。但是,中斷子程序和main子程序僅提供了程序框架,子程序內(nèi)容需要開發(fā)者根據(jù)固件元件原理圖所要完成的任務(wù)來編寫。在工作空間瀏覽區(qū)找到元件的源程序,打開后在編輯區(qū)找到中斷子程序框架,在里面嵌入應(yīng)用的源代碼即可。在main主函數(shù)中需要對使用的元件進(jìn)行初始化和啟動(有的元件不需要),根據(jù)應(yīng)用程序流程調(diào)用元件的子程序和函數(shù)。紅外線通信測控系統(tǒng)的發(fā)送與接收主程序流程圖如圖6和圖7所示。

    利用PSoC強(qiáng)大的圖形化集成開發(fā)環(huán)境Creator提供的固件元件實(shí)現(xiàn)紅外線通信測控系統(tǒng),通過簡單的軟件設(shè)計(jì)實(shí)現(xiàn)硬件電路是一種值得重視和推廣的嵌入式系統(tǒng)開發(fā)方法。該設(shè)計(jì)能可靠地將發(fā)送端數(shù)據(jù)送到接收端,實(shí)現(xiàn)控制功能或與其他設(shè)備的通信。

    [1]葉朝輝,華成英.可編程片上系統(tǒng)(PSoC)原理及實(shí)訓(xùn)[M].北京:清華大學(xué)出版社,2008.

    [2]余成波,謝東坡.網(wǎng)絡(luò)化測控技術(shù)與實(shí)現(xiàn)[M].北京:高等教育出版社,2009.

    [3]Cypress MicroSystems,Inc.CY8C55FamilyDatasheet[EB/OL].(2011-01-05)[2011-04-02].http://www.cypress.com/?rID=37581.

    [4]錢敏,曹云鵬,章敏,等.基于FPGA/HDL的紅外遙控接收信號解碼器設(shè)計(jì)[J].通信技術(shù),2009,42(8):219-224.

    [5]張仁儉.基于89C2051單片機(jī)的紅外遙控裝置及應(yīng)用[J].航天制造技術(shù),2005(3):21-23.

    [6]韓喜春,高旭東,張春艷.基于PSoC的通用計(jì)數(shù)器設(shè)計(jì)[J].黑龍江工程學(xué)院學(xué)報,2011,25(3):48-52.

    猜你喜歡
    固件子程序紅外線
    紅外線超高溫瞬時滅菌機(jī)(UHT)
    看不見的光——紅外線與紫外線
    基于固件的遠(yuǎn)程身份認(rèn)證
    淺談子程序在數(shù)控車編程中的應(yīng)用
    提取ROM固件中的APP
    電腦愛好者(2015年7期)2015-04-09 08:54:02
    紅外線遙控電風(fēng)扇
    子程序在數(shù)控車加工槽中的應(yīng)用探索
    西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
    一種通過USB接口的可靠固件升級技術(shù)
    奧林巴斯XZ—2新固件升級
    中國攝影(2014年1期)2014-02-24 01:50:23
    景洪市| 沈阳市| 昌吉市| 泽库县| 宿迁市| 丽水市| 高邑县| 额济纳旗| 津南区| 蒙阴县| 永川市| 临湘市| 景德镇市| 抚州市| 东明县| 岐山县| 屏东市| 隆尧县| 南漳县| 台东市| 当阳市| 浦县| 凤冈县| 沿河| 太仆寺旗| 沂源县| 峨山| 大同市| 新巴尔虎左旗| 房产| 长泰县| 老河口市| 梓潼县| 双柏县| 镇雄县| 西充县| 巴中市| 得荣县| 阳东县| 灵川县| 田阳县|