A/D轉換器CS5550與單片機的接口程序設計
從圖3及其數(shù)據(jù)手冊中的相關說明可知。CS5550讀取SDI線上的命令發(fā)生在SCK的上升沿,而其會在SCK下降沿發(fā)生后20 ns(典型值)之內將下一位數(shù)據(jù)發(fā)送到SDO線上。根據(jù)以上分析,可以得到圖4所示的SPI接口函數(shù)編寫流程。本文引用地址:http://www.ex-cimer.com/article/173394.htm
若仍以實現(xiàn)CS5550單次轉換、單片機讀取其數(shù)據(jù)寄存器為例,則CS5550的采集函數(shù)編寫流程圖與第3部分中的圖2相同,只需要利用這個軟件模擬的SPI接口函數(shù)替換前面流程中對SPDR寄存器的讀寫即可。
4 硬件設計與軟件模擬SPI接口的比較
從上述討論看出,硬件SPI接口的工作獨立于CPU內核,這使得SPI數(shù)據(jù)的收發(fā)與CPU內核運算并行執(zhí)行,提高單片機的工作效率。由于數(shù)據(jù)的收發(fā)完全由硬件完成,軟件的編寫不涉及具體收發(fā)細節(jié),程序簡單、速度快。而采用軟件模擬實現(xiàn)SPI接口的方法則具有端口定義靈活、使用方便的特點。可以在不增加硬件成本的情況下,給不含SPI接口的單片機增加SPI通信功能。但軟件模擬SPI需要占用CPU處理時間,故一般只在通信數(shù)據(jù)量不太大的情況下使用。
5 結束語
模數(shù)轉換器和單片機在智能化儀表的應用廣泛,本文討論的CS5550與單片機的兩種接口方式具有普遍意義,對其他類似的設計提供參考。目前,以上兩種方法均已被應用到某基于CS5550的工業(yè)測溫儀表中,取得較好效果。
評論