2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  電控學院</b></p><p><b>  課程設計(論文)</b></p><p>  課程名稱: LabVIEW程序設計教程 </p><p>  題 目: 基于LabVIEW上下位機的LED顯示設計 </p><p>  

2、院 (系): 電氣與控制工程學院 </p><p>  專業(yè)班級: XXXXXXXXXXXXXXX </p><p>  姓 名: XXXX </p><p>  學 號: XXXXXX

3、 </p><p>  指導教師: XXX XX </p><p>  2014年 1 月 9 日</p><p><b>  目錄</b></p><p><b>  1 設計任務1</b></p><p

4、>  2 系統(tǒng)方案選擇1</p><p><b>  2.1整體設計1</b></p><p>  2.2 通信協(xié)議1</p><p>  2.2.1 數據信號線2</p><p>  2.2.2 控制信號線2</p><p>  2.3 下位機總體設計3</p>

5、<p>  2.4 上位機總體設計3</p><p><b>  3 下位機設計3</b></p><p><b>  3.1 硬件3</b></p><p>  3.1.1 時鐘晶振模塊3</p><p>  3.1.2 復位模塊3</p><p>  

6、3.1.3 LED顯示模塊4</p><p>  3.1.4 串口通信模塊4</p><p>  3.2 軟件設計5</p><p>  3.2.1 主程序設計5</p><p>  3.2.2 串口通信設計5</p><p><b>  4 上位機設計6</b></p>

7、<p><b>  5 系統(tǒng)調試7</b></p><p><b>  6 結論7</b></p><p><b>  7 總結8</b></p><p><b>  8 參考文獻9</b></p><p><b>  9 附

8、錄10</b></p><p>  基于labview的上位機與下位機之間的通信</p><p><b>  1 設計任務</b></p><p>  此次設計所要完成的功能是使用AT89C52作為下位機,通過RS-232C串口與上位機相連,將編程所實現(xiàn)的跑馬燈和端口設置數據顯示在上位機上。上位機是通過LabVIEW軟件繪制實現(xiàn),

9、上位機界面包括設置區(qū)、命令控件區(qū)、顯示控件區(qū)、數據接收區(qū)。</p><p><b>  2 系統(tǒng)方案選擇</b></p><p><b>  2.1整體設計</b></p><p>  下位機使用AT89C52進行流水燈設計,上位機使用LabVIEW進行界面設計,顯示出端口設置數據和8個LED燈的顯示,通過RS232進行串

10、口通訊傳送數據到上位機中顯示。</p><p>  圖2.1 設計框架</p><p><b>  2.2 通信協(xié)議</b></p><p>  RS-232C標準定義了數據通信設備(DCE)與數據終端設備(DTE)之間進行串行數據傳輸的接口信息,規(guī)定了接口的電氣信號和接插件的機械要求。RS-232C對信號開關電平規(guī)定如下:</p>

11、;<p>  驅動器的輸出電平為:邏輯“0”:+5~+15V;邏輯“1”:-5~-15V。</p><p>  接收器的輸入檢測電平為:邏輯“0”:>+3V;邏輯“1”:<-3V。</p><p>  RS-232C采用負邏輯,噪聲容限可達2V。RS-232是個人計算機上的通訊接口之一,由電子工業(yè)協(xié)會(Electronic Industries Association,EIA

12、) 所制定的異步傳輸標準接口。通常 RS-232 接口以9個引腳 (DB-9) 或是25個引腳 (DB-25) 的型態(tài)出現(xiàn),一般個人計算機上會有兩組 RS232 接口,分別稱為 COM1 和 COM2。RS-232C接口定義了20條可以同外界連接的信號線,并對它們的功能作了具體規(guī)定。這些信號線并不是在所有的通訊過程中都要用到可以根據通信聯(lián)絡的繁雜程度選用其中的某些信號線。</p><p>  RS-232-C標準

13、規(guī)定的數據傳輸速率為50、75、100、150、300、600、1200、2400、4800、9600、19200波特。</p><p>  RS-232C用作計算機與遠程通信設備的數據傳輸接口,如圖2.2所示,圖中信號線分為數據信號線和控制信號線,分別說明如下:</p><p>  圖2.2 帶RS-232C接口的通信設備連接</p><p>  2.2.1 數據

14、信號線</p><p>  “發(fā)送數據(TXD)”和“接收數據(RXD)”是一對數據傳輸信號。TXD用于發(fā)送數據,當無效數據發(fā)送時,TXD線上的信號為“1”。RXD用于接收數據,當無效數據發(fā)送或者接收數據間隔期間,RXD線上的信號也為“1”。</p><p>  2.2.2 控制信號線</p><p>  “請求發(fā)送(RTS)”與“為發(fā)送清零(CTS)”信號線用于雙

15、工通信方式。半雙工方式下發(fā)送和接收只能分時進行。當DTE有數據待發(fā)送時,先發(fā)“請求發(fā)送”,信號通知調制解調器,此時若調制解調器處于接收方式,則必須等到接收完畢轉為發(fā)送方式時,才向DTE回送“為發(fā)送清零”信號。在全雙工方式下,發(fā)送和接收能同時進行,不使用這兩條控制信號線。</p><p>  “DCE就緒”(DSR)和“DTE就緒”(DTR)信號線分別表示DCE和DTE是否處于可供使用的狀態(tài)?!氨Wo地”信號線一般連

16、接設備的屏蔽地。</p><p>  2.3 下位機總體設計</p><p>  利用AT89C52芯片的P1口,以及軟件編程實現(xiàn)跑馬燈。</p><p>  2.4 上位機總體設計</p><p>  對于labview處理主要包括前后面板的設計,包括三部分:參數設置部分、命令控制部分及顯示部分。其中參數設置主要包括通訊口、波特率、數據位、

17、校驗位、停止位及接收周期的設置;命令控制主要包括啟停數據接收、顯示數據清空及退出運行等;顯示界面主要包括接收數據顯示、接收數據個數顯示、當前下位機流水燈狀態(tài)實時顯示等。</p><p><b>  3 下位機設計</b></p><p><b>  3.1 硬件</b></p><p>  在硬件設計中主要為下位機的AT8

18、9C52所設計的流水燈,其中包括基本的時鐘晶振模塊,復位電路模塊,8位LED燈模塊和最重要的串口通訊模塊。</p><p>  3.1.1 時鐘晶振模塊</p><p>  外接晶振給單片機提供一個時鐘信號(一個非常穩(wěn)定的頻率信號),使單片機各內部組件同步工作,并且在和外部設備通信時是也能達到同步。</p><p>  圖3.1 時鐘晶振模塊</p>

19、<p>  3.1.2 復位模塊</p><p>  手動開關復位使中央處理器CPU以及其他功能部件都恢復到一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。除此之外,當單片機程序運行出現(xiàn)錯誤或系統(tǒng)處于死循環(huán)狀態(tài)時,需要對單片機進行復位以及重新啟動。</p><p><b>  圖3.2 復位電路</b></p><p>  3.1.3 LE

20、D顯示模塊</p><p>  8位LED發(fā)光二極管實現(xiàn)流水燈操作。根據軟件設計可得到1位LED循環(huán)左移,花樣燈等。</p><p>  圖3.3 8位LED顯示</p><p>  3.1.4 串口通信模塊</p><p>  MAX232是一種把電腦的串行口RS232信號電平(-10,+10v)轉換為單片機所用到的TTL信號點平(0,+5

21、)的芯片。串口通訊模塊使上位機與下位機得以通信,進行數據傳送。</p><p><b>  圖3.4 串口通信</b></p><p><b>  3.2 軟件設計</b></p><p>  3.2.1 主程序設計</p><p>  下位機程序設計中主要執(zhí)行功能為流水燈顯示和串口發(fā)送,主程序首先

22、對系統(tǒng)的定時器和串口進行初始化,然后通過程序SBUF接收P1口的信號,每接收到一個P1口信號就對上位機進行一次數據傳送,通過上位機的設計界面顯示數據。整個系統(tǒng)的主流程圖如下圖所示。</p><p>  圖3.5 下位機程序流程圖</p><p>  3.2.2 串口通信設計</p><p>  系統(tǒng)的串口部分十分重要,主要是初始化部分對相應的寄存器進行設置,發(fā)送數據

23、的時候只需要將數據寫入SBUF里面即可,由發(fā)送中斷標志位TI檢測其數據發(fā)送結束。而接收則有中斷方式和等待方式兩種,本系統(tǒng)因為單片機所要完成的簡單,所以采用等待的方式。串口的初始化程序流程圖如圖所示。</p><p>  圖3.6 串口初始化程序流程圖</p><p><b>  4 上位機設計</b></p><p>  端口設置區(qū)中包括五個

24、部分,分別為:通訊口設置,波特率設置,數據位設置,校驗位和停止位。通訊口中編輯項有COM1、COM2。波特率編輯項有300、600、1200、1800、2400、4800、7200、9600、14400、19200、28800、38400、56000、76800、115200。數據位中編輯項有6、7、8。校驗位中編輯項有無、偶校驗、奇校驗。停止位中編輯項有1、1.5、2。其前、后面板顯示如圖所示。</p><p>

25、;  圖4.1 前面板設計</p><p>  圖4.2 程序框圖設計</p><p><b>  5 系統(tǒng)調試</b></p><p>  運行顯示的過程是首先實現(xiàn)燈的左移右移,在實現(xiàn)等從中間點亮逐步向兩邊擴散再向中間聚攏,接著實現(xiàn)日期20140107與學號1006070108。</p><p><b>  

26、其結果顯示如下:</b></p><p>  圖5.1 運行結果圖</p><p><b>  6 結論</b></p><p>  本次課程設計題目是基于LabVIEW的跑馬燈設計,主要進行的任務是用編程軟件Keil編寫跑馬燈程序、燒寫程序、使用LabVIEW設計上位機、下位機發(fā)送數據在上位機顯示。此次設計使得我們對課本《LabV

27、IEW程序設計教程》上的理論知識進一步加深,將之應用于實踐,充分發(fā)掘學生們的潛力。</p><p>  首先是熟悉Keil編程軟件的使用,使用單片機C語言編寫跑馬燈的程序,其中出現(xiàn)了一些問題,比如想要實現(xiàn)一個LED的左移點亮,只將其左移一位,即LED<<=1,并未考慮到左移后數據的最右端會自動賦0,這樣燈的點亮順序將不會達到所想要實現(xiàn)的效果,應該使用該語句LED=(LED<<1)|0x01

28、,將最右端賦值1。另外,編譯鏈接后出現(xiàn)兩個警告,其原因未選擇Add Files to Group ‘Source Group1’,導致錯誤。</p><p>  使用LabVIEW軟件繪制前面板和程序框圖是一個很復雜的過程,首先是繪制前面板上的所要求的各顯示和設置區(qū),繪制完成后,在后面板上會主動生成一些相應的控件,然后補充所要用到的控件,并用導線將相應控件相連接。最終完成上位機的設計。最初繪制完成后運行時,數據顯

29、示區(qū)有數據,但LED燈顯示區(qū)中無一LED亮,此問題的原因是為將接收到的數據經控件“字符串至字節(jié)數組轉換”轉換成字節(jié)數組,造成錯誤,鼠標放在數據接收區(qū)控件上,點右鍵選字符串選板中的“字符串至字節(jié)數組轉換”控件,然后鼠標放在“字符串至字節(jié)數組轉換”控件上,點擊鼠標右鍵選擇“索引數組”控件,用導線將對應的控件相連,再次運行,燈亮,數據顯示區(qū)數據與下位機燈亮的順序一致,但在前面板中的燈亮與燈滅正好與實際相反,為改正錯誤,在程序框圖中的LED顯示

30、控件區(qū)中的各LED前加一個非門,從而將錯誤改正。</p><p>  此外,對于自身來說,此次設計中仍有些不足,如程序框圖中有些控件仍不是太明白其含義和功能,希望自己以后會多加練習,爭取更進一步地掌握LabVIEW軟件的使用。</p><p><b>  7 總結</b></p><p>  通過各方面努力,本次實習基本完成。在LabVIEW設

31、計的學習下,設計出了上下位機的LED通訊燈動態(tài)顯示方案。</p><p>  通過這次系統(tǒng)的項目設計提高了我運用所學的專業(yè)基礎知識來解決面臨實際問題的能力,同時也提高了我查閱各種文獻資料、使用LabVIEW軟件的水平。通過這次設計,我發(fā)現(xiàn)了自己的很多不足以及許多知識的漏洞。在設計過程中遇到了不少困難,慶幸的是我得到了許多人的幫助。首先我要感謝我的指導老師昝老師設計過程中,他給的指導,豐富的設計經驗和嚴謹的制學態(tài)度

32、,是我解決問題的關鍵所在。同時,還要感謝幫助我的所有同學。我想,本次實習對我們每個人都是影響很大的,它使我們基本掌握了LabVIEW通訊的設計方案,基本掌握了LabVIEW等軟件的使用,并且對LabVIEW有了更深入的了解。在解決問題的過程中,我們不僅學到了很多專業(yè)的知識,還學會了分析問題,解決問題的方法。相信這些對我們以后的學習與工作都有很大的幫助。</p><p>  通過對自己在大學時間里所學的知識的回顧,

33、并充分發(fā)揮對所學知識的理解和對課程設計的思考及書面表達能力,最終完成了這項實習。這次設計為我們今后進一步深化學習,積累了一定的寶貴經驗。撰寫論文的過程也是專業(yè)知識的學習過程,運用已有的專業(yè)基礎知識,對其進行設計,分析和解決一個理論問題或實際問題,把知識轉化為能力的實際訓練,并且為以后的課程設計論文做好準備及鋪墊。本次課題培養(yǎng)了我們運用所學知識解決實際問題的能力,確實也有所提高。</p><p>  通過這次實習發(fā)

34、現(xiàn),只有理論水平提高,才能夠將課本知識與實踐相整合,理論知識服務于教學實踐,以增強自己的動手能力。通過這次設計,我們知道了理論和實際的距離,也知道了理論和實際想結合的重要性。</p><p>  我們的學習不但要立足于書本,以解決理論和實際教學中的實際問題為目的,還要以實踐相結合,理論問題即實踐課題,解決問題即課程研究,學生自己就是一個專家,通過自己的手來解決問題比用腦子解決問題更加深刻。學習就應該采取理論與實踐

35、結合的方式,理論的問題,也就是實踐性的課題。這種做法既有助于完成理論知識的鞏固,又有助于帶動實踐,解決實際問題,加強我們的動手能力和解決問題的能力。</p><p><b>  8 參考文獻</b></p><p>  [1] 虛擬儀器實驗指導書,彭倩編.西安科技大學出版社.</p><p>  [2] 楊樂平,李海濤,趙勇等.LabVIEW高

36、級程序設計.北京:清華大學出版社,2003.</p><p>  [3] 王磊,陶梅.精通LabVIEW8.0.北京:電子工業(yè)出版社,2007.</p><p><b>  9 附錄</b></p><p><b>  圖1 下位機原理圖</b></p><p><b>  程序清單<

37、;/b></p><p>  #include<reg51.h> </p><p>  #define uchar unsigned char </p><p>  #define uint unsigned int </p><p>  uchar code LED1[]={0xfe,0xfd,0xfb,0xf7,0xe

38、f,0xdf,0xbf,0x7f};//定義流水燈點亮順序</p><p>  uchar code LED2[]={0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7e}; </p><p>  uchar code LED3[]={0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3e,0x7c}; </p><p>

39、  uchar code LED4[]={0xe7,0xc3,0x81,0x00,0x00,0x81,0xc7,0xe7}; </p><p>  uchar code LED5[]={0xfb,0xfe,0xfd,0xef,0xfe,0xfd,0xfe,0x7f}; </p><p>  uchar code LED6[]={0xfe,0xff,0xff,0xc0,0xff,0x80,0

40、xff,0xfe,0xff,0x00}; </p><p>  void delay(uint x) //延遲函數 </p><p>  { uchar i;</p><p>  while(x--)</p><p>  for(i=0;i<120;i++);</p><p>&l

41、t;b>  } </b></p><p>  void Port(char c) //定義單片機向串口輸出數據子函數 </p><p>  { SBUF=c;</p><p>  while(TI==0);</p><p><b>  TI=0;</b></p>

42、<p><b>  }</b></p><p>  void main(void)</p><p>  { SCON=0x50; //設置串口工作于方式1</p><p>  TMOD=0x20; //設置定時器工作于方式2</p><p&g

43、t;  PCON=0x00; //設置SMOD</p><p>  TH1=0xfd; //設置波特率</p><p>  TL1=0xfd; </p><p>  TI=0; //允許向串口發(fā)送數據</p><p> 

44、 TR1=1; //啟動TI</p><p><b>  while(1)</b></p><p>  { uchar i;</p><p>  for(i=0;i<8;i++) //正向點亮流水燈并將流水燈狀態(tài)發(fā)送至串口</p><p>

45、;  { P1=LED1[i];</p><p>  Port(LED1[i]);</p><p>  delay(300);</p><p><b>  }</b></p><p>  for(i=7;i>0;i--) //反向點亮流水燈并將流水燈狀態(tài)發(fā)送至口</p>&

46、lt;p>  { P1=LED1[i];</p><p>  Port(LED1[i]);</p><p>  delay(300);</p><p><b>  }</b></p><p>  for(i=0;i<8;i++) </p><p>  { P1=LED

47、2[i];</p><p>  Port(LED2[i]);</p><p>  delay(300);</p><p><b>  }</b></p><p>  for(i=7;i>0;i--) </p><p>  { P1=LED2[i];</p>

48、<p>  Port(LED2[i]);</p><p>  delay(300);</p><p><b>  }</b></p><p>  for(i=0;i<8;i++) </p><p>  { P1=LED3[i];</p><p>  Port(LED

49、3[i]);</p><p>  delay(300);</p><p><b>  }</b></p><p>  for(i=0;i<8;i++) </p><p>  { P1=LED4[i];</p><p>  Port(LED4[i]);</p>

50、<p>  delay(500);</p><p><b>  }</b></p><p>  for(i=0;i<8;i++) //顯示日期20140107</p><p>  { P1=LED5[i];</p><p>  Port(LED5[i]);</p>&

51、lt;p>  delay(1000);</p><p><b>  }</b></p><p>  for(i=0;i<10;i++) //顯示學號1006070108</p><p>  { P1=LED6[i];</p><p>  Port(LED6[i]);</p&g

溫馨提示

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

評論

0/150

提交評論