資料介紹
1 McBSP(Multichannel Buffered Serial Port)串口利用DMA中的多幀(Multi-Frame)方式通信的中斷處理
在實際通信應用中,一個突發(fā)之后,程序必須為下一個突發(fā)作準備。因此一般采用串口的DMA多幀方式但在串口以DMA方式傳輸數(shù)據(jù)時卻有一些問題要討論。首先DMA的傳輸同步事件應設McBSP的傳輸事件即XEVT,這樣一字節(jié)傳輸后會自動準備另一字節(jié)(McBSP的READY上升沿觸發(fā)DMA傳輸)。中斷發(fā)生時意味著一個塊已傳完,這時DMA的使能自動關閉,McBSP的READY將一直保持高狀態(tài)。但是在下一次突發(fā)傳輸直接使能DMA時卻啟動不了傳輸(相信會有許多我遇到此類問題)。這是因為無法產(chǎn)生McBSP觸發(fā)啟動所需的READY上升沿。解決辦法是在中斷程序中先關閉McBSP的發(fā)送,使READY=0,隨后在程序中發(fā)送使能DMA,再打開McBSP的發(fā)送即可。如先打開McBSP的發(fā)送后打開DMA,也是不會工作的。因為McBSP的READY已經(jīng)由0變到1了,無法再產(chǎn)生READY上升沿。
2 關閉DMA與關閉McBSP的區(qū)別
在通信領域,為了充分利用DSP的片上外設資源,常常利用DMA把從串口來的數(shù)據(jù)或要發(fā)的數(shù)據(jù)放入緩沖區(qū),再處理。對DMA而言,只要其在數(shù)據(jù)緩沖區(qū)的指針指向了中斷應發(fā)生的位置,就產(chǎn)生中斷。但此時最后一個數(shù)據(jù)只是進入了McBSP而并未真正發(fā)出去,所以在傳送結束的中斷程序中只能關閉DMA不能關閉McBSP。因為此時McBSP的發(fā)寄存器DXR中還有一個字沒有發(fā)出。
3 McBSP串口配置的關鍵時序
主要是寄存器SPCR2的配置:在保持RRST、XRST、FRST各位為0的前提下,配置好其它串口控制寄存器。等待至少2個CLKR/T時鐘以確保DSP內(nèi)部的同步。
?。?)可以向DXR裝載數(shù)據(jù)或使能DMA。
(2)使能GRST(GRST=1)(如果需要DSP內(nèi)部產(chǎn)生采樣時鐘)。
?。?)使能RRST或XRST,注意此時要保證SPCR中僅有此一位發(fā)生改變。
?。?)使能FRST(FRST=1)(如果需要DSP內(nèi)部產(chǎn)生幀同步)。
?。?)等待2個R/T CLK時鐘周期后,收或發(fā)端便會有效。
4 匯編語言程序中的變量
匯編語言程序中的公用變量應在文件中定義,如.def carry。匯編語言程序中使用的局部變量不需定義,可直接聲明,例如trn_num .word 00h。如果在兩個asm文件中有兩個都沒有定義的同名變量,則編譯程序會認為分他們不是同一變量。在匯編程序的開頭應有.mmregs宏語句。它一方面表示對默認定義的確認(ah,bh,trn等),另一方面可以對所用寄存器重新定義。如:
mmregs
DMPREC .set 54h ;定義DMA優(yōu)先和使能寄存器地址在54h
DMSA .set 55h
DMSDN .set 57h
DXR10 .set 23h ;定義串口1的發(fā)送寄存器地睛在23h
- 機器視覺在金屬表面缺陷檢查中的應用詳細說明 9次下載
- Xilinx的時序設計與約束資料詳細說明 34次下載
- 時序分析的優(yōu)化策略詳細說明 17次下載
- 時序分析的優(yōu)化策略詳細說明 19次下載
- Python的知識點總結詳細說明 14次下載
- 如何使用Python繪制PDF文件教程詳細說明 12次下載
- 使用單片機串口通信控制步進電機的源代碼詳細說明 28次下載
- 西門子PLC培訓資料之數(shù)據(jù)塊中的數(shù)據(jù)存儲詳細說明 15次下載
- 西門子PLC的數(shù)字指令教程詳細說明 33次下載
- 西門子PLC位指令的教程詳細說明 25次下載
- 排線中電源和地的位置安排詳細說明
- 如何同時使用51單片機的定時器0和串口使用問題詳細說明
- 進行單片機串口通信的方式詳細說明
- Matlab圖形繪制經(jīng)典案例詳細說明 7次下載
- Nano 型串口屏的技術參數(shù)詳細說明 24次下載
- LPC5500_SDK例程:串口DMA發(fā)送+中斷接收 1167次閱讀
- STM32串口DMA接收與發(fā)送 1w次閱讀
- PIC系列單片機程序設計基礎知識詳細說明 4640次閱讀
- C語言和C++的特點與用法詳細說明 4444次閱讀
- FPGA的入門基礎知識詳細說明 9599次閱讀
- 使用AT89S51單片機制作紅外遙控器的資料和源代碼詳細說明 6263次閱讀
- 常用穩(wěn)壓二極管的參數(shù)表格詳細說明 1.5w次閱讀
- 電氣電纜的最全常用手冊詳細說明 8967次閱讀
- 串口數(shù)據(jù)轉CAN幀格式詳解 1.5w次閱讀
- 基于STM32的串口DMA發(fā)送 2.2w次閱讀
- 一文知道串口通信的幀同步問題 7199次閱讀
- 接收卡升級的詳細說明概述圖文詳解 2.4w次閱讀
- 基于AD9854產(chǎn)生MSK調制信號詳細說明 4929次閱讀
- Crossbar的多通道DMA控制器設計 5069次閱讀
- STM32串口DMA問題詳解 8472次閱讀
下載排行
本周
- 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 專業(yè)版下載 (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次下載 | 免費
評論