資料介紹
1 McBSP(Multichannel Buffered Serial Port)串口利用DMA中的多幀(Multi-Frame)方式通信的中斷處理
在實際通信應用中,一個突發之后,程序必須為下一個突發作準備。因此一般采用串口的DMA多幀方式但在串口以DMA方式傳輸數據時卻有一些問題要討論。首先DMA的傳輸同步事件應設McBSP的傳輸事件即XEVT,這樣一字節傳輸后會自動準備另一字節(McBSP的READY上升沿觸發DMA傳輸)。中斷發生時意味著一個塊已傳完,這時DMA的使能自動關閉,McBSP的READY將一直保持高狀態。但是在下一次突發傳輸直接使能DMA時卻啟動不了傳輸(相信會有許多我遇到此類問題)。這是因為無法產生McBSP觸發啟動所需的READY上升沿。解決辦法是在中斷程序中先關閉McBSP的發送,使READY=0,隨后在程序中發送使能DMA,再打開McBSP的發送即可。如先打開McBSP的發送后打開DMA,也是不會工作的。因為McBSP的READY已經由0變到1了,無法再產生READY上升沿。
2 關閉DMA與關閉McBSP的區別
在通信領域,為了充分利用DSP的片上外設資源,常常利用DMA把從串口來的數據或要發的數據放入緩沖區,再處理。對DMA而言,只要其在數據緩沖區的指針指向了中斷應發生的位置,就產生中斷。但此時最后一個數據只是進入了McBSP而并未真正發出去,所以在傳送結束的中斷程序中只能關閉DMA不能關閉McBSP。因為此時McBSP的發寄存器DXR中還有一個字沒有發出。
3 McBSP串口配置的關鍵時序
主要是寄存器SPCR2的配置:在保持RRST、XRST、FRST各位為0的前提下,配置好其它串口控制寄存器。等待至少2個CLKR/T時鐘以確保DSP內部的同步。
(1)可以向DXR裝載數據或使能DMA。
(2)使能GRST(GRST=1)(如果需要DSP內部產生采樣時鐘)。
(3)使能RRST或XRST,注意此時要保證SPCR中僅有此一位發生改變。
(4)使能FRST(FRST=1)(如果需要DSP內部產生幀同步)。
(5)等待2個R/T CLK時鐘周期后,收或發端便會有效。
4 匯編語言程序中的變量
匯編語言程序中的公用變量應在文件中定義,如.def carry。匯編語言程序中使用的局部變量不需定義,可直接聲明,例如trn_num .word 00h。如果在兩個asm文件中有兩個都沒有定義的同名變量,則編譯程序會認為分他們不是同一變量。在匯編程序的開頭應有.mmregs宏語句。它一方面表示對默認定義的確認(ah,bh,trn等),另一方面可以對所用寄存器重新定義。如:
mmregs
DMPREC .set 54h ;定義DMA優先和使能寄存器地址在54h
DMSA .set 55h
DMSDN .set 57h
DXR10 .set 23h ;定義串口1的發送寄存器地睛在23h
- 機器視覺在金屬表面缺陷檢查中的應用詳細說明 9次下載
- Xilinx的時序設計與約束資料詳細說明 34次下載
- 時序分析的優化策略詳細說明 17次下載
- 時序分析的優化策略詳細說明 19次下載
- Python的知識點總結詳細說明 14次下載
- 如何使用Python繪制PDF文件教程詳細說明 12次下載
- 使用單片機串口通信控制步進電機的源代碼詳細說明 28次下載
- 西門子PLC培訓資料之數據塊中的數據存儲詳細說明 15次下載
- 西門子PLC的數字指令教程詳細說明 32次下載
- 西門子PLC位指令的教程詳細說明 24次下載
- 排線中電源和地的位置安排詳細說明
- 如何同時使用51單片機的定時器0和串口使用問題詳細說明
- 進行單片機串口通信的方式詳細說明
- Matlab圖形繪制經典案例詳細說明 7次下載
- Nano 型串口屏的技術參數詳細說明 24次下載
- LPC5500_SDK例程:串口DMA發送+中斷接收 879次閱讀
- STM32串口DMA接收與發送 1w次閱讀
- PIC系列單片機程序設計基礎知識詳細說明 4305次閱讀
- C語言和C++的特點與用法詳細說明 4217次閱讀
- FPGA的入門基礎知識詳細說明 9214次閱讀
- 通過DMA模式控制串口傳輸的方法 1w次閱讀
- 使用AT89S51單片機制作紅外遙控器的資料和源代碼詳細說明 5866次閱讀
- 常用穩壓二極管的參數表格詳細說明 1.3w次閱讀
- 電氣電纜的最全常用手冊詳細說明 8634次閱讀
- 串口數據轉CAN幀格式詳解 1.4w次閱讀
- 基于STM32的串口DMA發送 2.1w次閱讀
- 接收卡升級的詳細說明概述圖文詳解 2.3w次閱讀
- 基于AD9854產生MSK調制信號詳細說明 4727次閱讀
- Crossbar的多通道DMA控制器設計 4887次閱讀
- STM32串口DMA問題詳解 8289次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1497次下載 | 免費
- 2TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 3單片機典型實例介紹
- 18.19 MB | 99次下載 | 1 積分
- 4S7-200PLC編程實例詳細資料
- 1.17 MB | 28次下載 | 1 積分
- 5筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 6開關電源原理及各功能電路詳解
- 0.38 MB | 14次下載 | 免費
- 79天練會電子電路識圖
- 5.91 MB | 6次下載 | 免費
- 8100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 6接口電路圖大全
- 未知 | 30321次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21540次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537794次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多