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