基于DSP與CPLD的多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)
3 軟件設(shè)計(jì)
TMS320LF2407A是基于C2000平臺(tái)的,提供兩種編程語言:C/C+十語言或匯編語言。其中,C語言編寫的程序可讀性、可移植性強(qiáng),且大大縮短了開發(fā)周期,但執(zhí)行效率低,程序出錯(cuò)時(shí)不易診斷。匯編語言程序效率高,但編寫比較繁瑣。通常做法是程序核心部分(即經(jīng)常調(diào)用部分)采用匯編語言編寫,以提高整個(gè)系統(tǒng)的執(zhí)行效率,對(duì)實(shí)時(shí)性要求不高的部分采用C語言編寫以降低程序的復(fù)雜度,提高程序的可讀性和可修改性。本文采用C語言和匯編語言混合編寫的多文件結(jié)構(gòu),主要包括主程序、讀取A/D轉(zhuǎn)換結(jié)果的中斷程序的設(shè)計(jì)。
軟件流程如圖4所示。主要分成三部分:SPI配置部分,模擬開關(guān)控制部分,A/D轉(zhuǎn)換控制和轉(zhuǎn)換結(jié)果的讀取。
3.1 SPI配置部分
對(duì)于LF2407A,串行SPI外設(shè)接口有9個(gè)寄存器,用于控制其操作。在本設(shè)計(jì)中將LF2407A的SPI接口設(shè)定在主模式下,在該模式下,采用主控制器發(fā)送偽數(shù)據(jù),從控制器發(fā)送數(shù)據(jù)。主控制器可在任何時(shí)刻啟動(dòng)數(shù)據(jù)傳送,因?yàn)樗刂浦鳶PICLK信號(hào)。但軟件決定了主控制器如何檢測(cè)從控制器何時(shí)準(zhǔn)備發(fā)送數(shù)據(jù)。SPI接口模塊的初始化程序如下:
3.2 模擬多路開關(guān)選通部分
由于多路模擬開關(guān)映射到DSP的I/O空間中的0X8000-0XFFFF之間,所以在DSP程序中,對(duì)0X8000-0XFFFF之間進(jìn)行一個(gè)讀操作,由DSP的GPIO選擇的通道就被選通,信號(hào)由CD4067輸出到A/D轉(zhuǎn)換器MAXl94。
讀地址產(chǎn)生的低電平信號(hào)CS的保持時(shí)間由訪問I/O空間的等待時(shí)間決定的,通過設(shè)置等待狀態(tài)寄存器來保證獲得有效的延時(shí)時(shí)間。
3.3 MAX194轉(zhuǎn)換控制部分
由于A/D映射DSP的I/O空間的0x0000~0x7fff之間,類似于模擬多路開關(guān),也需要對(duì)該空間進(jìn)行一個(gè)讀操作。
4 結(jié)語
看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
多路數(shù)據(jù)采集系統(tǒng)在嵌入式測(cè)控系統(tǒng)中具有很強(qiáng)的實(shí)用價(jià)值。本文設(shè)計(jì)了一個(gè)基于TMS320LF2407A與EPM570T100C5N的MAX194的多通道采集系統(tǒng),詳細(xì)描述了MAX194,CPLD與DSP之間的硬件與軟件設(shè)計(jì),該系統(tǒng)在筆者參與的嵌入式測(cè)量控制系統(tǒng)中得到了成功的應(yīng)用。
關(guān)鍵詞:
系統(tǒng)
設(shè)計(jì)
數(shù)據(jù)采集
通道
DSP
CPLD
基于
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論