ARM與TLV5637的模擬SPI接口設計
圖4為TLV5637的時序圖。如圖所示,TLV5637的數(shù)據(jù)采樣是在SCK時鐘的上升沿發(fā)生,而且該器件只支持16位的數(shù)據(jù)格式。
可以看出,16位的數(shù)據(jù)包含兩個部分:編程位和數(shù)據(jù)位。SPD為速度控制位,1表示快速,0表示慢速;PWR為功率控制位,1表示掉電模式,0表示工作模式;R1和R0為寄存器選擇位。表1為TLV5637的寄存器寫入選擇表。
表1中的寫控制寄存器即設置參考電壓,數(shù)據(jù)位的低兩位表示參考電壓的相關信息。其中,“00”和“11”表示參考電壓取自外部,“0l”表示參考電壓為1.024 V,“10”表示參考電壓為2.048 V。輸出電壓的幅度由下式?jīng)Q定:
CODE為所寫入的電壓數(shù)據(jù)值,REF為所設定的參考電壓。此外,在寫入電壓數(shù)據(jù)時,12位的數(shù)據(jù)只保持高10位有效,低2位可以忽略。TLV5637的寫函數(shù)如下:
經(jīng)過驗證,可以通過GPIO口模擬的SPI接口對TLV5637的輸出電壓進行精確設置,而且其輸出滿足系統(tǒng)的電壓誤差要求。
結(jié) 語
本文提出了利用ARM芯片LPC2378的GPIO接口來仿真SPI接口的方法,同時實現(xiàn)了對串行D/A轉(zhuǎn)換芯片TLV5637的模擬SPI接口訪問。該方法具有一定的普遍意義,只要稍加改動,便可以應用于各種類型的微處理器。
評論