【導讀】本應用筆記介紹如何連接MAX1169模數(shù)轉換器(ADC)至PIC®微控制器。提供了對應PIC18F442的實例電路和軟件。該軟件包含了利用內部MSSP I²C端口,以400kHz速率連接ADC至PIC微控制器的函數(shù)調用。
MAX1169是一款16位、低功耗ADC,具有I²C兼容的2線串行接口。MAX1169的接口可支持快速模式(400kHz)和高速模式(高達1.7MHz)。
本應用筆記包括實例應用電路和用于PIC18F442的軟件。該軟件提供了利用內部MSSP I²C端口,以400kHz速率連接ADC至PIC微控制器的函數(shù)調用。因為其它微控制器具有類似的片上外圍設備,所以實例中所提供的I²C通信程序被有意拆分為單獨的I²C函數(shù)調用,以便快速移植到其它微控制器。表1所示為匯編程序范例中用到的單獨的I²C接口函數(shù)調用。
這里討論的應用電路采用了MAX1169EVKIT,包括:MAX1169、輸入緩沖器(MAX4430)和經過驗證的PCB。PIC和RS-232收發(fā)器IC (MAX3232)沒有安裝在MAX1169EVKIT板上。但已添加到系統(tǒng)中,圖1所示是一個完整的應用電路。MAX1169EVKIT上的SCL、SDA焊盤便于I²C兼容的串行接口的連接。400kHz I²C通信時,在R3和R4上接1.5kΩ上拉電阻。
MAX1169的引腳排布便于模擬部分和數(shù)字部分的隔離。模擬部分聚集在引腳8-13,分布在IC右側;數(shù)字部分聚集在引腳1-7,分布在IC左側。引腳14也屬于數(shù)字部分,但可以很方便地和IC左側組織在一起。為獲得最佳性能,建議采用單獨的模擬和數(shù)字電源,如圖1原理圖所示。
圖1. MAX1169應用原理圖
將模擬地與數(shù)字地分離開(如圖2所示)可以得到較好的實際效果,利用鐵氧體磁珠,如TDK MMZ1608B601C,連接兩個地平面。這種布局可以避免微控制器系統(tǒng)時鐘及其諧波成份饋入模擬地。已知PIC18F442的系統(tǒng)時鐘為40MHz,考慮到MMZ1608B601C特殊的阻抗與頻率特性,我們選擇了這款鐵氧體磁珠。圖3給出了MMZ1608B601C阻抗隨頻率的變化曲線。
圖2. 分離的模擬地和數(shù)字地
圖3. TDK MMZ1608B601C鐵氧體磁珠阻抗隨頻率的變化曲線
實例中的匯編程序通過PIC的2線接口在400kHz頻率下讀取16位ADC MAX1169的連續(xù)轉換結果。一旦PIC接收到數(shù)據(數(shù)字化后的模擬電壓),將立即通過軟件UART以115kbps的速率發(fā)送出去。RS-232收發(fā)器將數(shù)據發(fā)送到帶有標準串行接口的個人電腦。
表1. 單I²C接口函數(shù)調用
本文來源于Maxim。
推薦閱讀: