A/D轉換器CS5550與單片機的接口程序設計
摘要:分析雙通道低成本A/D轉換器CS5550的接口特點(diǎn),以ATmegal6單片機為例設計CS5550與單片機的接口電路。經(jīng)過(guò)對ATmegal6單片機SPI口的分析,詳細討論使用硬件SPI接口和軟件模擬SPI兩種方式的程序設計,并給出相應的軟件流程圖。最后對CS5550的兩種接口方式進(jìn)行比較。
關(guān)鍵同:模數轉換器;CS5550;單片機;接口程序
現代智能化儀器儀表中A/D轉換器和單片機是重要組成部分。串行MD轉換器的串口信號線(xiàn)數目較少,在數據采樣速率較低的系統中有利于降低硬件間連線(xiàn)的復雜度,節省單片機的接口資源。在CS5550的性能特點(diǎn)及其片上串行接口的基礎上,給出CS5550與單片機的接口程序設計方案。
1 CS5550的主要性能及接口特點(diǎn)
CS5550是Cirrus Logic公司推出的一款雙通道低成本△-∑型A/D轉換器,內部集成有2個(gè)△-∑A/D轉換器、2個(gè)放大器、1個(gè)串行接口以及1個(gè)溫漂為25 ppm/℃的2.5 V參考電壓源。CS5550在兩個(gè)通道上都具有24位寄存器,其中通道1具有13位有效位,通道2具有10位有效位口。
CS5550片上集成有1個(gè)雙向數字串行接口,包括(片選信號)、SDI(數據輸入)、SDO(數據輸出)和SCLK(串行時(shí)鐘)4條控制線(xiàn)。該串口與標準SPI接口協(xié)議兼容,可與帶有SPI接口的單片機傳輸數據。另外,CS5550還有一個(gè)中斷輸出引腳
,可通過(guò)配置其屏蔽寄存器(Mask Register)來(lái)設定中斷,并可通過(guò)軟件修改配置寄存器中的“IMODE IINV”位來(lái)決定中斷的產(chǎn)生方式(高/低電平或上升/下降沿有效)。
2 單片機的SPI接口與CS5550連接
SPI接口是由Motorola公司最先推出的,目前很多型號的單片機都集成有SPI接口,如ATMEL公司的ATmega8、PIC公司的PICl6F877、Analog Devices公司的ADuC812等。用戶(hù)可使用單片機所提供的SPI接口與CS5550直接連接。這里以ATmegal6單片機為例討論使用單片機的SPI接口實(shí)現讀寫(xiě)CS5550的操作。
2.1 ATmegal6的SPI接口及其與CS5550的連接
ATmegal6單片機內部的SPI接口可完成全雙工、3線(xiàn)同步數據傳輸。它支持主/從機操作模式,作為主機時(shí)具有倍速模式(CK/2);具有寫(xiě)碰撞標志檢測、傳輸結束中斷標志、7種可編程的比特率,并可設置LSB或MSB首先發(fā)送。在實(shí)際使用該SPI接口時(shí),需要將MOSI(主機輸出從機輸入)、MISO(主機輸入從機輸出)、SCK(串行時(shí)鐘)、(從機選擇)引腳依次與CS5550的SDI、SDO、SCLK、引腳相連,如圖1所示。
評論