無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計項目設(shè)計說明書基于無線的簡易數(shù)字電壓表的設(shè)計

上傳人:仙*** 文檔編號:28928929 上傳時間:2021-09-21 格式:DOC 頁數(shù):23 大?。?42.14KB
收藏 版權(quán)申訴 舉報 下載
無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計項目設(shè)計說明書基于無線的簡易數(shù)字電壓表的設(shè)計_第1頁
第1頁 / 共23頁
無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計項目設(shè)計說明書基于無線的簡易數(shù)字電壓表的設(shè)計_第2頁
第2頁 / 共23頁
無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計項目設(shè)計說明書基于無線的簡易數(shù)字電壓表的設(shè)計_第3頁
第3頁 / 共23頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計項目設(shè)計說明書基于無線的簡易數(shù)字電壓表的設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計項目設(shè)計說明書基于無線的簡易數(shù)字電壓表的設(shè)計(23頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計項目 (二級項目) 設(shè)計說明書 (2013/2014學(xué)年第二學(xué)期) 題 目 : 基于無線的簡易數(shù)字電壓表的設(shè)計 _ 專業(yè)班級 : 通信工程11級1班 學(xué)生姓名 : 學(xué) 號: 指導(dǎo)教師 :賈少銳、王鵬、李曉東 設(shè)計周數(shù) : 1周 設(shè)計成績 : 2014年6月27日 目錄 1、課程設(shè)計目的 2 2、 總體設(shè)計方案 2

2、 3、設(shè)計組成及原理分析 2 3.1 315M發(fā)射模塊 3 3.2 315MHZ超再生接收模塊 5 3.3 超再生接收模塊的優(yōu)勢 7 4、編寫代碼應(yīng)用的串口通信知識 8 4.1 單片機(jī)串口通信原理 8 4.2 設(shè)定波特率 9 5、 軟件程序的實現(xiàn) 10 6、總結(jié) 19 7、參考文獻(xiàn) 21 1、課程設(shè)計目的 無線射頻技術(shù)作為本世紀(jì)最有發(fā)展前景的信息技術(shù)之一,已經(jīng)得到業(yè)界的高度重視。該技術(shù)利用射頻方式進(jìn)行非接觸雙向通信,可以自動識別目標(biāo)對象并獲取相關(guān)數(shù)據(jù),具有精度高、適應(yīng)環(huán)境能力強(qiáng)、抗干擾強(qiáng)、操作快捷等許多優(yōu)點(diǎn)。

3、現(xiàn)代通信技術(shù)的迅速發(fā)展使得許多應(yīng)用領(lǐng)域都采用無線的通信方式進(jìn)行數(shù)據(jù)傳輸。F05/J04收發(fā)模塊,由于具有體積小、功耗低、功能強(qiáng)、成本低等特點(diǎn),廣泛應(yīng)用于各類的無線遙控器、無線報警器以及玩具等其他小型電器裝置。但是,這種電路極少用在多個字節(jié)數(shù)據(jù)的通信方面,具有一定的局限性。這次課設(shè)主要介紹利用315 MHz高頻發(fā)射模塊和接收模塊來制作無線通信。 基于對課題的理解,本次設(shè)計要求我們完成一個基于單片機(jī)控制的簡易電壓表,要求能監(jiān)測兩路的輸入電壓值,測量范圍為0—5伏的輸入電壓值;用8位串行A/D轉(zhuǎn)換器,8為分辨率,逐次逼近型,基準(zhǔn)電壓5V;能用兩位LED進(jìn)行輪流顯示或單路選擇顯示,顯示精度為0.1V

4、 。 2、 總體設(shè)計方案 繼上兩周的課程設(shè)計結(jié)果,用C語言的編程,做出了STC89C52RC單片機(jī)上實現(xiàn)了一個基于單片機(jī)控制的簡易電壓表的設(shè)計。這次我們要應(yīng)用F05/J04無線收發(fā)模塊,通過STC89C52RC單片機(jī)的P3.0和P3.1口進(jìn)行串口通信 ,再寫出相應(yīng)的發(fā)送端和接收端的程序,分別考入兩個單片機(jī)中,從而實現(xiàn)從一個單片機(jī)發(fā)送到另一單片機(jī)上顯示和報警。 3、設(shè)計組成及原理分析 無線數(shù)據(jù)傳輸廣泛地運(yùn)用在車輛監(jiān)控、遙控、遙測、小型無線網(wǎng)絡(luò)、無線抄表、門禁系統(tǒng)、小區(qū)傳呼、工業(yè)數(shù)據(jù)采集系統(tǒng)、無線標(biāo)簽、身份識別、非接觸RF智能卡、小型無線數(shù)據(jù)終端、安全防火系統(tǒng)、無線遙控系統(tǒng)、生物信號采集、

5、水文氣象監(jiān)控、機(jī)器人控制、無線232數(shù)據(jù)通信、無線485/422數(shù)據(jù)通信、數(shù)字音頻、數(shù)字圖像傳輸?shù)阮I(lǐng)域中。下面具體介紹 315M無線發(fā)射接收模塊(不帶編碼發(fā)射接收模塊)。 3.1 315M發(fā)射模塊 它具有聲表穩(wěn)頻、性能穩(wěn)定、工作電壓范圍寬、產(chǎn)品一致性好,性價比高等優(yōu)點(diǎn)。 下圖為315M無線發(fā)射頭實物圖。 圖1 315M無線發(fā)射頭實物圖 下圖為315M無線發(fā)射模塊等效電路圖。 圖2 DF發(fā)射模塊的等效電路圖 主要技術(shù)指標(biāo): (1)通訊方式:調(diào)幅AM (2)工作頻率:315MHZ (可以提供433

6、MHZ,購貨時請?zhí)貏e注明) (3)頻率穩(wěn)定度:75KHZ (4)發(fā)射功率:≤500MW (5)靜態(tài)電流:≤0.1UA (6)發(fā)射電流:3~50MA (7)工作電壓:DC 3~12V 無線數(shù)據(jù)傳輸廣泛地運(yùn)用在車輛監(jiān)控、遙控、遙測、小型無線網(wǎng)絡(luò)、無線抄表、門禁系統(tǒng)、小區(qū)傳呼、工業(yè)數(shù)據(jù)采集系統(tǒng)、無線標(biāo)簽、身份識別、非接觸RF智能卡、小型無線數(shù)據(jù)終端、安全防火系統(tǒng)、無線遙控系統(tǒng)、生物信號采集、水文氣象監(jiān)控、機(jī)器人控制、無線232數(shù)據(jù)通信、無線485/422數(shù)據(jù)通信、數(shù)字音頻、數(shù)字圖像傳輸?shù)阮I(lǐng)域中。 DF數(shù)據(jù)發(fā)射模塊的工作頻率為315M,采用聲表諧振器SAW穩(wěn)頻,頻率穩(wěn)定度

7、極高,當(dāng)環(huán)境溫度在-25~+85度之間變化時,頻飄僅為3ppm/度。特別適合多發(fā)一收無線遙控及數(shù)據(jù)傳輸系統(tǒng)。聲表諧振器的頻率穩(wěn)定度僅次于晶體,而一般的LC振蕩器頻率穩(wěn)定度及一致性較差,即使采用高品質(zhì)微調(diào)電容,溫差變化及振動也很難保證已調(diào)好的頻點(diǎn)不會發(fā)生偏移。 DF發(fā)射模塊未設(shè)編碼集成電路,而增加了一只數(shù)據(jù)調(diào)制三極管Q1,這種結(jié)構(gòu)使得它可以方便地和其它固定編碼電路、滾動碼電路及單片機(jī)接口,而不必考慮編碼電路的工作電壓和輸出幅度信號值的大小。DF數(shù)據(jù)模塊具有較寬的工作電壓范圍3~12V,當(dāng)電壓變化時發(fā)射頻率基本不變,和發(fā)射模塊配套的接收模塊無需任何調(diào)整就能穩(wěn)定地接收。當(dāng)發(fā)射電壓為3V時,

8、空曠地傳輸距離約20~50米,發(fā)射功率較小,當(dāng)電壓5V時約100~200米,當(dāng)電壓9V時約300~500米,當(dāng)發(fā)射電壓為12V時,為最佳工作電壓,具有較好的發(fā)射效果,發(fā)射電流約60毫安,空曠地傳輸距離700~800米,發(fā)射功率約500毫瓦。當(dāng)電壓大于l2V時功耗增大,有效發(fā)射功率不再明顯提高。這套模塊的特點(diǎn)是發(fā)射功率比較大,傳輸距離比較遠(yuǎn),比較適合惡劣條件下進(jìn)行通訊。天線最好選用25厘米長的導(dǎo)線,遠(yuǎn)距離傳輸時最好能夠豎立起來,因為無線電信號傳輸時收很多因素的影響,所以一般實用距離只有標(biāo)稱距離的20%甚至更少,這點(diǎn)需要在開發(fā)時注意考慮。 DF數(shù)據(jù)模塊采用ASK方式調(diào)制,以降低功耗,當(dāng)數(shù)

9、據(jù)信號停止時發(fā)射電流降為零,數(shù)據(jù)信號與DF發(fā)射模塊輸入端可以用電阻或者直接連接而不能用電容耦合,否則DF發(fā)射模塊將不能正常工作。數(shù)據(jù)電平應(yīng)接近DF數(shù)據(jù)模塊的實際工作電壓,以獲得較高的調(diào)制效果。 DF發(fā)射發(fā)射模塊最好能垂直安裝在主板的邊緣,應(yīng)離開周圍器件5mm以上,以免受分布參數(shù)影晌。DF模塊的傳輸距離與調(diào)制信號鐸率及幅度,發(fā)射電壓及電池容量,發(fā)射天線,接收機(jī)的靈敏度,收發(fā)環(huán)境有關(guān)。一般在開闊區(qū)最大發(fā)射距離約800米,在有障礙的情況下,距離會縮短,由于無線電信號傳輸過程中的折射和反射會形成一些死區(qū)及不穩(wěn)定區(qū)域,不同的收發(fā)環(huán)境會有不同的收發(fā)距離。 3.2 315MHZ超再生接收模塊

10、 下圖為315M無線接收頭的實物圖。 圖3 315M無線接收頭實物圖 接收模塊一共有四個外部接口,上面有英文表示?!癡CC”表示接電源正極,“ DATA”表示輸出,“GND”表示接電源負(fù)極。 下圖為315M無線接收頭的超再生接收模塊的等效電路圖。 圖4 DF超再生接收模塊的等效電路圖 主要技術(shù)指標(biāo): (1)通訊方式:調(diào)幅AM (2)工作頻率:315MHZ(可以提供433MHZ,購貨時請?zhí)貏e注明) (3)頻率穩(wěn)定度:200KHZ (4)接收靈敏度:-106DBM (5)靜態(tài)電流:≤5MA (6)工作電流:≤5MA (7)工作電壓:DC

11、5V (8)輸出方式:TTL電平 DF接收模塊的工作電壓為5伏,靜態(tài)電流4毫安,它為超再生接收電路,接收靈敏度為-105dbm,接收天線最好為25~30厘米的導(dǎo)線,最好能豎立起來。接收模塊本身不帶解碼集成電路,因此接收電路僅是一種組件,只有應(yīng)用在具體電路中進(jìn)行二次開發(fā)才能發(fā)揮應(yīng)有的作用,這種設(shè)計有很多優(yōu)點(diǎn),它可以和各種解碼電路或者單片機(jī)配合,設(shè)計電路靈活方便.這種電路的優(yōu)點(diǎn)有以下四個方面。 (1)天線輸入端有選頻電路,而不依賴1/4波長天線的選頻作用,控制距離較近時可以剪短甚至去掉外接天線 (2)輸出端的波形相對比較干凈,干擾信號為短暫的針狀脈沖,所以抗干擾

12、能力較強(qiáng)。 (3)DF模塊自身輻射極小,加上電路模塊背面網(wǎng)狀接地銅箔的屏蔽作用,可以減少自身振蕩的泄漏和外界干擾信號的侵入。 (4)采用帶骨架的銅芯電感將頻率調(diào)整到315M后封固,這與采用可調(diào)電容調(diào)整接收頻率的電路相比,溫度、濕度穩(wěn)定性及抗機(jī)械振動性能都有極大改善??烧{(diào)電容調(diào)整精度較低,只有3/4圈的調(diào)整范圍,而可調(diào)電感可以做到多圈調(diào)整??烧{(diào)電容調(diào)整完畢后無法封固,因為無論導(dǎo)體還是絕緣體,各種介質(zhì)的靠近或侵入都會使電容的容量發(fā)生變化,進(jìn)而影響接收頻率。另外未經(jīng)封固的可調(diào)電容在受到振動時定片和動片之間發(fā)生位移;溫度變化時熱脹冷縮會使定片和動片間距離改變;濕度變化因介質(zhì)變化改變

13、容量;長期工作在潮濕環(huán)境中還會因定片和動片的氧化改變?nèi)萘?,這些都會嚴(yán)重影響接收頻率的穩(wěn)定性,而采用可調(diào)電感就可解決這些問題,因為電感可以在調(diào)整完畢后進(jìn)行封固,絕緣體封固劑不會使電感量發(fā)生變化。 DF無線數(shù)傳模塊開發(fā)注意事項: DF模塊必須用信號調(diào)制才能正常工作,常見的固定碼編碼器件如PT2262/2272,只要直接連接即可非常簡單,因為是專用編碼芯片,所以效果很好傳輸距離很遠(yuǎn)。模塊輸出腳在模塊內(nèi)部通過一個上拉39K 電阻到+5V,使用的時候需要考慮解碼器件的輸入阻抗。 DF模塊還有一種重要的用途就是配合單片機(jī)來實現(xiàn)數(shù)據(jù)通訊,這時有一定的技巧。 (1)合理的通訊速率

14、 DF數(shù)據(jù)模塊的最大傳輸數(shù)據(jù)速率為9.6KBs,一般控制在2.5k左右,過高的數(shù)據(jù)速率會降低接收靈敏度及增大誤碼率甚至根本無法工作。 (2)合理的信息碼格式 單片機(jī)和DF模塊工作時,通常自己定義傳輸協(xié)議,不論用何種調(diào)制方式,所要傳遞的信息碼格式都很重要,它將直接影響到數(shù)據(jù)的可靠收發(fā)。 碼組格式推薦方案: 前導(dǎo)碼+同步碼+ 數(shù)據(jù)幀 前導(dǎo)碼長度應(yīng)大于是10ms,以避開背景噪聲,因為接收模塊接收到的數(shù)據(jù)第一位極易被干擾(即零電平干擾)而引起接收到的數(shù)據(jù)錯誤。所以采用CPU編譯碼可在數(shù)據(jù)識別位前加一些亂碼以抑制零電平干擾。 同步碼主要用于區(qū)別于前導(dǎo)碼及數(shù)

15、據(jù)。有一定的特征,好讓軟件能夠通過一定的算法鑒別出同步碼,同時對接收數(shù)據(jù)做好準(zhǔn)備。 數(shù)據(jù)幀不宜采用非歸零碼,更不能長0和長1。采用曼徹斯特編碼或POCSAG碼等,如下面的數(shù)據(jù)格式有一定檢錯功能: (3)單片機(jī)對接收模塊的干擾 單片機(jī)模擬2262時一般都很正常,然而單片機(jī)模擬2272解碼時通常會發(fā)現(xiàn)遙控距離縮短很多,這是因為單片機(jī)的時鐘頻率的倍頻都會對接收模塊產(chǎn)生干擾,51系列單片機(jī)工作的時候,會產(chǎn)生比較強(qiáng)的電磁輻射,頻率范圍在9MHZ-900MHZ,因此它會影響任何此頻率內(nèi)的無線接收設(shè)備的靈敏度,解決的方法是盡量降低CPU 晶體的頻率。還可以改用頻點(diǎn)較高的接收頻率。

16、 接收模塊和51系列單片機(jī)接口時最好做一個隔離電路,能較好地遏制單片機(jī)對接收模塊的電磁干擾。 DF接收模塊工作時一般輸出的是高電平脈沖,不是直流電平,所以不能用萬用表測試,調(diào)試時可用一個發(fā)光二極管串接一個3K的電阻來監(jiān)測DF模塊的輸出狀態(tài)。 3.3 超再生接收模塊的優(yōu)勢 超再生調(diào)節(jié)電路也稱超再生檢波電路,他是即使工作在間歇震蕩狀態(tài)下的再生檢波電路。一般再生檢波電路在中波段式靈敏度很高,所以常用來制作簡易的晶體管收音機(jī)。對于工作在短波段的無線遙控或通信設(shè)備,再生檢波的靈敏度及穩(wěn)定性都不符合要求。但超再生檢波在在短波段具有很高的靈敏度,在接收弱信號時放大功率達(dá)

17、到幾十萬倍。因此,對于希望電路簡單,靈敏度高,而選擇性和信噪比要求不高的簡單無線遙控設(shè)備,超再生調(diào)節(jié)電路還是很有實用價值的。而且它電路簡單、成本低廉。不用超外差檢波電路的原因是,即使它溫度適應(yīng)性強(qiáng),接收靈敏度高,工作穩(wěn)定,抗干擾能力強(qiáng),但是他不能近距離不能接收。由于它的核心器件都有一個缺點(diǎn)就是強(qiáng)信號、近距離是阻塞、不能解碼。故在本次課設(shè)中,應(yīng)用超再生收發(fā)模塊沒有這個問題。 4、編寫代碼應(yīng)用的串口通信知識 51 單片機(jī)內(nèi)部有一個全雙工串行接口。什么叫全雙工串口呢?一般來說,只能接受或只能發(fā)送的稱為單工串行;既可接收又可發(fā)送,但不能同時進(jìn)行的稱為半雙工;能同時接收和發(fā)送的串行口稱為全雙工串行口

18、。串行通信是指數(shù)據(jù)一位一位地按順序傳送的通信方式,其突出優(yōu)點(diǎn)是只需一根傳輸線,可大大降低硬件成本,適合遠(yuǎn)距離通信。其缺點(diǎn)是傳輸速度較低。 首先我們來了解單片機(jī)串口相關(guān)的寄存器。SBUF 寄存器:它是兩個在物理上獨(dú)立的接收、發(fā)送緩沖器,可同時發(fā)送、接收數(shù)據(jù),可通過指令對SBUF 的讀寫來區(qū)別是對接收緩沖器的操作還是對發(fā)送緩沖器的操作。從而控制外部兩條獨(dú)立的收發(fā)信號線RXD(P3.0)、TXD(P3.1),同時發(fā)送、接收數(shù)據(jù),實現(xiàn)全雙工。 4.1 單片機(jī)串口通信原理 (1)51系列單片機(jī)的串口有4個模式,可分別用作串并轉(zhuǎn)換、并串轉(zhuǎn)換、異步串行通信(2種模式)。異步串行通信中,有1+8+

19、1和1+8+1+1兩種幀格式,多機(jī)通信是特殊的通信方式。 (2)基本原理是兩組移位寄存器。將并行通信轉(zhuǎn)換成串行通信模式(發(fā)送部分),或反之(接收部分)??扇p工運(yùn)行。 (3)速度通過移位脈沖決定。具體一般通過定時器1的自動裝載模式產(chǎn)生的溢出脈沖給出。 (4)電平上采用的是CMOS邏輯。 (5)以上是物理層和數(shù)據(jù)鏈路層的單片機(jī)串口模塊的約定,其他層需要軟件人員根據(jù)需要自行把握。另外,電平需要根據(jù)實際通信環(huán)境做變換。 串行通信雖然有其自身優(yōu)點(diǎn):如適合長距離通信,有一定的糾錯能力等,但并行通信在短距離(數(shù)米范圍內(nèi))傳輸過程中的優(yōu)點(diǎn)是顯而易見的。首先串行通信時要

20、設(shè)置串口數(shù)據(jù),如:串口號(Com1、Com2或者其他串口)、波特率、數(shù)據(jù)位數(shù)、停止位、校驗位等等。而且單片機(jī)與PC機(jī)的串口數(shù)據(jù)必須一一對等,否則不能傳輸。而并行傳輸時,無需上述過程。其次,PC機(jī)的串口電平值為+12V~-12V,單片機(jī)是TTL電平(0~+5V),兩者必須要經(jīng)過電平轉(zhuǎn)換芯片進(jìn)行電平間的轉(zhuǎn)換。而進(jìn)行并行傳輸時,由于雙方都是TTL電平,所以PC的并口可以與單片機(jī)或其他芯片直接相連;另外,串行傳輸速度慢,每次只能傳送一位,而并行每次可以傳送8位,速度上的差異顯而易見。而對于單片機(jī),串口(UART)是最常用的端口,尤其對于存在兩個或多個串口的單片機(jī)來說,充分利用串口進(jìn)行通信是非常重要的。

21、 4.2 設(shè)定波特率 與串行口相關(guān)的寄存器有定時器相關(guān)寄存器和中斷寄存器。定時器寄存器用來設(shè)定波特率。中斷允許寄存器IE 中的ES 位也用來作為串行I/O 中斷允許位。當(dāng)ES = 1,允許 串行I/O 中斷;當(dāng)ES = 0,禁止串行I/O 中斷。中斷優(yōu)先級寄存器IP的PS 位則用作串行I/O 中斷優(yōu)先級控制位。當(dāng)PS=1,設(shè)定為高優(yōu)先級;當(dāng)PS =0,設(shè)定為低優(yōu)先級。 再來說說波特率,我們?yōu)槭裁匆O(shè)定波特率,因為單片機(jī)會以16倍波特率的速度進(jìn)行采樣,而在實驗中我們用的是10位異步收發(fā)方式,因此要將SM0置0,SM1置1.而其中的10位有8位數(shù)據(jù)位,第一位和最后一位是發(fā)送數(shù)據(jù)的起始與結(jié)束.

22、采用高的皮特率就不會出錯啦。在了解了串行口相關(guān)的寄存器之后,我們可得出其通信波特率的一些公式的。 方式0的波特率=fosc/12 方式2的波特率=(2SMOD/64)fosc 方式1的波特率=(2SMOD/32)(T1溢出率) 方式3的波特率=(2SMOD/32)(T1溢出率) (其中,T1溢出率=fosc/{12[256-(TH1)]}) 5、 軟件程序的實現(xiàn) 下面是基于C語言的編程的發(fā)射端程序。 #include #include #define uint unsigned int #define uchar unsign

23、ed char uchar i; uchar code table[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};//段顯示編碼 uchar code scan_con[4]={0xef,0xdf,0xbf,0x7f};//位選,掃描四位數(shù)碼管 sbit CS = P3^5; sbit CLK = P3^3; sbit DI = P3^4; sbit DO = P3^4; uchar posi = 0;//定義switch函數(shù)變量 uchar dis[4];//顯示在數(shù)碼管上的四位數(shù)字 uchar du1=0,

24、du2=0;//輸入單片機(jī)的數(shù)字電壓值 float dvm1 = 0,dvm2 = 0;//數(shù)碼管顯示的數(shù)值 void init();//串口聲明 void send_data();//串口發(fā)送函數(shù)聲明 void delay(uchar t) //延時 { uchar i; for(i = 0;i

25、-------------------------- uchar Get_Value_ADC0832(uchar CH) { uchar i,dat1=0,dat2=0; // 起始控制位 CLK=0; _nop_(); DI=1; _nop_(); CS=0; _nop_(); CLK=1; _nop_(); // 第一個下降沿之前,設(shè)置DI=1/0; // 選擇單端/差分(SGL/DIF)模式中的單端輸入模式 if ( CH == 0x02 ) //選擇了通道0 { CLK = 0; DI = 1;

26、 //通道0的第一位,第2個時鐘脈沖下沉之前DI端是高電平 _nop_(); CLK= 1; _nop_(); CLK = 0; DI = 0; //通道0的第二位,第3個時鐘脈沖的下沉之前DI端是低電平 _nop_(); CLK = 1; _nop_(); } if(CH==0x03) //選擇了通道1 { CLK = 0; DI = 1; //通道1的第一位,第2個時鐘脈沖下沉之前DI端是高電平 _nop_(

27、); CLK = 1; _nop_(); CLK = 0; DI = 1; //通道1的第二位,第3個時鐘脈沖下沉之前DI端是高電平 _nop_(); CLK = 1; _nop_(); } CLK=0;DI=1;_nop_(); //第4-11個脈沖期間讀數(shù)據(jù)(MSB->LSB) for(i=0;i<8;i++) { CLK=1; _nop_(); CLK=0; _nop_(); dat1=dat1<<1|DO; } //第11-18個脈沖期間讀數(shù)

28、據(jù)(LSB->MSB) for(i=0;i<8;i++) { dat2=dat2|((uchar)(DO)<

29、兩位顯示第一路,低兩位顯示第二路 void display(float u1,float u2)/ { uchar ua1,ua2,ub1,ub2; ua1 = (uchar)u1; ua2 = (uchar)((u1-ua1)*10); ub1 = (uchar)u2; ub2 = (uchar)((u2-ub1)*10); dis[0] = ua1; dis[1] = ua2; dis[2] = ub1; dis[3] = ub2; //循環(huán)顯示四位數(shù)碼管 switch (posi) { case 0:

30、 P2=scan_con[0]; P0=table[dis[0]]&0xfe; delay(100); break; case 1: P2=scan_con[1]; P0=table[dis[1]]; delay(100); break; case 2: P2=scan_con[2]; P0=table[dis[2]]&0xfe; delay(100); break; case 3: P2=scan_con[3]; P0=table[dis[3]]; delay(100);

31、 break; } posi++; if(posi>3) posi = 0; } //主程序 void main() { P0 = 0xff; P1 = 0x00; P2 = 0x0f; //P3 = 0xff; init(); while(1) { du1 = Get_Value_ADC0832(0x02);//讀取第一路數(shù)字化的電壓 du2 = Get_Value_ADC0832(0x03);//讀取第二路數(shù)字化的電壓 dvm1 = change(du1); dvm2 = chan

32、ge(du2); send_data(); } } //******************無線發(fā)送模塊***************** //串口初始化 void init() { TMOD = 0x21;//定時器1工作方式2,做串口中斷,定時器0工作方式1 TH1 = 0xe8;//波特率設(shè)置為1200 TL1 = 0xe8; TR1 = 1;//啟動定時器1 TH0 = (65536-5000)/256; TL0 = (65536-5000)%256; ET0 = 1;//允許T0溢出中斷 TR0 = 1;//啟動定時器0

33、SCON = 0x40;//工作在方式1,TI,RI設(shè)置的值為0 EA = 1; //cpu開放所有中斷 } //串口發(fā)送函數(shù) void send_data() { uchar i; SBUF = 0xfe;//發(fā)送小數(shù)點(diǎn)作為順序接收的起始標(biāo)志 while(!TI); TI = 0; delay(10); for(i = 0;i<4;i++) { SBUF = dis[i]; while(!TI); TI = 0; delay(500); } } //定時器0的中斷 定時器中斷延時程序 這一段的作用

34、時隔一段時間抽樣一次 否側(cè)顯示的最后一位會不穩(wěn)定 void Timer0() interrupt 1 { TH0 = (65536-5000)/256; TL0 = (65536-5000)%256; display(dvm1,dvm2); } 下面是基于C語言的編程的接收端程序。 #include #define uchar unsigned char int i = 0,j; /***************************共陽LED段碼表*************************/ uchar code tabl

35、e[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09}; //數(shù)碼管位選編碼 //uchar code scan_con[] = {0x1f,0x2f,0x4f,0x8f}; //存儲收到的四位要顯示的十進(jìn)制數(shù) uchar code scan_con[] = {0xef,0xdf,0xbf,0x7f}; uchar dat[4]; uchar posi = 0; /********延時子程序*********/ void delay(unsigned char m) { int k; for(k=

36、0;k

37、[dat[0]]&0xfe; delay(100); break; case 1: P2=scan_con[1]; P0=table[dat[1]]; delay(100); break; case 2: P2=scan_con[2]; P0=table[dat[2]]&0xfe; delay(100); break; case 3: P2=scan_con[3]; P0=table[dat[3]]; delay(100); break; } posi++; if(

38、posi>3) posi = 0; } void main() { P0 = 0xff;//初始化 P2 = 0xff; init(); while(1) { while(!RI); RI = 0; if(SBUF == 0xfe) { for(i = 0;i<4;i++) { while(!RI); RI = 0; dat[i] = SBUF; } } } } //定時器0中斷服務(wù) void timer0() interrupt 1 { TH0 = (65

39、536-50000)/256; TL0 = (65536-50000)%256; display(); } 下圖為實驗結(jié)果圖。 圖5 實驗結(jié)果圖 6、總結(jié) 本次課設(shè)重點(diǎn)了解了315M無線傳輸模塊,具體的收發(fā)模塊的原理及性能,應(yīng)用于簡易電壓表的設(shè)計,實現(xiàn)了從一個單片機(jī)發(fā)送到另一個單片機(jī)上,主機(jī)發(fā)送數(shù)據(jù)信號,從機(jī)就能接受,要用三極管取反輸入單片機(jī),可以是中斷接收,也可以查詢接受,我們用的是中斷接收。編碼相對于解碼簡單,但我們也遇到了很大的困難。我們還了解了單片機(jī)串口通信的接口及原理,了解和掌握STC89C52RC單片機(jī)串口通信的原理與應(yīng)用流程,利用串口通信,實現(xiàn)全雙

40、工,使數(shù)據(jù)一位一位地按順序傳送的通信方式,其突出優(yōu)點(diǎn)是只需一根傳輸線,可大大降低硬件成本,適合遠(yuǎn)距離通信。單片機(jī)還可以與計算機(jī)相連,也可以單片機(jī)互聯(lián)或者多個單片機(jī)相互通信組網(wǎng)等,在實際的工程應(yīng)用中非常廣泛。 我們小組經(jīng)過近一周系統(tǒng)的硬件和軟件的設(shè)計、系統(tǒng)的調(diào)試。查閱了大量的關(guān)于單片機(jī)及其接口電路、串口通信、315M無線傳輸模塊以及控制方面的理論。經(jīng)過了一番特殊的體驗后,經(jīng)歷了失敗的痛苦,也嘗到了成功的喜悅。從理論到實踐,可以說得是苦多于甜,但是可以學(xué)到很多很多的的東西,同時不僅可以鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很

41、重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實際動手能力和獨(dú)立思考的能力。第一次靠用所學(xué)的專業(yè)知識來解決問題。檢查了自己的知識水平,使我對自己有一個全新的認(rèn)識。在設(shè)計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,比如說不懂一些元器件的使用方法,對開發(fā)板不太了解,對單片機(jī)匯編語言掌握得不好,通過這次課程設(shè)計之后,一定把以前所學(xué)過的知識重新溫故。 在這次課程設(shè)計中又讓我體會到了合作與團(tuán)結(jié)的力

42、量,當(dāng)遇到不會或是設(shè)計不出來的地方,我們就會在QQ群里討論或者是同學(xué)之間相互幫助。團(tuán)結(jié)就是力量,無論在現(xiàn)在的學(xué)習(xí)中還是在以后的工作中,團(tuán)結(jié)都是至關(guān)重要的,有了團(tuán)結(jié)會有更多的理念、更多的思維、更多的情感。而且我們學(xué)會了怎樣把所學(xué)的書本知識應(yīng)用于實踐中去,并學(xué)會了如何去思考整個控制系統(tǒng)的軟硬件設(shè)計。實踐過程中我們遇到了一些困難,但在解決問題的過程中,我們學(xué)會了團(tuán)隊合作精神和怎樣發(fā)現(xiàn)問題、分析問題,進(jìn)而解決問題。不僅鍛煉自己分析問題、處理問題的能力,還提高了自己的動手能力。此次課程設(shè)計不僅增強(qiáng)了我們學(xué)習(xí)專業(yè)課的興趣,而且給了我們勇氣和信心,更重要的是它為我們以后的學(xué)習(xí)指明了方向。 7、參考文獻(xiàn)

43、[1] 吳政江. 單片機(jī)控制簡易電壓表設(shè)計. 錦州師范學(xué)院學(xué)報,2009,2 [2] 宋文緒. 傳感器與檢測技術(shù)[M]. 北京高等教育出版社,2007,2 [3] 余錫存. 單片機(jī)原理及接口技術(shù)[M].西安電子科技大學(xué)出版社,2005,6 [4] 唐桃波, 陳玉林. 基于AT89C51的智能無線安防報警器 [J]. 電子設(shè)計應(yīng)用,2008,3 [5] 李全利. 單片機(jī)原理及接口技術(shù)[M].北京航空航天大學(xué)出版社,2009,2 [6] 薛均義, 張彥斌. MCS-51系列單片微型計算機(jī)及其應(yīng)用[M]. 西安交通大學(xué)出版社,2010,3 [7] 徐愛鈞. 單片機(jī)高級語言C51應(yīng)用程序設(shè)計[M]. 北京航空航天大學(xué)出版社,2004,9 [8] 康華光. 電子技術(shù)基礎(chǔ)(模擬部分)[M]. 北京: 高等教育出版社,2001,2 評 語 成 績 指導(dǎo)教師 (簽字) 年 月 日 22

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!