新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機的異步串行通信功能和基本使用方法

單片機的異步串行通信功能和基本使用方法

作者: 時間:2012-10-09 來源:網(wǎng)絡(luò) 收藏

于只有兩路輸出,因此實際上只要控制PD6、PD7就可以了。點擊“開關(guān)1”按鈕可以改變PD6的輸出狀態(tài),點擊“開關(guān)2”按鈕可以改變PD7的輸出狀態(tài)。點擊“全部開啟”按鈕PD6、PD7均輸出高電平1;點擊“全部關(guān)閉”按鈕PD6、PD7均輸出低電平0。PD6、PD7的輸出電平?jīng)Q定繼電器K1、K2的工作狀態(tài)。

3.控制實驗

  先將程序目標(biāo)文件寫入,再接好串口通信線,通信線的接線方法見上圖。打開實驗板的電源,運行上位機程序文件夾中的電源開關(guān)控制器.exe可執(zhí)行文件,如果出現(xiàn)缺少控件的提示,只先執(zhí)行一下install.bat即可。點擊上位機軟件上的命令按鈕,我們發(fā)現(xiàn)實驗板上的發(fā)光二極管VD5、VD6發(fā)光狀態(tài)會隨之發(fā)生相應(yīng)的變化,與之對應(yīng)的繼電器的工作狀態(tài)也會發(fā)生相應(yīng)的變化。

  如果我們把繼電器的觸點串聯(lián)在電源插座上,再將家用電器的插頭插在這個電源插座上就可以用計算機對家用電器的開關(guān)進行控制了。

  實驗二串口通信

  1.實驗電路

  實驗板上與本實驗相關(guān)的電路見上圖,這個實驗主要用來演示計算機與收發(fā)字符串的實驗。計算機通過軟件“串口調(diào)試助手”將字符串發(fā)送給,單片機將收到的字符串在LCD顯示屏上顯示,并自動將字符串回發(fā)給計算機。

  2.程序設(shè)計

  計算機上的程序使用“串口調(diào)試助手”,用來通過串口發(fā)送和接收字符串。這個實驗中串口傳遞的是字符的ASC碼,一個字符的ASC碼正好是8位二進制數(shù),所以一幀信號即可傳遞一個字符。 單片機程序中的主程序如下:

  void main(void)
  {
  uchar i;
  DelayMs(500);//啟動等
  待,等LCD進入工作狀態(tài)
  Init();//初始化
  while(1)
  {
  Display(O,O,RS_Data)
  ;//顯示接收數(shù)據(jù)
  for(i=O;i6;i++)
  {
  while(!(UCSRA0x80))
 ?。唬却邮胀瓿?DIV> ?。? RS_Data[i]=UDR;//接
  收數(shù)據(jù)
  }
  for(i=O;i6;i++)
  {
  while(!(UCSRA0x20));
  //等待移位寄存器空
  UDR=RS_Data[i];//發(fā)
  送數(shù)據(jù)
  }
  }
  }
程序中的數(shù)組Rs_Data[]用來存儲接收和發(fā)送的字符串。RS_Data[]的初始值為RS_Data[]=“:Hello!”,接收和發(fā)送均使用循環(huán)語句,因為接收和發(fā)送的字符數(shù)為6個,所以循環(huán)次數(shù)為6次。
  3.通信實驗
  用串口通信線連接好計算機和實驗板后,接通實驗板的電源,這時實驗板LCD顯示屏顯示的是:“Hello!”。在計算機上打開串口調(diào)試助手軟件,對串口按波特率9600、8位數(shù)據(jù)位、1位停止位、無校驗設(shè)置。在發(fā)送區(qū)隨便填寫6個字符,比如abc123,點擊“手動發(fā)送”按鈕,我們會發(fā)現(xiàn)LCD顯示屏顯示:abc123(見題圖),同時串口調(diào)試助手接收區(qū)也收到單片機回發(fā)的字符串,如下圖所示。

數(shù)字通信相關(guān)文章:數(shù)字通信原理


通信相關(guān)文章:通信原理



上一頁 1 2 下一頁

關(guān)鍵詞: ATmega8 異步串行通信 單片機

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉