PIC單片機是美國的微芯公司生產(chǎn)的超小型單片機和微型控制器,是Peripheral Interface Controller的簡稱?;赑IC單片機的設計,使用AD轉(zhuǎn)換的功能,可以把模擬數(shù)據(jù)量轉(zhuǎn)換成數(shù)字量數(shù)據(jù),并可直接讀取該數(shù)據(jù)量的值。本設計適合直流5V以下的信號從模擬端口輸入。
本文以PIC16F88為例,來解說A/D轉(zhuǎn)換的方法。
A/D轉(zhuǎn)換,PIC內(nèi)部的小電容(CHOLD)充電,在這之后,因為要執(zhí)行一個存儲電荷測定的步驟,所以需要等待一段時間,對于10bit的A/D轉(zhuǎn)換的PIC,充電時間約20μs,再加上測定時間約20μs,合計需要40μs的時間。
.. ANS6 ANS5 ANS4 ANS3 ANS2 ANS1 ANS0
ANS<6:0>對應著PIC16F88的AN0-AN6(RA0-RA6),置1表示該端口為模擬量,置0表示該端口為數(shù)字量。但是TRIS(I/O口的方向控制寄存器)沒有設置成功的話,該端口也是不能輸入模擬量的。
ADCON0:AD轉(zhuǎn)換控制寄存器0
ADCS1 ADCS0 CHS2 CHS1 CHS0 GO/DONE ..ADON
ADCON1:AD轉(zhuǎn)換控制寄存器1
ADFM ADCS2 VCFG1 VCFG0.. .. ....
ADCS<2:0>分別在兩個寄存器中,操作起來有一些麻煩,因為ADCS2是后面補充的,這3個位的ADCS是用來決定A/D變換的時鐘的。A/D變換時鐘的選擇方法:用來做AD變換的時鐘,被叫做TAD,值越小,A/D轉(zhuǎn)換就越快。詳細內(nèi)容請參照表1:AD變換時鐘的選擇方法。
TAD被數(shù)據(jù)表限定在1.6到6.4us之間,所以為了在這個范圍內(nèi)取最小的值使用ADCS的3位選擇Tosc。TAD受PIC內(nèi)部時鐘的影響關系如下:
例如:對于給PIC提供10M的時鐘的時候,周期就是0.1us,選擇16Tosc的話,TAD剛好是1.6us,8M時周期是0.125us 16Tosc選擇,TAD就變成了2us請看表1。
表1的灰色范圍是ADCS2-0設定范圍。
CHS<2:0>從這里可以選擇AD變換的通道。CHS 3位組合起來對應選擇的端口:最大6.4us以上的數(shù)值也是不可以使用的。
表1 A/D變換時鐘的選擇方法
圖1 ADFM功能示意圖
圖2 A/D變換回路等效圖
圖3 A/D變換的TAD循環(huán)時序圖
圖4 A/D變換原理圖
圖5 AD變換程序
圖6 輸入電壓和輸出數(shù)值關系
CHS<2:0>從這里可以選擇AD變換的通道。CHS 3位組合起來對應選擇的端口:
圍繞黨的十九大以來新要求,始終把政治建設放在基層黨建首位,將“活力黨建”融入企業(yè)管理基礎,增強黨建工作“滲透力”。
GO/DONE:置1 AD變換開始;AD變換完成,這個端口就自動置0。因此這個端口可以用來監(jiān)聽AD變換是否結束。
ADON:置1取樣充電開始,置0充電停止并開始放電。
ADFM:變換完了的結果(10bit)在ADRESH,ADRESL中是靠左保存還是靠右保存的控制位。
ADRESH,ADRESL:變換后的數(shù)字量10 bit的值如圖1所示,在ADRESH,ADRESL 16位的寬度中是靠左還是靠右來保存。如果必要的數(shù)據(jù)8位就足夠,靠左只用讀取ADRESH里面的數(shù)據(jù)就可以讀取全部了。
VCFG<1:0>:AD轉(zhuǎn)換基準電壓設定,使用電源電壓為基準電壓的場合,VCFG<1:0>設置為00。
ADON置1時模擬端口與CHOLD連接,充電開始。10位的AD變換的運行時間
(CHOLD充電的必須時間)TACQ是19.72us。根據(jù)PIC16F88的數(shù)據(jù)表的話,應該選定數(shù)據(jù)源內(nèi)阻在10k以下。(請看圖2)
GO/DONE置1時基于CHOLD存儲的電荷的電壓值的測定開始如圖3所示。
A/D變換需要的時間是:12TAD+α。TAD最短的時間1.6us選擇的時候,AD變換測量需要的時間久是:12*TAD+α=19.2μs+α(約20μs)。
A/D變換器設計原理圖如下圖4所示,以PIC16F88為例,對于10bit的AD轉(zhuǎn)換的PIC,充電時間約20μs,再加上測定時間約20μs,合計需要40μs的時間。圖5給出了程序設計的流程圖。
根據(jù)輸出的結果得到輸入與輸出的關系如圖6所示。被測模擬量是 DC5V,分辨率256,精度0.02V。
PIC單片機可以用編程來實現(xiàn)復雜回路的功能,不使用焊錫就可以寫、改和調(diào)整功能等等很多優(yōu)點。用戶可以根據(jù)自己的需要添加程序,再加上一些外圍設備,使其資源得到充分的利用。
[1]EDROM/ROM-Based 8-Bit CMOS Microcontr-oller Series.Microchip Technology Inc.,2000.
[2]MPLAB.IDE,SIMULATOR,EDITOR USER’S GUIDE.Microchip Technology Inc.,2000.
[3]閻石.數(shù)字電子技術基礎[M].北京:高等教育出版社,1999,4.
[4]鐘肇新.可編程序控制器原理及應用[M].廣州:華南理工大學出版社,1991:492-494.