pic單片機功能較強,現(xiàn)實中的諸多器件均可借助pic單片機完成。由此可見,pic單片機的使用意義較大。關注本網(wǎng)站的朋友都知道,小編曾帶來諸多pic單片機相關文章。如果你對pic單片機比較感興趣,可在閱讀完本文后翻閱往期文章。本文對于pic單片機的講解,將為大家?guī)韕ic單片機的AD轉(zhuǎn)換實例,一起來了解下吧。
AD轉(zhuǎn)換就是模數(shù)轉(zhuǎn)換。顧名思義,就是把模擬信號轉(zhuǎn)換成數(shù)字信號。主要包括積分型、逐次逼近型、并行比較型/串并行型、Σ-Δ調(diào)制型、電容陣列逐次比較型及壓頻變換型。A/D轉(zhuǎn)換器是用來通過一定的電路將模擬量轉(zhuǎn)變?yōu)閿?shù)字量。模擬量可以是電壓、電流等電信號,也可以是壓力、溫度、濕度、位移、聲音等非電信號。但在A/D轉(zhuǎn)換前,輸入到A/D轉(zhuǎn)換器的輸入信號必須經(jīng)各種傳感器把各種物理量轉(zhuǎn)換成電壓信號。
一、PIC單片機如何表示電壓
PIC用十位二進制位的數(shù)來表示電壓,也就是數(shù)值0~1023來表示電壓。那比如現(xiàn)在這個數(shù)值是400那這代表多少的電壓?這就要根據(jù)參考電壓來確定了。
比如我們設置正參考電壓為3.3V ,當輸入的電壓為0時,數(shù)值就為0。當輸入的電壓為3.3V時,數(shù)值就是1023. 那如果輸入的電壓是1.2V代表多少電壓。
首先,先算出一個數(shù)值代表多少的電壓 3.3V除以1023 約等于 0.003V 。
然后,1.2V除以0.003V 等于400. 這就得出了400代表的是1.2V。
見下圖我們可以看AN0~AN7.這些都是可以配置成模擬輸入的端口。只有這些引腳才能做為AD轉(zhuǎn)換的端口。
二、實例講解
例如:下面的原理圖,從RA0/AN0腳輸入個模擬量如果電壓大于1.2v則LED亮否則LED滅。
AD的設置步驟
1.設置端口
將RA0口設置為輸入 TRISA = 0x01;
將RA0口設置為模擬 ANSELA = 0x01;
2.配置ADC模塊
選擇ADC的轉(zhuǎn)換時鐘。
如何選擇轉(zhuǎn)換時鐘呢 要根據(jù)現(xiàn)在的時鐘頻率進行選擇。可以根據(jù)數(shù)據(jù)手冊中的表格進行選擇 。
我們設置單片機的時鐘頻率為32MHZ ,選擇ADC周期關鍵不要選擇陰影部分,在32MHz 這一列 我們隨意選擇了ADC時鐘周期1us,對應的時鐘源為Fosc/32.,AD控制寄存器1 ADCON1的ADCS《2:0》=010注:ADCS《2:0》代表的意思就是 ADCS的0到2位。
配置參考電壓
我們這里選擇右對齊,所以AD控制寄存器1 ADCON1的 ADFM=1
上面將有關ADCON1寄存器的配置說完了。下面來講解ADCON0
選擇ADC輸入通道
AD轉(zhuǎn)換模塊只有一個,而AD輸入通道有8個AN0~AN7.所以不可能同時進行AD轉(zhuǎn)換,那個需要用我們就分配給那個,根據(jù)硬件我們將AD轉(zhuǎn)換模塊分配給AN0.
所以 ADCON0 的CHS《4:0》=0000;
開啟ADC模塊
ADC模塊開啟,ADCON0的ADON=1,只是單純的啟用ADC模塊。并不開始AD轉(zhuǎn)換。如果不用ADC模塊時候建議關閉。可以省點電哦!!!
開始AD轉(zhuǎn)換
ADCON0的GO/DONE=1開啟AD轉(zhuǎn)換。
4 等待AD轉(zhuǎn)換結(jié)束
5 讀取結(jié)果
一般情況下我們并不取一次的AD轉(zhuǎn)換的值。而是取多次之后算平均值。這樣來確保轉(zhuǎn)換的準確性。 配置ADC模塊,有許多地方并沒有講解為什么這么配置,因為許多配置其實是比較隨意的。并不是那么的絕對的。一定非要選擇哪一個。當然實際的配置還是要根據(jù)你項目需求。
//開發(fā)環(huán)境MPLAB X IDE ,單片機PIC16LF1823.
#include 《pic.h》
__CONFIG(FOSC_INTOSC&WDTE_OFF&PWRTE_ON&MCLRE_OFF&CP_ON&CPD_OFF&BOREN_ON
&CLKOUTEN_OFF&IESO_ON&FCMEN_ON);//這個要放到上一行去
__CONFIG(PLLEN_OFF&LVP_OFF) ;
#define ADC_NUM 8 //轉(zhuǎn)換的次數(shù)
#define LED LATA1
void init_GPIO(void)
{
TRISA = 0x01;//端口設置為輸入
ANSELA = 0x01;//設置為模擬輸入
PORTA = 0x00;
LATA = 0x00;
}
void init_fosc(void)
{
OSCCON = 0xF0;//32MHZ
}
void init_AD(void)
{
ADCON1= 0xA0;//右對齊,AD時鐘為Fosc/32,參考電壓為電源電壓,
ADCON0= 0x00;//選擇通道AN0
ADCON0bits.ADON = 1;//開啟模塊
}
unsigned int ADC_BAT_ONE(void)//轉(zhuǎn)換一次
{
unsigned int value;
value=0;
ADCON0bits.CHS =0;//選擇通道AN0
ADCON0bits.ADGO=1;//開始轉(zhuǎn)換
while(ADCON0bits.GO==1);//等待轉(zhuǎn)換結(jié)束
value=(unsigned int)ADRESH;//強制類型轉(zhuǎn)換,因為ADRESH是字符型的只能表示8位二進制。所以必須轉(zhuǎn)換成可以容納10位二進制的整型。
value= value《《8;// 將高兩位左移8位
value += ADRESL;//低八位加入ADRESL的值。
return value;
}
unsigned int ADC_BAT_contiue(void)
{
unsigned int ADV_MCU[ADC_NUM],ADV_CNT,ADV_ALL;
ADV_ALL=0;
for(ADV_CNT=0;ADV_CNT《ADC_NUM;ADV_CNT++)//進行多次AD轉(zhuǎn)換
{
ADV_MCU[ADV_CNT]=ADC_BAT_ONE();
}
for(ADV_CNT=0;ADV_CNT《ADC_NUM;ADV_CNT++)//計算多次AD轉(zhuǎn)換的平均值
{
ADV_ALL += ADV_MCU[ADV_CNT];
}
ADV_ALL= ADV_ALL/ADC_NUM;
return ADV_ALL;//得到結(jié)果返回
}
/*
*
*/
int main(int argc, char** argv) {
init_fosc();//設置時鐘
init_AD();//設置AD
while(1)
{
if( ADC_BAT_conTIue()》400)//判斷輸入電壓是否大于1.2V
{
LED=1;//燈亮
}
else
{
LED=0;//燈滅
}
}
}
上一篇:pic單片機程序設計的基本方法解析
下一篇:PIC單片機實現(xiàn)多回路溫度控制系統(tǒng)的設計
推薦閱讀
史海拾趣
機頂盒,全稱為數(shù)字視頻變換盒,是連接電視機與外部信號源的關鍵設備,其專業(yè)性與科普性兼具。從廣義上講,機頂盒泛指一切與電視機連接的網(wǎng)絡終端設備,能夠接收并轉(zhuǎn)換多種信號源,包括有線電纜、衛(wèi)星天線、寬帶網(wǎng)絡及地面廣播等,為觀眾提供豐富多樣的視聽體驗。
在數(shù)字電視時代,機頂盒的核心功能在于實現(xiàn)數(shù)模轉(zhuǎn)換,即將接收到的數(shù)字信號轉(zhuǎn)換為電視機可識別的模擬信號,從而使用戶能在模擬電視機上觀看高清甚至超高清的數(shù)字電視節(jié)目。此外,機頂盒還具備強大的增值服務功能,如提供電子節(jié)目指南、因特網(wǎng)網(wǎng)頁瀏覽、在線購物、視頻點播等,使電視機從單向接收信息的設備轉(zhuǎn)變?yōu)榛拥闹悄芙K端。
隨著技術(shù)的不斷進步,機頂盒正朝著高清化、智能化方向發(fā)展。高清、超高清技術(shù)的廣泛應用,使得機頂盒能夠呈現(xiàn)更為細膩的畫面和震撼的音效。同時,智能化技術(shù)的融入,如語音助手、智能推薦等功能的實現(xiàn),進一步提升了用戶的使用體驗。未來,隨著5G、虛擬現(xiàn)實和增強現(xiàn)實等技術(shù)的不斷發(fā)展,機頂盒的應用場景將更加廣泛,為用戶帶來更為沉浸式和互動式的觀影體驗。
綜上所述,機頂盒作為連接電視與外部世界的橋梁,不僅豐富了人們的視聽生活,更推動了電視產(chǎn)業(yè)的數(shù)字化轉(zhuǎn)型與發(fā)展。
為了進一步加強在全球市場的地位,C&K在2011年進行了一次重要的收購。這次收購不僅擴大了公司的業(yè)務范圍,還提升了其設計和制造能力。通過這次收購,C&K得以在全球范圍內(nèi)提供更廣泛的產(chǎn)品和服務,進一步鞏固了其在電子行業(yè)中的領先地位。
福聲科技(FUET)的初創(chuàng)可以追溯到幾年前,當時電子產(chǎn)業(yè)正蓬勃發(fā)展,對高質(zhì)量電聲元器件的需求日益增長。公司創(chuàng)始人憑借在電聲領域的深厚積累,決定成立一家專注于電聲產(chǎn)品研發(fā)、生產(chǎn)和銷售的企業(yè)。初期,福聲科技聚焦于貼片式無源蜂鳴器、高分貝報警器等產(chǎn)品,憑借其高性價比和穩(wěn)定的性能,迅速在家電、移動通訊設備等領域獲得市場認可,為公司的后續(xù)發(fā)展奠定了堅實基礎。
Crouzet一直致力于產(chǎn)品創(chuàng)新和技術(shù)研發(fā)。公司的產(chǎn)品線不斷豐富,涵蓋了自動控制元件、智能控制器、可編程邏輯控制器、觸摸屏、測量傳感器、模擬和數(shù)字電子元件等多種產(chǎn)品。這些產(chǎn)品廣泛應用于汽車、化工、電力、機械、消費電子、空調(diào)和冷庫、石油和天然氣等多個行業(yè),為客戶提供了高效、可靠的自動化解決方案。
在技術(shù)創(chuàng)新的基礎上,Altonics公司積極拓展市場。公司不僅在國內(nèi)建立了完善的銷售網(wǎng)絡,還積極開拓國際市場,產(chǎn)品遠銷海外。同時,公司注重品牌建設,通過提供優(yōu)質(zhì)的產(chǎn)品和服務,樹立了良好的品牌形象。公司的廣告宣傳和展會參展活動也提升了品牌知名度,為公司的長遠發(fā)展奠定了堅實的基礎。
進入80年代,隨著電子技術(shù)的不斷進步和應用領域的拓寬,Hokuriku Electric意識到單一產(chǎn)品線的局限性。于是,公司開始實施多元化產(chǎn)品戰(zhàn)略,相繼推出了傳感器、貼片保險絲、機械零件、電路基板等一系列新產(chǎn)品。這些產(chǎn)品不僅豐富了公司的產(chǎn)品線,還進一步鞏固了其在電子行業(yè)中的地位。通過多元化布局,Hokuriku Electric成功抵御了市場波動帶來的風險,實現(xiàn)了持續(xù)穩(wěn)定的增長。
M4 Hanker開發(fā)板:uc/GUI的移植(加觸摸功能+心得體會) 發(fā)現(xiàn)Triton.zhang老大提供的uc/GUI例程沒有觸摸功能,所以將觸摸功能加入,同時跑了幾個uc/GUI的小例子,因為下周有好多考試,所以沒有進行深入的擴展,不足之處還請見諒!順便請假一周!不然要掛啦!要說uc /GUI的c文件,那叫一個多呀!為了方便編 ...… 查看全部問答∨ |
avr studio 6.0 下 mega 64 串口中斷問題 我是AVR 新手,在avr studio 6.0 下學習 mega64 的串口0 ,波特率已經(jīng)配置成9600,發(fā)送函數(shù)調(diào)試成功,現(xiàn)在調(diào)不通中斷方式下的接收程序,程序片段如下,望知道的好友指導指導,謝謝 中斷使能 void Usart0InterruptConfig() { &nb ...… 查看全部問答∨ |
大森!俺的LM3S9B96開發(fā)板,咋不能debuger,無論是CCS5還是Keil4.5是俺的軟件版本.... 棒棒忙,俺的板子就是用不了,真懷疑板子壞了,就是用ulink仿真器 還是不能調(diào)試和下載,有哪位大森遇到過這種事情嗎?俺的板子一次 也沒能調(diào)試和下載過。同樣的軟件(CCS5和Keil4.5)都可以調(diào)試和下載 launchpad120H5RQ,M4的板子。why? .… 查看全部問答∨ |
STM32 USART2 共發(fā)送3個字符{0x55,0x55,0x55},但串口調(diào)試助手接收到的第一個總為00,后面再顯示兩個0x55,幫忙看看為什么,困擾一天了,非常感謝各位大俠… 查看全部問答∨ |
設計資源 培訓 開發(fā)板 精華推薦
- 意法半導體推出用于匹配遠距離無線微控制器STM32WL33的集成的匹配濾波芯片
- ESP32開發(fā)板連接TFT顯示屏ST7789跳坑記
- 如何讓ESP32支持analogWrite函數(shù)
- LGVL配合FreeType為可變字體設置字重-ESP32篇
- 使用樹莓派進行 ESP32 Jtag 調(diào)試
- ESP32怎么在SPIFFS里面存儲html,css,js文件,以及網(wǎng)頁和arduino的通訊
- ESP32 freeRTOS使用測試
- API調(diào)用小記(Touchdesigner和ESP32)
- 關于ESP32/8266使用async-mqtt-client庫的一些基本介紹
- 座椅、天窗、電動尾門應用 國產(chǎn)車規(guī)級高壓霍爾效應傳感器推薦
- 突發(fā)!又一車企車機“崩了”
- 寧德時代為陳立泉院士頒發(fā)“卓越貢獻獎”
- 一文速覽吉利雷神 AI 電混 2.0 發(fā)布會重點
- 2025年1-4月ADAS供應商裝機量排行榜:頭部集中與國產(chǎn)突圍并存
- 國內(nèi)飛行汽車無線通信測試成功,通信安全新突破
- SPAD席卷車載激光雷達市場
- 大聯(lián)大品佳集團推出基于Microchip和ams OSRAM產(chǎn)品的10Base-T1S萬級像素大燈方案
- 哈曼推出采用三星Neo QLED技術(shù)的全新顯示屏
- Syntiant推出超低功耗汽車AI創(chuàng)新技術(shù) 提升車輛安全性和用戶體驗
- Cerence和SiriusXM達成協(xié)議,為汽車OEM及車主提供語音AI支持音頻娛樂體驗
- Akamai加強邊緣計算能力,為開發(fā)者開啟更多可能性
- 東芝和日本半導體提出新方法 可優(yōu)化LDMOS中的HBM容差并抑制導通電阻
- 數(shù)智泰克 創(chuàng)贏未來,泰克助力第四次工業(yè)革命再出發(fā)
- 固態(tài)電池不能指望,半固態(tài)呢?
- 景馳科技加入百度Apollo平臺,前CEO王勁“晚節(jié)不保”?
- 西門子醫(yī)療上市 估值382億美元低于預期
- 10大趨勢讓你掌握全球醫(yī)療行業(yè)今年的核心創(chuàng)新方向
- 中國存儲攻堅戰(zhàn)從閃存開始
- 驅(qū)動IC營收維持高成長,譜瑞科技長期20%市占目標不變