基于MSp430的微功耗數(shù)據(jù)采集系統(tǒng)的開(kāi)發(fā)應(yīng)用
AD7655每次對(duì)兩路信號(hào)進(jìn)行采樣,當(dāng)A0為低電平時(shí)對(duì)INAl和INBl兩個(gè)通道的信號(hào)采樣,當(dāng)為高電平時(shí)對(duì)INA2和INB2兩個(gè)通道的信號(hào)采樣。CNVST為AD7655的轉(zhuǎn)換開(kāi)始信號(hào),這個(gè)信號(hào)由主控單片機(jī)按照設(shè)計(jì)的采樣率定周期地給出。在轉(zhuǎn)換期問(wèn)BUSY信號(hào)一直為高電平,轉(zhuǎn)換結(jié)束后BUSY信號(hào)變?yōu)榈碗娖?,利用這個(gè)下降沿可以作為讀取AD采樣數(shù)據(jù)的中斷信號(hào),單片機(jī)在收到這個(gè)中斷信號(hào)后給出片選CS、讀信號(hào)READ和通道選擇信號(hào)A/B讀取AD數(shù)據(jù)。
3 軟件設(shè)計(jì)
CF卡的讀寫(xiě)是以扇區(qū)(sector)為單位的,每次讀寫(xiě)一個(gè)或連續(xù)的多個(gè)扇區(qū),每個(gè)扇區(qū)大小為512字節(jié)。對(duì)CF卡的讀寫(xiě)訪問(wèn)操作都是通過(guò)訪問(wèn)其內(nèi)部寄存器來(lái)實(shí)現(xiàn)的,對(duì)不同的寄存器進(jìn)行訪問(wèn)是靠上節(jié)所提到的A0~A2、CSO、CSl這五根數(shù)據(jù)線來(lái)譯碼的,在本文的設(shè)計(jì)中,CF卡配置成TRUE IDE工作模式,具體的寄存器映射如表1所示。
寄存器0用于CF卡的數(shù)據(jù)讀寫(xiě)。CF為了節(jié)省I/O資源,有些I/0端口是復(fù)用的,寄存器1在讀操作時(shí)為錯(cuò)誤寄存器,寫(xiě)操作時(shí)為特征寄存器。寄存器2的作用是設(shè)定要讀寫(xiě)扇區(qū)的數(shù)目。寄存器3~6是用來(lái)尋址要讀寫(xiě)的具體扇區(qū)位置,一般的IDE硬盤(pán)有CHS和LBA兩種尋址模式,CF卡工作在TRUE IDE模式下也有這兩種尋址模式,CHS(Cylinder/Head/Sector)是扇區(qū)對(duì)應(yīng)的具體柱面、磁頭、和扇區(qū)的地址;邏輯塊尋址方式LBA(Logical Block Addressing)在邏輯上是連續(xù)的,比較方便,所以軟件實(shí)現(xiàn)上采用這種方式對(duì)CF卡的扇區(qū)進(jìn)行訪問(wèn)。寄存器7在讀操作時(shí)是狀態(tài)寄存器,主控器可以得到CF卡的有關(guān)狀態(tài)信息;寫(xiě)操作時(shí)是命令寄存器,通過(guò)設(shè)置命令,主控制器操作CF卡完成特定的功能。
評(píng)論