




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 pc機(jī)與c51單片機(jī)的串行通信研究 摘要:隨著pc機(jī)技術(shù)和單片機(jī)技術(shù)的日益成熟,單片機(jī)與pc機(jī)通信技術(shù)的應(yīng)用也越來越廣泛, 對通信技術(shù)的研究也越來越多,特別是串行通信。該文以rs-232為接口線路,89c51單片機(jī)學(xué)習(xí)板為硬件環(huán)境,visual basic作為軟件開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具及串行通信控件mscomm,設(shè)計(jì)了一個(gè)pc機(jī)與c51單片機(jī)串行通信系統(tǒng)。系統(tǒng)主要可以完成pc機(jī)和單片機(jī)之間手動的數(shù)據(jù)發(fā)送,自動的數(shù)據(jù)發(fā)送,數(shù)據(jù)傳輸過程中的奇偶校驗(yàn),單片機(jī)的按鍵觸發(fā),數(shù)碼管顯示等功能。關(guān)鍵詞:rs-232;串行通信;msc
2、omm;c51單片機(jī):tp391 :a :1009-3044(2014)36-8810-02隨著技術(shù)的發(fā)展和數(shù)據(jù)流量的不斷增長,傳統(tǒng)采用并行接口方式中存在著干擾和時(shí)鐘傳送兩大關(guān)鍵問題,這成為影響并行i/o接口的數(shù)據(jù)傳輸效率。在這個(gè)背景下,串行通信方式作為一種比較靈活的方式被廣泛的在工業(yè)控制中使用,逐漸取代并行通信。單片機(jī)和微機(jī)技術(shù)的快速發(fā)展成為多機(jī)網(wǎng)絡(luò)測控系統(tǒng)中的一個(gè)新的發(fā)展方向。1 串行通信原理介紹在串行通信傳輸?shù)倪^程中,通信的雙方都要按照一定的通信協(xié)議來進(jìn)行數(shù)據(jù)的傳輸。這里所指的通信協(xié)議包括數(shù)據(jù)格式、同步方式、傳送速度、傳送步驟、檢糾錯(cuò)方式以及控制字符定義等問題做出統(tǒng)一規(guī)定,在通信的雙方都
3、必須要遵守這些規(guī)范與規(guī)定。該文中只討論起止式異步通信數(shù)據(jù)格式。起始位:位于字符幀開頭,只占一位,為邏輯0低電平,用于向接收設(shè)備表示發(fā)送端開始發(fā)送一幀信息。數(shù)據(jù)位:緊跟起始位之后,用戶根據(jù)情況可取5位、6位、7位或8位,低位在前高位在后。奇偶校驗(yàn)位:位于數(shù)據(jù)位之后,僅占一位,用來表征串行通信中采用奇校驗(yàn)還是偶校驗(yàn),由用戶決定。停止位:位于字符幀最后,為邏輯1高電平。通??扇?位、1.5位或2位,用于向接收端表示一幀字符信息已經(jīng)發(fā)送完,也為發(fā)送下一幀做準(zhǔn)備。在串行通信中,兩相鄰字符幀之間可以沒有空閑位,也可以有若干空閑位,這由用戶來決定4。2 系統(tǒng)硬件設(shè)計(jì)2.1 系統(tǒng)組成結(jié)構(gòu)在這個(gè)系統(tǒng)中,主要是以
4、實(shí)現(xiàn)一臺pc機(jī)與一臺單片機(jī)串行通信,正常傳輸數(shù)據(jù)為目地的。這樣就形成了上位機(jī)和下位機(jī)的概念,上位機(jī)是一臺高性能的pc機(jī),下位機(jī)則是由單片機(jī)組成3。2.2 系統(tǒng)部件功能介紹2.2.1 mcs-51單片機(jī)在這個(gè)系統(tǒng)中,主要實(shí)現(xiàn)的是一臺pc機(jī)和一臺單片機(jī)串行通信。上位機(jī)是一臺高性能的pc機(jī),軟件的程序設(shè)計(jì)則在上面完成。下位機(jī)則是由一單片機(jī)組成的,在此不僅要求單片機(jī)有足夠的空間存儲自身的執(zhí)行程序,而且可以方便用戶擴(kuò)展功能,有好的交互性。因此,我選用了市場上比較流行的性價(jià)比比較高的89c51單片機(jī)2作為下位機(jī)。2.2.2 .電平轉(zhuǎn)換單片機(jī)的串口有很大一部分是使用ttl電平標(biāo)準(zhǔn)的,它的邏輯1電平是5v,邏
5、輯0電平是0v,而電腦串行口所使用的是rs232c的電平標(biāo)準(zhǔn),它的邏輯1電平是-3v-15v,邏輯0電平+3v+15v。兩者的電平范圍相差很遠(yuǎn),所以連接時(shí)需要用到電平轉(zhuǎn)換電路。這樣電路有好多種,一般來說商業(yè)化的成品會用到max232,ds275等專用的rs232、ttl電平轉(zhuǎn)換集成電路,但是對于普通的電子愛好者,采用這樣的器件一來購買不方便,二來還會使制作電路板的成本提高。所以對于小型器件操作,一般采用的方法是使用小功率三極管搭建電平轉(zhuǎn)換電路。本系統(tǒng)所使用的學(xué)習(xí)板就是采用了兩個(gè)npn管(9014) 來完成電平轉(zhuǎn)換的。兩個(gè)npn管各有自己的功能,一個(gè)用來數(shù)據(jù)接收,一個(gè)用來數(shù)據(jù)發(fā)送。2.2.3 按
6、鍵觸發(fā)組成鍵盤的按鍵有觸點(diǎn)式和非觸點(diǎn)式兩種,單片機(jī)中應(yīng)用的一般是由機(jī)械觸點(diǎn)構(gòu)成的。由于按鍵是機(jī)械觸點(diǎn),當(dāng)機(jī)械觸點(diǎn)斷開、閉合時(shí),會有抖動。這種抖動對于人來說是感覺不到的,但對計(jì)算機(jī)來說,則是完全可以感應(yīng)到的,因?yàn)橛?jì)算機(jī)處理的速度是在微秒級,而機(jī)械抖動的時(shí)間至少是毫秒級,對計(jì)算機(jī)而言,這已是一個(gè)“漫長”的時(shí)間了。為使cpu能正確地讀出按鍵的狀態(tài),對每一次按鍵只作一次響應(yīng),就必須考慮如何去除抖動,常用的去抖動的方法有兩種:硬件方法和軟件方法。單片機(jī)中常用軟件法,因此,對于硬件方法我們不介紹。軟件法其實(shí)很簡單:在檢測到有鍵按下時(shí),執(zhí)行一個(gè)10ms左右的延時(shí)程序后,在確認(rèn)該鍵的電平是否保持閉合狀態(tài)電平,
7、若仍保持為閉合狀態(tài)的電平,則確認(rèn)為該鍵處于閉合狀態(tài),從而去除了抖動影響。本次系統(tǒng)采用的鍵盤就是非編碼機(jī)械觸點(diǎn)式鍵盤,由于按鍵有16個(gè),使用的為最常見的行列式接法。2.2.4 數(shù)碼管顯示在單片機(jī)應(yīng)用系統(tǒng)中,顯示器顯示常用兩種方法:靜態(tài)顯示和動態(tài)掃描顯示。所謂靜態(tài)顯示,就是每一個(gè)顯示器都要占用單獨(dú)的具有鎖存功能的i/o接口用于筆劃段字形代碼。這樣單片機(jī)只要把要顯示的字形代碼發(fā)送到接口電路,就不用管它了,直到要顯示新的數(shù)據(jù)時(shí),再發(fā)送新的字形碼,因此,使用這種方法單片機(jī)中cpu的開銷小。但是靜態(tài)顯示也有很大的缺點(diǎn),在位數(shù)較多的時(shí),字符更新速度慢,電路比較復(fù)雜,成本比較高。因而在實(shí)際應(yīng)用中常常采用動態(tài)顯
8、示方式。本系統(tǒng)所使用的單片機(jī)學(xué)習(xí)板上共有8個(gè)數(shù)碼管,且段碼為多少是由單片機(jī)p0口決定的,選取哪個(gè)數(shù)碼管則是由p2口決定的,對于我們編寫程序,知道上面這兩個(gè)內(nèi)容已經(jīng)足夠了。2.3 mcs51單片機(jī)設(shè)計(jì)流程2.3.1 按鍵觸發(fā)程序設(shè)計(jì)按鍵觸發(fā)程序設(shè)計(jì)由三部分組成:按鍵掃描程序設(shè)計(jì),延時(shí)程序設(shè)計(jì),按鍵處理程序設(shè)計(jì)。按鍵掃描程序設(shè)計(jì)和延時(shí)程序設(shè)計(jì)互相配合就可以實(shí)現(xiàn)軟件防抖的功能。本次系統(tǒng)中起作用的按鍵只有一個(gè),所以掃描程序不會很復(fù)雜,也不需要采用逐點(diǎn),逐行乃至全局掃描,其原理是比較現(xiàn)在按鍵和原來按鍵的狀態(tài)是否發(fā)生變化(通過異或運(yùn)算即可),如果發(fā)生變化則去執(zhí)行處理程序,如果沒有變化則順序執(zhí)行。圖1為按鍵
9、處理程序流程圖。endprint2.3.2 數(shù)碼管顯示程序本系統(tǒng)所采用的單片機(jī)學(xué)習(xí)板上的數(shù)碼管是共陽集的。所要顯示的數(shù)據(jù)都是傳給p0口,然后通過位選擇(由p2口控制)來打開你所選取的數(shù)碼管,這樣你所想要顯示的數(shù)據(jù)就在數(shù)碼管上顯示出來了。具體的步驟如下:(1)、通過查表把所要顯示的數(shù)據(jù)傳給p0口。(2)、置位選信號為低電位,使數(shù)碼管導(dǎo)通。(3)、調(diào)用延時(shí)程序,使數(shù)碼管連續(xù)顯示。(4)、關(guān)閉數(shù)碼管。本系統(tǒng)所點(diǎn)亮的數(shù)碼管是p2.6和p2.7所控制的,如果需要變換點(diǎn)亮的數(shù)碼管,只需要使相對應(yīng)的位選信號為低位即可。圖2 數(shù)碼管顯示程序3 系統(tǒng)軟件設(shè)計(jì)(pc機(jī)程序結(jié)構(gòu)圖)軟件設(shè)計(jì)是在visual basi
10、c 6.0環(huán)境下完成的,主要使用了mscomm控件的相關(guān)屬性。對于pc機(jī)程序設(shè)計(jì),為了使設(shè)計(jì)的系統(tǒng)可以完成正常的串行通信,并且具有一定的輔助功能,比如數(shù)據(jù)的串口的選擇,數(shù)據(jù)的自動傳輸,時(shí)間間隔的選擇,接收閥值的設(shè)定等等。圖 3為pc機(jī)程序設(shè)計(jì)的結(jié)構(gòu)圖。4 結(jié)論在過去中,串行通信系統(tǒng)已經(jīng)被應(yīng)用到工業(yè)控制的很多領(lǐng)域,比如一些寬帶網(wǎng)絡(luò)公司利用光纖接口轉(zhuǎn)換器與串行口連接;數(shù)字影像測量儀都備有rs-232接口,與計(jì)算機(jī)連接后,采用專門測量軟件對測繪圖形進(jìn)行處理和輸出。該文運(yùn)用visual basic 6.0和串行口rs-232在windows操作系統(tǒng)基礎(chǔ)上開發(fā)出基于pc機(jī)與單片機(jī)的串行通信系統(tǒng),并取得良
11、好實(shí)驗(yàn)效果。參考文獻(xiàn):1 李志全.智能儀表設(shè)計(jì)原理及應(yīng)用m.國防工業(yè)出版社,1998.2 何立民.mcs-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)m.北京.航空航天大學(xué)出版社,1990.3 張毅剛,彭喜元,姜守達(dá),等.新編mcs-51系列單片機(jī)應(yīng)用設(shè)計(jì)m.哈爾濱工業(yè)大學(xué)出版社,2003.4 kaihuang,faye briggs a.computer architecture and parallel processingm. mcgraw-hmcom-pany.1994. 2.3.2 數(shù)碼管顯示程序本系統(tǒng)所采用的單片機(jī)學(xué)習(xí)板上的數(shù)碼管是共陽集的。所要顯示的數(shù)據(jù)都是傳給p0口,然后通過位選擇(由p2口控制
12、)來打開你所選取的數(shù)碼管,這樣你所想要顯示的數(shù)據(jù)就在數(shù)碼管上顯示出來了。具體的步驟如下:(1)、通過查表把所要顯示的數(shù)據(jù)傳給p0口。(2)、置位選信號為低電位,使數(shù)碼管導(dǎo)通。(3)、調(diào)用延時(shí)程序,使數(shù)碼管連續(xù)顯示。(4)、關(guān)閉數(shù)碼管。本系統(tǒng)所點(diǎn)亮的數(shù)碼管是p2.6和p2.7所控制的,如果需要變換點(diǎn)亮的數(shù)碼管,只需要使相對應(yīng)的位選信號為低位即可。圖2 數(shù)碼管顯示程序3 系統(tǒng)軟件設(shè)計(jì)(pc機(jī)程序結(jié)構(gòu)圖)軟件設(shè)計(jì)是在visual basic 6.0環(huán)境下完成的,主要使用了mscomm控件的相關(guān)屬性。對于pc機(jī)程序設(shè)計(jì),為了使設(shè)計(jì)的系統(tǒng)可以完成正常的串行通信,并且具有一定的輔助功能,比如數(shù)據(jù)的串口的選
13、擇,數(shù)據(jù)的自動傳輸,時(shí)間間隔的選擇,接收閥值的設(shè)定等等。圖 3為pc機(jī)程序設(shè)計(jì)的結(jié)構(gòu)圖。4 結(jié)論在過去中,串行通信系統(tǒng)已經(jīng)被應(yīng)用到工業(yè)控制的很多領(lǐng)域,比如一些寬帶網(wǎng)絡(luò)公司利用光纖接口轉(zhuǎn)換器與串行口連接;數(shù)字影像測量儀都備有rs-232接口,與計(jì)算機(jī)連接后,采用專門測量軟件對測繪圖形進(jìn)行處理和輸出。該文運(yùn)用visual basic 6.0和串行口rs-232在windows操作系統(tǒng)基礎(chǔ)上開發(fā)出基于pc機(jī)與單片機(jī)的串行通信系統(tǒng),并取得良好實(shí)驗(yàn)效果。參考文獻(xiàn):1 李志全.智能儀表設(shè)計(jì)原理及應(yīng)用m.國防工業(yè)出版社,1998.2 何立民.mcs-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)m.北京.航空航天大學(xué)出版社,1
14、990.3 張毅剛,彭喜元,姜守達(dá),等.新編mcs-51系列單片機(jī)應(yīng)用設(shè)計(jì)m.哈爾濱工業(yè)大學(xué)出版社,2003.4 kaihuang,faye briggs a.computer architecture and parallel processingm. mcgraw-hmcom-pany.1994. 2.3.2 數(shù)碼管顯示程序本系統(tǒng)所采用的單片機(jī)學(xué)習(xí)板上的數(shù)碼管是共陽集的。所要顯示的數(shù)據(jù)都是傳給p0口,然后通過位選擇(由p2口控制)來打開你所選取的數(shù)碼管,這樣你所想要顯示的數(shù)據(jù)就在數(shù)碼管上顯示出來了。具體的步驟如下:(1)、通過查表把所要顯示的數(shù)據(jù)傳給p0口。(2)、置位選信號為低電位,使數(shù)
15、碼管導(dǎo)通。(3)、調(diào)用延時(shí)程序,使數(shù)碼管連續(xù)顯示。(4)、關(guān)閉數(shù)碼管。本系統(tǒng)所點(diǎn)亮的數(shù)碼管是p2.6和p2.7所控制的,如果需要變換點(diǎn)亮的數(shù)碼管,只需要使相對應(yīng)的位選信號為低位即可。圖2 數(shù)碼管顯示程序3 系統(tǒng)軟件設(shè)計(jì)(pc機(jī)程序結(jié)構(gòu)圖)軟件設(shè)計(jì)是在visual basic 6.0環(huán)境下完成的,主要使用了mscomm控件的相關(guān)屬性。對于pc機(jī)程序設(shè)計(jì),為了使設(shè)計(jì)的系統(tǒng)可以完成正常的串行通信,并且具有一定的輔助功能,比如數(shù)據(jù)的串口的選擇,數(shù)據(jù)的自動傳輸,時(shí)間間隔的選擇,接收閥值的設(shè)定等等。圖 3為pc機(jī)程序設(shè)計(jì)的結(jié)構(gòu)圖。4 結(jié)論在過去中,串行通信系統(tǒng)已經(jīng)被應(yīng)用到工業(yè)控制的很多領(lǐng)域,比如一些寬帶網(wǎng)絡(luò)公司利用光纖接口轉(zhuǎn)換器與串行口連接;數(shù)字影像測量儀都備有rs-232接口,與計(jì)算機(jī)連接后,采用專門測量軟件對測繪圖形進(jìn)行處理和輸出。該文運(yùn)用visual basic 6.0和串行口rs-232在windows操作系統(tǒng)基礎(chǔ)上開發(fā)出基于pc機(jī)與單片機(jī)的串行通信系統(tǒng),并取得良好實(shí)
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 金融市場波動性預(yù)測研究-全面剖析
- 熱力行業(yè)智能化轉(zhuǎn)型-全面剖析
- 從傳統(tǒng)醫(yī)療到數(shù)字醫(yī)療區(qū)塊鏈技術(shù)的推動作用
- 區(qū)塊鏈技術(shù)助力打造安全便捷的數(shù)字身份認(rèn)證系統(tǒng)
- 醫(yī)學(xué)統(tǒng)計(jì)學(xué)在醫(yī)療質(zhì)量評估中的應(yīng)用
- 企業(yè)創(chuàng)新的源泉基因技術(shù)在商業(yè)領(lǐng)域的應(yīng)用與挑戰(zhàn)
- 區(qū)塊鏈技術(shù)助力商業(yè)創(chuàng)新與變革
- 區(qū)塊鏈技術(shù)在文化創(chuàng)意產(chǎn)業(yè)的知識產(chǎn)權(quán)保護(hù)
- 2025人教版一年級數(shù)學(xué)上冊互動學(xué)習(xí)計(jì)劃
- 區(qū)塊鏈在數(shù)字版權(quán)保護(hù)中的應(yīng)用與挑戰(zhàn)分析
- 鋰電池、新能源汽車火災(zāi)事故滅火救援處置
- 電商倉儲外包合同協(xié)議
- 近三年小升初試卷及答案
- 上海寶山區(qū)公開招聘社區(qū)工作者考試高頻題庫帶答案2025年
- 美容學(xué)徒聘請協(xié)議書
- 江蘇連云港市金灌投資發(fā)展集團(tuán)有限公司、灌南城市發(fā)展集團(tuán)有限公司等招聘筆試題庫2025
- 四川宜賓環(huán)球集團(tuán)有限公司招聘筆試真題2024
- 精神科護(hù)理目標(biāo)管理
- 渠道分銷合同協(xié)議樣本
- 2024年共青團(tuán)入團(tuán)積極分子團(tuán)校結(jié)業(yè)考試試題庫及答案
- DL∕T 1901-2018 水電站大壩運(yùn)行安全應(yīng)急預(yù)案編制導(dǎo)則
評論
0/150
提交評論