《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DSP和單片機通信的液晶顯示設計
基于DSP和單片機通信的液晶顯示設計
摘要: 本文中所采用的DSP 和單片機型號分別是T I 公司的TMS320F2812 和MCS51 系列。在系統中, DSP實現與單片機的串口異步通信, 單片機將用戶的原始設置數據傳輸到DSP, 而DSP 將采集到的實時數據信息返回給單片機, 單片機不斷刷新液晶的顯示。
Abstract:
Key words :

引言

  隨著計算機和信息技術的飛速發展, 數字信號處理技術得到了迅速的發展。數字控制使得電力電子變換控制更為靈活, 在CPU 計算速度允許的情況下, 可實現模擬控制難以做到的復雜控制算法, 設計者可以根據自己的系統需求, 方便地更改控制器參數, 即便是在控制對象改變的情況下, 也無需對控制器硬件做修改, 只要改變某些軟件參數即可, 從而大大增強了系統的兼容性。隨著DSP 的應用逐漸普及, 用DSP 取代模擬電路中的專用PWM 集成電路, 已廣泛應用于UPS 和逆變器控制中。
 

  作為智能化設備, 液晶屏和鍵盤等人機交互裝置是數字化電源系統所必不可少的。而DSP 的工作頻率較高, 讀寫周期很短, 主要用于處理實時性要求苛刻、算法復雜的關鍵性任務, 例如對功率開關管的控制, 數據采集、分析、處理等, 而液晶顯示和鍵盤掃描的任務可由普通的51 系列單片機來完成, 而DSP 和51 單片機間的數據交流可采用異步通信方式, 即系統采用雙CPU結構。

  1   系統的結構原理

  本文中所采用的DSP 和單片機型號分別是T I 公司的TMS320F2812MCS51 系列。在系統中, DSP實現與單片機的串口異步通信, 單片機將用戶的原始設置數據傳輸到DSP, 而DSP 將采集到的實時數據信息返回給單片機, 單片機不斷刷新液晶的顯示。系統的基本結構如圖1 所示。

 

圖1  系統基本結構框圖

  1. 1   串口介紹

  本文中DSP 是基于串行通信接口模塊SCI 實現通信的。SCI 支持CPU 與其他使用標準格式的異步外設之間的數據通信。SCI 僅需要2 根數據線進行數據傳輸, 雖然傳輸速度不快, 但已經能滿足一般的通信要求,而且外圍接口電路非常簡單。傳輸的數據長度在一定范圍內也是可變的。

  MCS51 系列單片機內部具有一個全雙工串行口,該串行口有4 種工作方式, 可以通過軟件進行設置, 由片內定時/ 計數器產生波特率。串行口的接收和發送數據均可以觸發中斷, 并含有接收、發送緩沖器SBUF, 二者共用一個地址。

  1. 2   單片機與DSP 的通信接口電路

  SCI 接口分為RXD 和TXD 兩個管腳, 傳統的2 個設備異步通信采用RS 232 或RS 485 的形式, 須另配置對應的RS 232 和RS 485 驅動芯片。而本文所提及的采用雙CPU 結構的數字化電源設備, DSP 和51 單片機位于同一設備內, 距離較短, 可省去RS 232 和RS 485驅動芯片, 采用2 個CPU 的RXD 和TXD 直接交叉連接即可。但需注意的是, 由于DSP 的工作電壓為3. 3 V, 而MCS51 單片機的工作電壓為5 V, 因此二者之間的通信電路需要進行電平轉換, 如圖2 所示。

 

圖2   電平轉換電路

  在該電路中, 單片機的TXD 端電壓高于DSP 的RXD 端, 故僅需要使用分壓電路, 計算出合適的阻值即可滿足要求, 而從DSP 向單片機傳送數據時, 需要提升電平, 因而采用了光耦電路, 將電平提升到單片機的工作電平。這樣就能以簡單的電路實現電平的轉換。需要注意的是, 所采用的光耦速率要高于數據傳輸速率,這樣才能保證數據準確高效的傳輸, 以免出現數據丟失。1. 3   單片機與DSP通信的軟件實現

  在異步通信中必須先規定3 件事: 一是字符格式,即傳輸的每一幀數據的格式; 二是通信雙方要設置為相同的波特率, 且該波特率能適應雙方的時鐘頻率; 三是通信雙方要有約定的通信協議, 也就是雙方要互相確認后才能傳輸數據。

  在本設計中, DSP 和單片機采用的數據幀格式是1 位起始位, 8 位數據位和1 位停止位。由于數據包采用校驗和的方式進行校驗, 因而在數據幀格式中沒有設置奇偶校驗位。因而MCS51 單片機應設置工作在串口方式1 狀態下, 此時串行口為8 位異步通信接口。為了保證數據傳輸具有較高的速率, 同時又有比較低的傳輸誤碼率, 因而選擇波特率為9600 b/ s。通過相應的波特率設置計算公式計算出DSP 和單片機的初始化時寄存器的初值, 即可完成設置。這樣就保證了通信雙方幀格式的統一和波特率的統一, 從而使數據通信正確、可靠[。

  DSP 的串口初始化設置程序如下:

  EALLOW;

  GpioMuxReg s. GPGMUX. bit. SCIRXDB_GPIOG5 = 1;/ / 設置SCI??RX 引腳外設功能

  GpioMuxReg s. GPGMUX. bit. SCIT XDB_GPIOG4 = 1;/ / 設置SCI??TX 引腳外設功能EDIS;

  ScibRegs. SCICCR. all = 0x07; / / 1 位停止位, 無奇偶校驗,8 位字符長度, 使用空閑線模式協議

  ScibRegs. SCICTL1. all = 0x 03;/ / 使能發送和接收緩沖

  ScibRegs. SCICTL2. all= 0x 02;/ / 使能RXRDY 中斷, 禁止T XRDY 中斷

  ScibRegs. SCIPRI. all = 0x0000;/ / 禁止接收錯誤中斷和休眠模式

  ScibRegs. SCIH BAUD= 0x01;/ / LSPCLK = 37. 5 MH z, 波特率設為9 600 b/ s

  ScibRegs. SCILBAUD = 0xE1; ??

  ScibRegs. SCICTL1. all = 0x 0023;/ / 重新使能SCI

  51 單片機串口初始化程序如下:

  TMOD= 0x 21;/ / 定時器1 工作在方式2, 用于產生0 串口的波特率

  SCON= 0x 50;/ / 串行口0 工作在方式1, 允許接收, 清標志位

  TH 0= 0xfd; / / 晶振12 MH z, 設置波特率為9 600 b/ s

  TH 1= 0xfd; PS= 1; / / 串口中斷優先

  PCON| = 0x 00; / / 波特率不加倍

  TR1= 1;

  在本設計中, 采用自己規定的通信協議, 首先DSP發送出握手信號, C51 收到握手信號后, 進入中斷子程序, 判斷握手信號是否正確, 若正確才握手成功, 開始接收數據包, 接收完成后對數據進行和校驗, 正確后刷新液晶的顯示數據存儲區; 若錯誤則放棄本次數據, 并將接收數據存儲區清零, 等待下一次通信。其程序流程圖如圖3 所示。

 

圖3   DSP 和單片機的通信程序流程圖

 

DSP 向單片機的定時發送程序如下:

  ScibRegs. SCITXBUF = Sci_VarRx [ i] ;/ / 將數據包寫入發送緩沖區

  i+ + ; / / 依次發送數據包

  if( i= = 12) i= 0; / / 重新計數

  IER | = M_INT1; / / 清除中斷標志位

  EINT;

  PieCtr lReg s. PIEACK. all = PIEACK_GROUP1;

  51 單片機串口中斷服務程序如下:

  Rx0_Buffer[ Rx0_Ptr] = SBUF; / / 讀取數據到接收數組

  RI= 0; / / 清除接收標志位

  Rx0_Ptr+ + ; / / 計數加1

  Rx_flag= 1;

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 男女一进一出免费视频 | 羞羞色在线观看 | 欧美超强性xxxxx | 亚洲爽 | 成年影院在线看网站免费 | 成年男女免费大片在线观看 | 欧美成一级 | 99国产在线播放 | 精品乱人伦一区二区 | 青春草视频在线免费观看 | 模特精品视频一区 | 免费嗨片 | 国产成人v视频在线观看 | 欧美有码视频 | www.日本色| 亚洲一区日韩 | 午夜激情在线观看 | 欧美视频二区 | 国产三级a三级三级 | 精品国产麻豆免费网站 | 成年人在线免费看视频 | 欧美一级高清片 | 成年人视频免费 | 国内偷自视频区视频综合 | 久久综合五月 | 日日干夜夜爱 | 福利120秒 | www.九色视频| 日韩免费视频网站 | 欧美性视频18~19 | 中文字幕天天躁日日躁狠狠躁免费 | 成人看片黄a在线看 | 偷自拍视频区综合视频区 | 国产在线91精品天天更新 | 奇米成人网 | 91丝袜足控免费网站xx | 456亚洲人成影视在线观看 | 日韩欧美爱爱 | 欧美成人手机在线视频 | 免费成人高清 | 网站一级片 |