時(shí)間:2022-09-10 09:19:51
序論:在您撰寫(xiě)單片機(jī)應(yīng)用論文時(shí),參考他人的優(yōu)秀作品可以開(kāi)闊視野,小編為您整理的7篇范文,希望這些建議能夠激發(fā)您的創(chuàng)作熱情,引導(dǎo)您走向新的創(chuàng)作高度。
單片機(jī)的特點(diǎn)主要有:高集成度,體積小,高可靠性;控制功能強(qiáng);低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品;易擴(kuò)展;優(yōu)異的性能價(jià)格比。目前,單片機(jī)的應(yīng)用領(lǐng)域主要包括:辦公自動(dòng)化設(shè)備;單片機(jī)在機(jī)電一體化中的應(yīng)用;在實(shí)時(shí)過(guò)程控制中的應(yīng)用;單片機(jī)在日常生活及家用電器領(lǐng)域的應(yīng)用;在各類(lèi)儀器儀表中引入單片機(jī),使儀器儀表智能化,提高測(cè)試的自動(dòng)化程度和精度,簡(jiǎn)化儀器儀表的硬件結(jié)構(gòu),提高其性能價(jià)格比;在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用;商業(yè)營(yíng)銷(xiāo)設(shè)備;單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用;汽車(chē)電子產(chǎn)品;航空航天系統(tǒng)和國(guó)防軍事、尖端武器等領(lǐng)域,單片機(jī)的應(yīng)用更是不言而喻。
二、單片機(jī)開(kāi)發(fā)中的幾個(gè)基本技巧
在單片機(jī)應(yīng)用開(kāi)發(fā)中,代碼的使用效率問(wèn)題、單片機(jī)抗干擾性和可靠性等問(wèn)題仍困擾著?,F(xiàn)歸納出單片機(jī)開(kāi)發(fā)中應(yīng)掌握的幾個(gè)基本技巧。
1、如何減少程序中的bug。對(duì)于如何減少程序的bug,應(yīng)該先考慮系統(tǒng)運(yùn)行中應(yīng)考慮的超范圍管理參數(shù)如下。物理參數(shù):這些參數(shù)主要是系統(tǒng)的輸入?yún)?shù),它包括激勵(lì)參數(shù)、采集處理中的運(yùn)行參數(shù)和處理結(jié)束的結(jié)果參數(shù)。資源參數(shù):這些參數(shù)主要是系統(tǒng)中的電路、器件、功能單元的資源,如記憶體容量、存儲(chǔ)單元長(zhǎng)度、堆疊深度。應(yīng)用參數(shù):這些應(yīng)用參數(shù)常表現(xiàn)為一些單片機(jī)、功能單元的應(yīng)用條件。過(guò)程參數(shù):指系統(tǒng)運(yùn)行中的有序變化的參數(shù)。
2、如何提高C語(yǔ)言編程代碼的效率。用C語(yǔ)言進(jìn)行單片機(jī)程序設(shè)計(jì)是單片機(jī)開(kāi)發(fā)與應(yīng)用的必然趨勢(shì)。如果使用C編程時(shí),要達(dá)到最高的效率,最好熟悉所使用的C編譯器。先試驗(yàn)一下每條C語(yǔ)言編譯以后對(duì)應(yīng)的匯編語(yǔ)言的語(yǔ)句行數(shù),這樣就可以很明確的知道效率。在今后編程的時(shí)候,使用編譯效率最高的語(yǔ)句。各家的C編譯器都會(huì)有一定的差異,故編譯效率也會(huì)有所不同,優(yōu)秀的嵌入式系統(tǒng)C編譯器代碼長(zhǎng)度和執(zhí)行時(shí)間僅比以匯編語(yǔ)言編寫(xiě)的同樣功能程度長(zhǎng)5-20%。對(duì)于復(fù)雜而開(kāi)發(fā)時(shí)間緊的項(xiàng)目時(shí),可以采用C語(yǔ)言,但前提是要求你對(duì)該MCU系統(tǒng)的C語(yǔ)言和C編譯器非常熟悉,特別要注意該C編譯系統(tǒng)所能支持的數(shù)據(jù)類(lèi)型和算法。雖然C語(yǔ)言是最普遍的一種高級(jí)語(yǔ)言,但由于不同的MCU廠家其C語(yǔ)言編譯系統(tǒng)是有所差別的,特別是在一些特殊功能模塊的操作上。所以如果對(duì)這些特性不了解,那么調(diào)試起來(lái)問(wèn)題就會(huì)很多,反而導(dǎo)致執(zhí)行效率低于匯編語(yǔ)言。
3、如何解決單片機(jī)的抗干擾性問(wèn)題。防止干擾最有效的方法是去除干擾源、隔斷干擾路徑,但往往很難做到,所以只能看單片機(jī)抗干擾能力夠不夠強(qiáng)了。在提高硬件系統(tǒng)抗干擾能力的同時(shí),軟件抗干擾以其設(shè)計(jì)靈活、節(jié)省硬件資源、可靠性好越來(lái)越受到重視。單片機(jī)干擾最常見(jiàn)的現(xiàn)象就是復(fù)位;至于程序跑飛,其實(shí)也可以用軟件陷阱和看門(mén)狗將程序拉回到復(fù)位狀態(tài);所以單片機(jī)軟件抗干擾最重要的是處理好復(fù)位狀態(tài)。一般單片機(jī)都會(huì)有一些標(biāo)志寄存器,可以用來(lái)判斷復(fù)位原因;另外你也可以自己在RAM中埋一些標(biāo)志。在每次程序復(fù)位時(shí),通過(guò)判斷這些標(biāo)志,可以判斷出不同的復(fù)位原因;還可以根據(jù)不同的標(biāo)志直接跳到相應(yīng)的程序。這樣可以使程序運(yùn)行有連續(xù)性,用戶在使用時(shí)也不會(huì)察覺(jué)到程序被重新復(fù)位過(guò)。
4、如何測(cè)試單片機(jī)系統(tǒng)的可靠性。當(dāng)一個(gè)單片機(jī)系統(tǒng)設(shè)計(jì)完成,對(duì)于不同的單片機(jī)系統(tǒng)產(chǎn)品會(huì)有不同的測(cè)試項(xiàng)目和方法,但是有一些是必須測(cè)試的:測(cè)試單片機(jī)軟件功能的完善性;上電、掉電測(cè)試;老化測(cè)試;ESD和EFT等測(cè)試。有時(shí)候,我們還可以模擬人為使用中,可能發(fā)生的破壞情況。例如用人體或者衣服織物故意摩擦單片機(jī)系統(tǒng)的接觸端口,由此測(cè)試抗靜電的能力。用大功率電鉆靠近單片機(jī)系統(tǒng)工作,由此測(cè)試抗電磁干擾能力等。
綜上所述,單片機(jī)已成為計(jì)算機(jī)發(fā)展和應(yīng)用的一個(gè)重要方面,單片機(jī)應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能用單片機(jī)通過(guò)軟件方法來(lái)實(shí)現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。此外在開(kāi)發(fā)和應(yīng)用過(guò)程中我們更要掌握技巧,提高效率,以便于發(fā)揮它更加廣闊的用途。
參考文獻(xiàn):
[1]何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù).北京:北京航空航天大學(xué)出版社,1990
[2]蔡美琴等.MCS-51單片機(jī)系統(tǒng)及其應(yīng)用.北京:高等教育出版社,1992
[3]孫涵芳.MCS-51/96系列單片機(jī)原理及應(yīng)用.北京:北京航空航天大學(xué)出版社,1996
摘要:本文設(shè)計(jì)一種智能電子解說(shuō)系統(tǒng),具有智能化、個(gè)性化、高音質(zhì)、實(shí)用性強(qiáng)等特點(diǎn)。讓游客按照設(shè)定的經(jīng)典路線,選擇景點(diǎn)或展位的講解使每個(gè)觀眾不但得到每個(gè)展位、景點(diǎn)的完整信息,而且感受到高清晰、低噪聲的音響效果,電子旅游解說(shuō)系統(tǒng)的出現(xiàn),使看起來(lái)簡(jiǎn)單的解說(shuō)系統(tǒng)融入了科技的因素。
本文正是基于凌陽(yáng)公司的SPCE061A單片機(jī)并采用A2000語(yǔ)音壓縮算法對(duì)語(yǔ)音信號(hào)進(jìn)行了壓縮存儲(chǔ)以及播放。由游客控制選擇按鍵來(lái)播放語(yǔ)音,這樣大大降低了外面的干擾,使每個(gè)觀眾不但得到每個(gè)展位、景點(diǎn)的完整信息,而且感受到高清晰、低噪聲的音響效果。
關(guān)鍵詞:旅游;電子解說(shuō);電子導(dǎo)游;凌陽(yáng)單片機(jī)
1緒論
隨著改革開(kāi)放和經(jīng)濟(jì)的發(fā)展,旅游業(yè)也獲得了長(zhǎng)足的發(fā)展,節(jié)假日外出旅游已成為人們的首選。對(duì)大多數(shù)零散游客來(lái)說(shuō),希望有一種不受制于人的輔助導(dǎo)游手段,迫切需要一種攜帶方便、操作簡(jiǎn)便的電子語(yǔ)音導(dǎo)游器。
本文設(shè)計(jì)一種智能電子解說(shuō)系統(tǒng),選用了凌陽(yáng)公司的SPCE061A單片機(jī)并采用A2000語(yǔ)音壓縮算法對(duì)語(yǔ)音信號(hào)進(jìn)行了壓縮存儲(chǔ),經(jīng)過(guò)這樣處理合成后的語(yǔ)音音質(zhì)良好,放音時(shí)間持久,而且機(jī)體積很小。
2凌陽(yáng)單片機(jī)簡(jiǎn)介
SPCE061A是凌陽(yáng)科技研發(fā)生產(chǎn)的性價(jià)比很高的一款十六位單片機(jī)。該芯片擁有8路10位精度的ADC,其中一路為音頻轉(zhuǎn)換通道,并且內(nèi)置有自動(dòng)增益電路。這為實(shí)現(xiàn)語(yǔ)音錄入提供了方便的硬件條件。
凌陽(yáng)音頻壓縮算法處理的語(yǔ)音信號(hào)范圍是200Hz-3.4KHz的電話語(yǔ)音。根據(jù)不同的壓縮比分為以下幾種:SACM_A2000、SACM_S480、SACM_S240。SACM-A2000音頻壓縮算法的壓縮比較小,編碼速率可選擇16kbit/s、20kbit/s、24kbit/s三種之一,具有高質(zhì)量、高碼率的特點(diǎn),適于高保真語(yǔ)音或音樂(lè)。
3硬件系統(tǒng)設(shè)計(jì)
本系統(tǒng)的硬件部分主要實(shí)現(xiàn)路線的顯示和景點(diǎn)語(yǔ)音的播放。根據(jù)景區(qū)景點(diǎn)設(shè)計(jì)一條經(jīng)典路線,將沿途主要景點(diǎn)用高亮三色LED顯示。紅色表示還沒(méi)有聽(tīng)過(guò)解說(shuō)的最近的景點(diǎn),黃色表示正在聽(tīng)取解說(shuō)詞的景點(diǎn),綠色表示最后播放過(guò)解說(shuō)詞的景點(diǎn)。語(yǔ)音播放按鍵分為景點(diǎn)相應(yīng)放音、暫停、繼續(xù)放音、結(jié)束等。音頻信號(hào)存儲(chǔ)在凌陽(yáng)語(yǔ)音儲(chǔ)存芯片中。語(yǔ)音信號(hào)放大由凌陽(yáng)公司開(kāi)發(fā)的專(zhuān)門(mén)用于語(yǔ)音信號(hào)放大的芯片SPY0030A完成。整個(gè)系統(tǒng)的控制由凌陽(yáng)單片機(jī)SPCE061A實(shí)現(xiàn)。具體硬件系統(tǒng)框圖如圖1所示。
4軟件系統(tǒng)設(shè)計(jì)
本設(shè)計(jì)選用了SACM-A2000語(yǔ)音壓縮算法對(duì)語(yǔ)音信號(hào)進(jìn)行了壓縮存儲(chǔ)。再利用中斷進(jìn)行鍵盤(pán)掃描程序循環(huán)掃描按鍵,獲取按鍵信息后和內(nèi)置的操作碼比較,用來(lái)確定播放相應(yīng)的語(yǔ)音和顯示相應(yīng)的LED燈。景點(diǎn)的解說(shuō)詞事先利用凌陽(yáng)內(nèi)置提供的工具進(jìn)行壓縮和存儲(chǔ)。
系統(tǒng)的主程序流程圖如圖2所示,假設(shè)主要講解景點(diǎn)共4處,分別由KEY1~KEY4控制播放,KEY5是暫停播放、KEY6是繼續(xù)播放、KEY7停止播放。開(kāi)機(jī)時(shí)對(duì)系統(tǒng)初始化,包含對(duì)顯示景點(diǎn)的初始化、對(duì)語(yǔ)音播放模塊初始化、對(duì)鍵盤(pán)初始化等。在鍵盤(pán)初始化中設(shè)置時(shí)基頻率為128Hz的中斷,并打開(kāi)中斷。這是為在中斷中掃描鍵盤(pán),利用延時(shí)法去抖動(dòng),延時(shí)時(shí)間是響應(yīng)多少次128Hz中斷過(guò)程。在KEY1~KEY4鍵控制下播放景點(diǎn)解說(shuō)詞實(shí)際是提取相應(yīng)景點(diǎn)的語(yǔ)音信息的起始存儲(chǔ)地址,然后執(zhí)行相應(yīng)的語(yǔ)音播放程序。由于語(yǔ)音播放中斷服務(wù)子程序必須放在TMA-FIQ中斷源上,進(jìn)入中斷服務(wù)程序必須先保護(hù)寄存器,接著判斷是不是TMA-FIQ中斷。若是,還要判斷是哪一段語(yǔ)音要播放,也就是要獲取播放語(yǔ)音的起始地址。在TMA-FIQ中斷調(diào)用F_FIQ_Service_SACM_A2000函數(shù)譯碼播放。
5制作
錄制的語(yǔ)音文件在播放前需轉(zhuǎn)換為SACM_A2000格式的壓縮文件。語(yǔ)音壓縮可以使用凌陽(yáng)語(yǔ)音壓縮工具(CompressTool)完成。該壓縮工具支持.wav格式的語(yǔ)音壓縮,但要求壓縮語(yǔ)音資源屬性為8kHz,16位,單聲道。
6結(jié)論
經(jīng)過(guò)測(cè)試,電子語(yǔ)音導(dǎo)游器的性能達(dá)到了設(shè)計(jì)目標(biāo),具體如下:各景點(diǎn)語(yǔ)音解說(shuō)資料、開(kāi)機(jī)歡迎語(yǔ)音信息播放正常,聲音清晰;各按鍵功能正常,各LED管顯示正常。凌陽(yáng)公司的SPCE061A的結(jié)構(gòu)特點(diǎn)及其相關(guān)的開(kāi)發(fā)平臺(tái),為我們開(kāi)發(fā)帶語(yǔ)音特色的產(chǎn)品方案帶來(lái)了很大的方便,本系統(tǒng)僅是SPCE061A的一個(gè)基本應(yīng)用,體現(xiàn)了SPCE061A多種資源對(duì)產(chǎn)品開(kāi)發(fā)的極大支持,同時(shí)體現(xiàn)了其的語(yǔ)音特色。
參考文獻(xiàn)
單片機(jī)的特點(diǎn)主要有:高集成度,體積小,高可靠性;控制功能強(qiáng);低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品;易擴(kuò)展;優(yōu)異的性能價(jià)格比。目前,單片機(jī)的應(yīng)用領(lǐng)域主要包括:辦公自動(dòng)化設(shè)備;單片機(jī)在機(jī)電一體化中的應(yīng)用;在實(shí)時(shí)過(guò)程控制中的應(yīng)用;單片機(jī)在日常生活及家用電器領(lǐng)域的應(yīng)用;在各類(lèi)儀器儀表中引入單片機(jī),使儀器儀表智能化,提高測(cè)試的自動(dòng)化程度和精度,簡(jiǎn)化儀器儀表的硬件結(jié)構(gòu),提高其性能價(jià)格比;在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用;商業(yè)營(yíng)銷(xiāo)設(shè)備;單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用;汽車(chē)電子產(chǎn)品;航空航天系統(tǒng)和國(guó)防軍事、尖端武器等領(lǐng)域,單片機(jī)的應(yīng)用更是不言而喻。
二、單片機(jī)開(kāi)發(fā)中的幾個(gè)基本技巧
在單片機(jī)應(yīng)用開(kāi)發(fā)中,代碼的使用效率問(wèn)題、單片機(jī)抗干擾性和可靠性等問(wèn)題仍困擾著?,F(xiàn)歸納出單片機(jī)開(kāi)發(fā)中應(yīng)掌握的幾個(gè)基本技巧。
1、如何減少程序中的bug。對(duì)于如何減少程序的bug,應(yīng)該先考慮系統(tǒng)運(yùn)行中應(yīng)考慮的超范圍管理參數(shù)如下。物理參數(shù):這些參數(shù)主要是系統(tǒng)的輸入?yún)?shù),它包括激勵(lì)參數(shù)、采集處理中的運(yùn)行參數(shù)和處理結(jié)束的結(jié)果參數(shù)。資源參數(shù):這些參數(shù)主要是系統(tǒng)中的電路、器件、功能單元的資源,如記憶體容量、存儲(chǔ)單元長(zhǎng)度、堆疊深度。應(yīng)用參數(shù):這些應(yīng)用參數(shù)常表現(xiàn)為一些單片機(jī)、功能單元的應(yīng)用條件。過(guò)程參數(shù):指系統(tǒng)運(yùn)行中的有序變化的參數(shù)。
2、如何提高C語(yǔ)言編程代碼的效率。用C語(yǔ)言進(jìn)行單片機(jī)程序設(shè)計(jì)是單片機(jī)開(kāi)發(fā)與應(yīng)用的必然趨勢(shì)。如果使用C編程時(shí),要達(dá)到最高的效率,最好熟悉所使用的C編譯器。先試驗(yàn)一下每條C語(yǔ)言編譯以后對(duì)應(yīng)的匯編語(yǔ)言的語(yǔ)句行數(shù),這樣就可以很明確的知道效率。在今后編程的時(shí)候,使用編譯效率最高的語(yǔ)句。各家的C編譯器都會(huì)有一定的差異,故編譯效率也會(huì)有所不同,優(yōu)秀的嵌入式系統(tǒng)C編譯器代碼長(zhǎng)度和執(zhí)行時(shí)間僅比以匯編語(yǔ)言編寫(xiě)的同樣功能程度長(zhǎng)5-20%。對(duì)于復(fù)雜而開(kāi)發(fā)時(shí)間緊的項(xiàng)目時(shí),可以采用C語(yǔ)言,但前提是要求你對(duì)該MCU系統(tǒng)的C語(yǔ)言和C編譯器非常熟悉,特別要注意該C編譯系統(tǒng)所能支持的數(shù)據(jù)類(lèi)型和算法。雖然C語(yǔ)言是最普遍的一種高級(jí)語(yǔ)言,但由于不同的MCU廠家其C語(yǔ)言編譯系統(tǒng)是有所差別的,特別是在一些特殊功能模塊的操作上。所以如果對(duì)這些特性不了解,那么調(diào)試起來(lái)問(wèn)題就會(huì)很多,反而導(dǎo)致執(zhí)行效率低于匯編語(yǔ)言。
3、如何解決單片機(jī)的抗干擾性問(wèn)題。防止干擾最有效的方法是去除干擾源、隔斷干擾路徑,但往往很難做到,所以只能看單片機(jī)抗干擾能力夠不夠強(qiáng)了。在提高硬件系統(tǒng)抗干擾能力的同時(shí),軟件抗干擾以其設(shè)計(jì)靈活、節(jié)省硬件資源、可靠性好越來(lái)越受到重視。單片機(jī)干擾最常見(jiàn)的現(xiàn)象就是復(fù)位;至于程序跑飛,其實(shí)也可以用軟件陷阱和看門(mén)狗將程序拉回到復(fù)位狀態(tài);所以單片機(jī)軟件抗干擾最重要的是處理好復(fù)位狀態(tài)。一般單片機(jī)都會(huì)有一些標(biāo)志寄存器,可以用來(lái)判斷復(fù)位原因;另外你也可以自己在RAM中埋一些標(biāo)志。在每次程序復(fù)位時(shí),通過(guò)判斷這些標(biāo)志,可以判斷出不同的復(fù)位原因;還可以根據(jù)不同的標(biāo)志直接跳到相應(yīng)的程序。這樣可以使程序運(yùn)行有連續(xù)性,用戶在使用時(shí)也不會(huì)察覺(jué)到程序被重新復(fù)位過(guò)。
4、如何測(cè)試單片機(jī)系統(tǒng)的可靠性。當(dāng)一個(gè)單片機(jī)系統(tǒng)設(shè)計(jì)完成,對(duì)于不同的單片機(jī)系統(tǒng)產(chǎn)品會(huì)有不同的測(cè)試項(xiàng)目和方法,但是有一些是必須測(cè)試的:測(cè)試單片機(jī)軟件功能的完善性;上電、掉電測(cè)試;老化測(cè)試;ESD和EFT等測(cè)試。有時(shí)候,我們還可以模擬人為使用中,可能發(fā)生的破壞情況。例如用人體或者衣服織物故意摩擦單片機(jī)系統(tǒng)的接觸端口,由此測(cè)試抗靜電的能力。用大功率電鉆靠近單片機(jī)系統(tǒng)工作,由此測(cè)試抗電磁干擾能力等。
綜上所述,單片機(jī)已成為計(jì)算機(jī)發(fā)展和應(yīng)用的一個(gè)重要方面,單片機(jī)應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能用單片機(jī)通過(guò)軟件方法來(lái)實(shí)現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。此外在開(kāi)發(fā)和應(yīng)用過(guò)程中我們更要掌握技巧,提高效率,以便于發(fā)揮它更加廣闊的用途。
參考文獻(xiàn):
[1]何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù).北京:北京航空航天大學(xué)出版社,1990
[2]蔡美琴等.MCS-51單片機(jī)系統(tǒng)及其應(yīng)用.北京:高等教育出版社,1992
[3]孫涵芳.MCS-51/96系列單片機(jī)原理及應(yīng)用.北京:北京航空航天大學(xué)出版社,1996
本設(shè)計(jì)采用MicrochipPIC16C54單片機(jī),選用南通光電器件廠GR40101紅外發(fā)射二極管和GD1611硅PIN型光敏二極管作為紅外發(fā)射和接收器件,舟山海山電器有限公司生產(chǎn)的微型電機(jī)QDB-30-3.0作為泵液晶驅(qū)動(dòng)。系統(tǒng)采用單鍵模式完成暫停、設(shè)定泵液量等功能。電路采用節(jié)電方式設(shè)計(jì),待機(jī)電流小于100μA,并可提供微型電機(jī)所需的500mA負(fù)載電流,可監(jiān)測(cè)電池電壓,欠壓報(bào)警。系統(tǒng)原理如圖1所示。
圖中TX(紅外發(fā)射管)、R1、R5、Q4組成紅外發(fā)射電路,單片機(jī)RA1口輸出一定頻率的脈沖控制三極管Q4的通斷,從而控制紅外發(fā)射管TX的發(fā)射頻率。由單片機(jī)RA3口為發(fā)射電路提供電源,是為了節(jié)能。當(dāng)RA1口將要發(fā)射脈沖時(shí),RA3口置高,發(fā)射電路加電。RX(紅外接收管)、R2、R11、R12、R13、R16、Q6、C3組成紅外接收電路,RX接收紅外脈沖,整形后由Q6放大。接收電路必須嚴(yán)格控制放大倍數(shù),確保紅外反射接收距離在10cm左右。接收電路電源由單片機(jī)RB1口提供,在發(fā)射脈沖后,將RB1口置高。R6、R7、R8、Q3組成電池電壓監(jiān)測(cè)電路,當(dāng)電源電壓降到一定值時(shí),Q3截止,單片機(jī)RB3口為高電平,欠壓報(bào)警。D2、D3、R9、R10、Q1、Q5組成電機(jī)供電電路,提供微型電機(jī)所需的3V電壓、500mA負(fù)載電流,當(dāng)需驅(qū)動(dòng)電機(jī)泵液時(shí),由單片機(jī)RB2口輸出低電平,Q發(fā)射極為電機(jī)供電。D1、C4、Q2、R3組成電機(jī)控制電路,泵液時(shí)先為電機(jī)供電,然后單片機(jī)RA2口輸出高電平驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn)。LED為工作狀態(tài)指示燈,單一按鍵SW為多功能鍵,可完成設(shè)定泵液量、暫停、手動(dòng)泵液等功能。
2軟件設(shè)計(jì)
本電路硬件設(shè)計(jì)通過(guò)控制各單元電路供電達(dá)到節(jié)能的目的,軟件上利用PIC單片機(jī)的休眼、看門(mén)狗溢出喚醒特性以及對(duì)發(fā)射脈沖個(gè)數(shù)的控制進(jìn)一步降低能耗,使其待機(jī)電流小于100μA,4節(jié)4號(hào)堿性電池可提供15000次以上的使用次數(shù)或200天以上的使用時(shí)間。程序流程如圖2所示。
程序開(kāi)始先對(duì)單片機(jī)各端口初始化,并設(shè)置好看門(mén)狗溢出時(shí)間,程序工作一個(gè)周期后,自動(dòng)進(jìn)入休眠模式,由看門(mén)狗溢出喚醒單片機(jī)進(jìn)入下一周期。進(jìn)入一個(gè)工作周期前,首先判斷是電池上電第1次工作,還是看門(mén)狗溢出喚醒單片機(jī)。如果是電池上電第1次工作,指示燈應(yīng)給出指示,并對(duì)泵液量進(jìn)行設(shè)定。進(jìn)入工作周期后要判斷按鍵是否按下,若按下按鍵,則判斷是手動(dòng)泵液還是暫停泵液器工作,這兩者靠按鍵時(shí)間長(zhǎng)短決定。
紅外收發(fā)程序?qū)μ岣弑靡浩骺垢蓴_能力、降低泵液器能耗起著關(guān)鍵作用。經(jīng)過(guò)實(shí)驗(yàn)選定一個(gè)發(fā)射脈沖頻率使其對(duì)外界光干擾不敏感。為了最大限度地降低能耗,程序?qū)Πl(fā)射脈沖的個(gè)數(shù)和方法進(jìn)行設(shè)計(jì),先發(fā)2個(gè)試探脈沖,若接收到,則按選定頻率連續(xù)發(fā)60個(gè)脈沖,然后判斷接收方收到的脈沖數(shù)是否在允許的范圍內(nèi),是則泵液,否則進(jìn)入休眠模式;若接收方未收到試探脈沖,則直接進(jìn)入休眠模式。每次泵液器工作后,都檢查電池電壓,若發(fā)現(xiàn)電壓低,立即由指示燈給出報(bào)警,提示更換電池。
論文摘要:目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,本文介紹了單片機(jī)的應(yīng)用并且根據(jù)自己的一些經(jīng)驗(yàn)談了單片機(jī)應(yīng)用過(guò)程中應(yīng)該掌握的幾個(gè)技巧。
目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,廣泛使用的各種智能IC卡等等,這些都離不開(kāi)單片機(jī)。更不用說(shuō)自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。因此,單片機(jī)的學(xué)習(xí)、開(kāi)發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。
一、單片機(jī)的特點(diǎn)應(yīng)用
單片機(jī)的特點(diǎn)主要有:高集成度,體積小,高可靠性;控制功能強(qiáng);低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品;易擴(kuò)展;優(yōu)異的性能價(jià)格比。目前,單片機(jī)的應(yīng)用領(lǐng)域主要包括:辦公自動(dòng)化設(shè)備;單片機(jī)在機(jī)電一體化中的應(yīng)用;在實(shí)時(shí)過(guò)程控制中的應(yīng)用;單片機(jī)在日常生活及家用電器領(lǐng)域的應(yīng)用;在各類(lèi)儀器儀表中引入單片機(jī),使儀器儀表智能化,提高測(cè)試的自動(dòng)化程度和精度,簡(jiǎn)化儀器儀表的硬件結(jié)構(gòu),提高其性能價(jià)格比;在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用;商業(yè)營(yíng)銷(xiāo)設(shè)備;單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用;汽車(chē)電子產(chǎn)品;航空航天系統(tǒng)和國(guó)防軍事、尖端武器等領(lǐng)域,單片機(jī)的應(yīng)用更是不言而喻。
二、單片機(jī)開(kāi)發(fā)中的幾個(gè)基本技巧
在單片機(jī)應(yīng)用開(kāi)發(fā)中,代碼的使用效率問(wèn)題、單片機(jī)抗干擾性和可靠性等問(wèn)題仍困擾著?,F(xiàn)歸納出單片機(jī)開(kāi)發(fā)中應(yīng)掌握的幾個(gè)基本技巧。
1、如何減少程序中的bug。對(duì)于如何減少程序的bug,應(yīng)該先考慮系統(tǒng)運(yùn)行中應(yīng)考慮的超范圍管理參數(shù)如下。物理參數(shù):這些參數(shù)主要是系統(tǒng)的輸入?yún)?shù),它包括激勵(lì)參數(shù)、采集處理中的運(yùn)行參數(shù)和處理結(jié)束的結(jié)果參數(shù)。資源參數(shù):這些參數(shù)主要是系統(tǒng)中的電路、器件、功能單元的資源,如記憶體容量、存儲(chǔ)單元長(zhǎng)度、堆疊深度。應(yīng)用參數(shù):這些應(yīng)用參數(shù)常表現(xiàn)為一些單片機(jī)、功能單元的應(yīng)用條件。過(guò)程參數(shù):指系統(tǒng)運(yùn)行中的有序變化的參數(shù)。
2、如何提高C語(yǔ)言編程代碼的效率。用C語(yǔ)言進(jìn)行單片機(jī)程序設(shè)計(jì)是單片機(jī)開(kāi)發(fā)與應(yīng)用的必然趨勢(shì)。如果使用C編程時(shí),要達(dá)到最高的效率,最好熟悉所使用的C編譯器。先試驗(yàn)一下每條C語(yǔ)言編譯以后對(duì)應(yīng)的匯編語(yǔ)言的語(yǔ)句行數(shù),這樣就可以很明確的知道效率。在今后編程的時(shí)候,使用編譯效率最高的語(yǔ)句。各家的C編譯器都會(huì)有一定的差異,故編譯效率也會(huì)有所不同,優(yōu)秀的嵌入式系統(tǒng)C編譯器代碼長(zhǎng)度和執(zhí)行時(shí)間僅比以匯編語(yǔ)言編寫(xiě)的同樣功能程度長(zhǎng)5-20%。對(duì)于復(fù)雜而開(kāi)發(fā)時(shí)間緊的項(xiàng)目時(shí),可以采用C語(yǔ)言,但前提是要求你對(duì)該MCU系統(tǒng)的C語(yǔ)言和C編譯器非常熟悉,特別要注意該C編譯系統(tǒng)所能支持的數(shù)據(jù)類(lèi)型和算法。雖然C語(yǔ)言是最普遍的一種高級(jí)語(yǔ)言,但由于不同的MCU廠家其C語(yǔ)言編譯系統(tǒng)是有所差別的,特別是在一些特殊功能模塊的操作上。所以如果對(duì)這些特性不了解,那么調(diào)試起來(lái)問(wèn)題就會(huì)很多,反而導(dǎo)致執(zhí)行效率低于匯編語(yǔ)言。
3、如何解決單片機(jī)的抗干擾性問(wèn)題。防止干擾最有效的方法是去除干擾源、隔斷干擾路徑,但往往很難做到,所以只能看單片機(jī)抗干擾能力夠不夠強(qiáng)了。在提高硬件系統(tǒng)抗干擾能力的同時(shí),軟件抗干擾以其設(shè)計(jì)靈活、節(jié)省硬件資源、可靠性好越來(lái)越受到重視。單片機(jī)干擾最常見(jiàn)的現(xiàn)象就是復(fù)位;至于程序跑飛,其實(shí)也可以用軟件陷阱和看門(mén)狗將程序拉回到復(fù)位狀態(tài);所以單片機(jī)軟件抗干擾最重要的是處理好復(fù)位狀態(tài)。一般單片機(jī)都會(huì)有一些標(biāo)志寄存器,可以用來(lái)判斷復(fù)位原因;另外你也可以自己在RAM中埋一些標(biāo)志。在每次程序復(fù)位時(shí),通過(guò)判斷這些標(biāo)志,可以判斷出不同的復(fù)位原因;還可以根據(jù)不同的標(biāo)志直接跳到相應(yīng)的程序。這樣可以使程序運(yùn)行有連續(xù)性,用戶在使用時(shí)也不會(huì)察覺(jué)到程序被重新復(fù)位過(guò)。4、如何測(cè)試單片機(jī)系統(tǒng)的可靠性。當(dāng)一個(gè)單片機(jī)系統(tǒng)設(shè)計(jì)完成,對(duì)于不同的單片機(jī)系統(tǒng)產(chǎn)品會(huì)有不同的測(cè)試項(xiàng)目和方法,但是有一些是必須測(cè)試的:測(cè)試單片機(jī)軟件功能的完善性;上電、掉電測(cè)試;老化測(cè)試;ESD和EFT等測(cè)試。有時(shí)候,我們還可以模擬人為使用中,可能發(fā)生的破壞情況。例如用人體或者衣服織物故意摩擦單片機(jī)系統(tǒng)的接觸端口,由此測(cè)試抗靜電的能力。用大功率電鉆靠近單片機(jī)系統(tǒng)工作,由此測(cè)試抗電磁干擾能力等。
綜上所述,單片機(jī)已成為計(jì)算機(jī)發(fā)展和應(yīng)用的一個(gè)重要方面,單片機(jī)應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能用單片機(jī)通過(guò)軟件方法來(lái)實(shí)現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。此外在開(kāi)發(fā)和應(yīng)用過(guò)程中我們更要掌握技巧,提高效率,以便于發(fā)揮它更加廣闊的用途。
參考文獻(xiàn):
[1]何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù).北京:北京航空航天大學(xué)出版社,1990
論文摘要:目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,本文介紹了單片機(jī)的應(yīng)用并且根據(jù)自己的一些經(jīng)驗(yàn)談了單片機(jī)應(yīng)用過(guò)程中應(yīng)該掌握的幾個(gè)技巧。
目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,廣泛使用的各種智能IC卡等等,這些都離不開(kāi)單片機(jī)。更不用說(shuō)自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。因此,單片機(jī)的學(xué)習(xí)、開(kāi)發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。
一、單片機(jī)的特點(diǎn)應(yīng)用
單片機(jī)的特點(diǎn)主要有:高集成度,體積小,高可靠性;控制功能強(qiáng);低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品;易擴(kuò)展;優(yōu)異的性能價(jià)格比。目前,單片機(jī)的應(yīng)用領(lǐng)域主要包括:辦公自動(dòng)化設(shè)備;單片機(jī)在機(jī)電一體化中的應(yīng)用;在實(shí)時(shí)過(guò)程控制中的應(yīng)用;單片機(jī)在日常生活及家用電器領(lǐng)域的應(yīng)用;在各類(lèi)儀器儀表中引入單片機(jī),使儀器儀表智能化,提高測(cè)試的自動(dòng)化程度和精度,簡(jiǎn)化儀器儀表的硬件結(jié)構(gòu),提高其性能價(jià)格比;在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用;商業(yè)營(yíng)銷(xiāo)設(shè)備;單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用;汽車(chē)電子產(chǎn)品;航空航天系統(tǒng)和國(guó)防軍事、尖端武器等領(lǐng)域,單片機(jī)的應(yīng)用更是不言而喻。
二、單片機(jī)開(kāi)發(fā)中的幾個(gè)基本技巧
在單片機(jī)應(yīng)用開(kāi)發(fā)中,代碼的使用效率問(wèn)題、單片機(jī)抗干擾性和可靠性等問(wèn)題仍困擾著。現(xiàn)歸納出單片機(jī)開(kāi)發(fā)中應(yīng)掌握的幾個(gè)基本技巧。
1、如何減少程序中的bug。對(duì)于如何減少程序的bug,應(yīng)該先考慮系統(tǒng)運(yùn)行中應(yīng)考慮的超范圍管理參數(shù)如下。物理參數(shù):這些參數(shù)主要是系統(tǒng)的輸入?yún)?shù),它包括激勵(lì)參數(shù)、采集處理中的運(yùn)行參數(shù)和處理結(jié)束的結(jié)果參數(shù)。資源參數(shù):這些參數(shù)主要是系統(tǒng)中的電路、器件、功能單元的資源,如記憶體容量、存儲(chǔ)單元長(zhǎng)度、堆疊深度。應(yīng)用參數(shù):這些應(yīng)用參數(shù)常表現(xiàn)為一些單片機(jī)、功能單元的應(yīng)用條件。過(guò)程參數(shù):指系統(tǒng)運(yùn)行中的有序變化的參數(shù)。
2、如何提高C語(yǔ)言編程代碼的效率。用C語(yǔ)言進(jìn)行單片機(jī)程序設(shè)計(jì)是單片機(jī)開(kāi)發(fā)與應(yīng)用的必然趨勢(shì)。如果使用C編程時(shí),要達(dá)到最高的效率,最好熟悉所使用的C編譯器。先試驗(yàn)一下每條C語(yǔ)言編譯以后對(duì)應(yīng)的匯編語(yǔ)言的語(yǔ)句行數(shù),這樣就可以很明確的知道效率。在今后編程的時(shí)候,使用編譯效率最高的語(yǔ)句。各家的C編譯器都會(huì)有一定的差異,故編譯效率也會(huì)有所不同,優(yōu)秀的嵌入式系統(tǒng)C編譯器代碼長(zhǎng)度和執(zhí)行時(shí)間僅比以匯編語(yǔ)言編寫(xiě)的同樣功能程度長(zhǎng)5-20%。對(duì)于復(fù)雜而開(kāi)發(fā)時(shí)間緊的項(xiàng)目時(shí),可以采用C語(yǔ)言,但前提是要求你對(duì)該MCU系統(tǒng)的C語(yǔ)言和C編譯器非常熟悉,特別要注意該C編譯系統(tǒng)所能支持的數(shù)據(jù)類(lèi)型和算法。雖然C語(yǔ)言是最普遍的一種高級(jí)語(yǔ)言,但由于不同的MCU廠家其C語(yǔ)言編譯系統(tǒng)是有所差別的,特別是在一些特殊功能模塊的操作上。所以如果對(duì)這些特性不了解,那么調(diào)試起來(lái)問(wèn)題就會(huì)很多,反而導(dǎo)致執(zhí)行效率低于匯編語(yǔ)言。
3、如何解決單片機(jī)的抗干擾性問(wèn)題。防止干擾最有效的方法是去除干擾源、隔斷干擾路徑,但往往很難做到,所以只能看單片機(jī)抗干擾能力夠不夠強(qiáng)了。在提高硬件系統(tǒng)抗干擾能力的同時(shí),軟件抗干擾以其設(shè)計(jì)靈活、節(jié)省硬件資源、可靠性好越來(lái)越受到重視。單片機(jī)干擾最常見(jiàn)的現(xiàn)象就是復(fù)位;至于程序跑飛,其實(shí)也可以用軟件陷阱和看門(mén)狗將程序拉回到復(fù)位狀態(tài);所以單片機(jī)軟件抗干擾最重要的是處理好復(fù)位狀態(tài)。一般單片機(jī)都會(huì)有一些標(biāo)志寄存器,可以用來(lái)判斷復(fù)位原因;另外你也可以自己在RAM中埋一些標(biāo)志。在每次程序復(fù)位時(shí),通過(guò)判斷這些標(biāo)志,可以判斷出不同的復(fù)位原因;還可以根據(jù)不同的標(biāo)志直接跳到相應(yīng)的程序。這樣可以使程序運(yùn)行有連續(xù)性,用戶在使用時(shí)也不會(huì)察覺(jué)到程序被重新復(fù)位過(guò)。4、如何測(cè)試單片機(jī)系統(tǒng)的可靠性。當(dāng)一個(gè)單片機(jī)系統(tǒng)設(shè)計(jì)完成,對(duì)于不同的單片機(jī)系統(tǒng)產(chǎn)品會(huì)有不同的測(cè)試項(xiàng)目和方法,但是有一些是必須測(cè)試的:測(cè)試單片機(jī)軟件功能的完善性;上電、掉電測(cè)試;老化測(cè)試;ESD和EFT等測(cè)試。有時(shí)候,我們還可以模擬人為使用中,可能發(fā)生的破壞情況。例如用人體或者衣服織物故意摩擦單片機(jī)系統(tǒng)的接觸端口,由此測(cè)試抗靜電的能力。用大功率電鉆靠近單片機(jī)系統(tǒng)工作,由此測(cè)試抗電磁干擾能力等。
綜上所述,單片機(jī)已成為計(jì)算機(jī)發(fā)展和應(yīng)用的一個(gè)重要方面,單片機(jī)應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能用單片機(jī)通過(guò)軟件方法來(lái)實(shí)現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。此外在開(kāi)發(fā)和應(yīng)用過(guò)程中我們更要掌握技巧,提高效率,以便于發(fā)揮它更加廣闊的用途。
參考文獻(xiàn):
[1]何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù).北京:北京航空航天大學(xué)出版社,1990
[論文摘要]以單片機(jī)為基礎(chǔ),分別以轎車(chē)溫控系統(tǒng)和貯液容器溫控系統(tǒng)為例,闡述單片機(jī)在溫控系統(tǒng)中的應(yīng)用原理。
一、單片機(jī)在貯液容器溫控系統(tǒng)中的應(yīng)用
該系統(tǒng)中以貯液容器溫度為被控參數(shù),蒸汽流量為控制參數(shù),輸入貯液容器冷物料的初溫為前饋控制,構(gòu)成前饋一反饋控制系統(tǒng)。發(fā)揮前饋控制和反饋控制的各自優(yōu)勢(shì),將可測(cè)而不可控的干擾由前饋控制克服,其他干擾由反饋控制克服,從而達(dá)到控制貯液容器溫度。滿足工藝要求的目的。
(一)硬件設(shè)計(jì)。選單片機(jī)AT89C51為主機(jī),配以兩路傳感變送器、多路開(kāi)關(guān)、A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器、V/I轉(zhuǎn)換器、調(diào)節(jié)閥等實(shí)現(xiàn)對(duì)貯液容器溫度的自動(dòng)控制,同時(shí)還設(shè)有報(bào)警電路、鍵盤(pán)和顯示電路。系統(tǒng)在穩(wěn)態(tài)時(shí),貯液容器的溫度恒定在工藝要求的數(shù)值不變。當(dāng)冷物料的初始溫度與其設(shè)定值相比發(fā)生變化時(shí),如果變化很小,將完全由前饋控制來(lái)克服這一變化給系統(tǒng)帶來(lái)的影響;如果變化大,前饋控制不能完全克服這一變化給系統(tǒng)帶來(lái)的影響,反饋控制則開(kāi)始動(dòng)作。當(dāng)冷物料的初始溫度不變,而由其他干擾引起貯液容器的溫度發(fā)生變化時(shí),只有反饋控制動(dòng)作,最終使系統(tǒng)重新達(dá)到穩(wěn)態(tài)。
1.前向通道的設(shè)計(jì)
采用JUMU90系列的溫度傳感變送器,其輸入范圍為:0℃~500℃,輸出為4mA~20mA(DC),測(cè)量精度為0.5%.選用10位逐次逼近式A/D轉(zhuǎn)換芯片AD571[2],接收到有效的CONVERT命令后,內(nèi)部的逐次逼近寄存器從最高位開(kāi)始順次經(jīng)電流輸出的DAC在比較器上與模擬量經(jīng)5k8電阻所產(chǎn)生的電流相比較。檢測(cè)完所有位后,SAP中包含轉(zhuǎn)換后的10位二進(jìn)制碼。轉(zhuǎn)換完成后,SAP發(fā)出DR信號(hào)(低電平有效),單片機(jī)查詢到DR=0時(shí),便使其打開(kāi)三態(tài)緩沖器輸出數(shù)據(jù)。
2.后向通道的設(shè)計(jì)
(1)D/A轉(zhuǎn)換器的設(shè)計(jì)。為了滿足系統(tǒng)的精度要求,選用10位的D/A轉(zhuǎn)換器DAC1020。由于其內(nèi)部不帶有鎖存器,所以必須通過(guò)I/O口才能與AT89C51單片機(jī)連接,又由于AT89C51的字長(zhǎng)是8位的,一次操作只能傳輸8位數(shù)據(jù).因此AT89C51必須進(jìn)行兩次操作才能把一個(gè)完整的10位數(shù)據(jù)送到AC1020。為了使10位數(shù)據(jù)能夠同時(shí)送人DAC1020,避免輸出電壓波形出現(xiàn)毛刺現(xiàn)象,故必須采用雙緩沖器方式。AT89C51先把高2位數(shù)據(jù)輸出到74LS74(1),接著把低8位數(shù)據(jù)輸出到74LS377,與此同時(shí)74LS377的片選信號(hào)也作為74LS74(2)的時(shí)鐘脈沖,把74IS74(1)的內(nèi)容打人74LS74(2)中,從而使一個(gè)完整的數(shù)據(jù)同時(shí)到達(dá)DAC1020的數(shù)據(jù)輸入端.這樣就消除了DAC輸出端的毛刺現(xiàn)象。
(2)執(zhí)行器及調(diào)理電路的設(shè)計(jì)。系統(tǒng)中選用的是ZMAN16BG,ZGICr18Ni9Ti型號(hào)的對(duì)數(shù)流量特性的調(diào)節(jié)閥。閥的輸入信號(hào)為氣信號(hào),而D/A轉(zhuǎn)換器的輸出為Ov~5V的電壓信號(hào).所以在D/A轉(zhuǎn)換器和調(diào)節(jié)閥之間要加一個(gè)V/I轉(zhuǎn)換器和一個(gè)電氣閥門(mén)定位器,將0v~5v的電壓信號(hào)先轉(zhuǎn)換成4mA~20mA的電流信號(hào)后,再將4mA~20mA的電流信號(hào)轉(zhuǎn)換成0.02MPa~0.1MPa的氣信號(hào)。使調(diào)節(jié)閥接收氣信號(hào)而工作。
(二)軟件設(shè)計(jì)。經(jīng)分析,系統(tǒng)軟件可采用結(jié)構(gòu)化模塊程序設(shè)計(jì),主要有系統(tǒng)主程序、看門(mén)狗中斷服務(wù)程序、鍵盤(pán)掃描子程序、顯示子程序、報(bào)警子程序、A/D轉(zhuǎn)換子程序、D/A轉(zhuǎn)換子程序、PID數(shù)據(jù)處理子程序、BCD碼轉(zhuǎn)換子程序。
主程序開(kāi)始后,先對(duì)單片機(jī)AT89C51和8155芯片進(jìn)行初始化,接下來(lái)是開(kāi)中斷,調(diào)用鍵盤(pán)掃描子程序,選通多路模擬開(kāi)關(guān)的1號(hào)通道,將采集的數(shù)據(jù)送人A/D轉(zhuǎn)換器轉(zhuǎn)換后傳入單片機(jī)。若溫度越限就報(bào)警處理,否則直接處理后送顯示,再選通多路模擬開(kāi)關(guān)的2號(hào)通道,將采集的數(shù)據(jù)送人A/D轉(zhuǎn)換器轉(zhuǎn)換后送人單片機(jī)進(jìn)行總的運(yùn)算處理,輸出給D/A轉(zhuǎn)換器變成模擬信號(hào)去改變調(diào)節(jié)閥的開(kāi)度。
二、單片機(jī)在汽車(chē)空調(diào)溫控系統(tǒng)中的應(yīng)用(一)硬件系統(tǒng)。本系統(tǒng)選用ATMEL公司的AT89系列單片機(jī)中的AT89C52,AT89C52單片機(jī)是一種新型的低功耗、高性能且內(nèi)含8K字節(jié)閃電存儲(chǔ)器的8位CMOS微控制器,與工業(yè)標(biāo)準(zhǔn)MCS一51指令系列和引腳完全兼容。有超強(qiáng)的加密功能,其片內(nèi)閃電存儲(chǔ)器的編程與擦除完全用電實(shí)現(xiàn),數(shù)據(jù)不易揮發(fā),編程/擦除速度快。AT89C52芯片內(nèi)部有6個(gè)中斷源:兩個(gè)外部中斷INTO和INT1.三個(gè)定時(shí)器中斷(定時(shí)器0,1,2)和一個(gè)串行口中斷。在本系統(tǒng)中涉及到AT89C52芯片的中斷源有五個(gè):分別是外部中斷INT1,定時(shí)/計(jì)數(shù)器T0,T1和T2以及串行口中斷。本測(cè)控系統(tǒng)采用電平激活方式,也即是INT1=0;一旦INT1引腳的采樣值為低電平,則TCON寄對(duì)于定時(shí)器TO和Tl,通過(guò)寄存器TMOD,TCON來(lái)控制和選擇定時(shí)/計(jì)數(shù)器的功能和操作模式。這些寄存器的內(nèi)容靠軟件設(shè)置,系統(tǒng)復(fù)位時(shí),寄存器的所有位都被清零。而T2的工作是靠對(duì)T2CON寄存器進(jìn)行軟件設(shè)置而定義的。本系統(tǒng)采用定時(shí)TO來(lái)計(jì)算車(chē)廂溫度采集的時(shí)間間隔,設(shè)置為工作方式1,即l6位計(jì)數(shù)定時(shí)方式:定時(shí)Tl作波特率發(fā)生器使用,選擇在工作方式2,即8位自動(dòng)加載方式;定時(shí)器T2用于確定混合風(fēng)門(mén)步進(jìn)電機(jī)輸入脈沖的頻率,設(shè)置位l6位常數(shù)自動(dòng)重裝人的工作方式。
當(dāng)采用12MHz的晶振時(shí),計(jì)數(shù)速率為lMHz.微機(jī)串口通常采用RS232電平,而單片機(jī)串口是1TrL電平,二者不兼容。所以,接口必須做電平轉(zhuǎn)換處理。采用MAXIM公司的MAX232電平轉(zhuǎn)換芯片。單片機(jī)串行口的TXD,RXD和GND經(jīng)電平轉(zhuǎn)換分別與微機(jī)的RXD,TXD和SG相連,MAX232電平轉(zhuǎn)換芯片的第9,10引腳分別接單片機(jī)的l0和11引腳。DB9串口的第2,3引腳分別接MAX232電平轉(zhuǎn)換芯片的7,8引腳。通過(guò)MAX232的TTL電平和RS232的輸入/輸出端口,自動(dòng)地調(diào)節(jié)了單片機(jī)串口的TTL電平信號(hào)和RS232的串行通信信號(hào)的電平匹配。數(shù)據(jù)發(fā)送是由一條寫(xiě)發(fā)送寄存器(SBUF)的指令開(kāi)始,隨后在串行口由硬件自動(dòng)加人起位和停止位,構(gòu)成一個(gè)完整的幀格式,然后在移位脈沖的作用下,由TXD端串行輸出。一個(gè)字符幀發(fā)送完后。使TXD輸出線維持在“1”狀態(tài)下,并將串行控制寄存器SCON的TI位置“1”,通知CPU可以接著發(fā)送下一個(gè)字符。
(二)軟件系統(tǒng)。轎車(chē)空調(diào)智能溫控系統(tǒng)的工作模式分為“正常運(yùn)行模式”、“軟關(guān)機(jī)模式”、“手動(dòng)控制模式”和“自動(dòng)控制模式”。系統(tǒng)上電時(shí),軟件進(jìn)人上電自檢狀態(tài),這時(shí)系統(tǒng)會(huì)首先從監(jiān)控芯片x25045讀入上次斷電前存人EEPROM的系統(tǒng)狀態(tài)信息,初始化各個(gè)中斷并恢復(fù)空調(diào)控制器到上次關(guān)機(jī)前狀態(tài)。經(jīng)過(guò)上電初始化,智能溫控系統(tǒng)會(huì)恢復(fù)到上次關(guān)機(jī)前的“正常運(yùn)行模式”。此時(shí),通過(guò)溫度調(diào)節(jié)按鍵可以設(shè)定需要的溫度值,溫度傳感器定時(shí)檢測(cè)車(chē)廂溫度,顯示器顯示溫度設(shè)定值和溫度測(cè)量值,混合風(fēng)門(mén)的開(kāi)度會(huì)根據(jù)溫差和溫差變化自動(dòng)調(diào)節(jié),溫控系統(tǒng)能夠與PC機(jī)通過(guò)串口通訊交換數(shù)據(jù)。按一下“ON/OFF”鍵,可使溫控系統(tǒng)進(jìn)入“軟關(guān)機(jī)模式”。此時(shí),系統(tǒng)不能再進(jìn)行溫度檢測(cè)、溫度設(shè)定和串行通訊,顯示器熄滅,混合風(fēng)門(mén)步進(jìn)電機(jī)停止運(yùn)轉(zhuǎn)。
參考文獻(xiàn):
[1]李華,MCS一51系列單片機(jī)實(shí)用接口技術(shù)[M].北京:北京航空航天大學(xué)出版社.1993.306405.