6.1 ADC結(jié)構(gòu)及寄存器說明
模數(shù)轉(zhuǎn)換器ADC的主要功能是將模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào)以便于微控制器進(jìn)行數(shù)據(jù)處理
ADC按轉(zhuǎn)換原理分為逐次比較型、雙積分型和∑-?型
逐次比較型ADC通過逐次比較將模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào)轉(zhuǎn)換速度快,但精度較低,是最常用的ADC
雙積分型ADC通過兩次積分將模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào),精度高,抗干擾能力強(qiáng),但速度較慢,主要用于萬用表等測(cè)量?jī)x器
∑-?型ADC具有逐次比較型和雙積分型的雙重優(yōu)點(diǎn),正在逐步廣泛地得到應(yīng)用
STM32ADC是12位逐次比較器,多達(dá)18個(gè)通道,可測(cè)量16個(gè)外部和2個(gè)內(nèi)部信號(hào)源,各通道的轉(zhuǎn)換可以單詞、連續(xù)、掃描或間斷模式執(zhí)行,轉(zhuǎn)換結(jié)果可以左對(duì)齊或右對(duì)齊方式存儲(chǔ)在16位數(shù)據(jù)寄存器中
STM32ADC的模擬看門狗特性允許應(yīng)用程序檢測(cè)輸入電壓是否超出用戶定義的高/低閾值
輸入時(shí)鐘不得超過14MHz,由PCLK2經(jīng)分頻產(chǎn)生
STM32ADC主要由模擬多路開關(guān)、模擬至數(shù)字轉(zhuǎn)換器、數(shù)據(jù)寄存器和觸發(fā)選擇等部分組成
轉(zhuǎn)換通道分為規(guī)則通道和注入通道兩組
規(guī)則通道由最多16個(gè)通道組成,按順序轉(zhuǎn)換
注入通道由最多4個(gè)通道組成,可插入轉(zhuǎn)換
ADC使用的GPIO引腳
ADC1的通道16內(nèi)部與溫度傳感器相連
通道17內(nèi)部與參考電源VREFINT相連
ADC通過20個(gè)寄存器進(jìn)行操作
6.2 ADC設(shè)計(jì)實(shí)例
6.2.1 用ADC1規(guī)則通道實(shí)現(xiàn)外部模擬信號(hào)的模數(shù)轉(zhuǎn)換
規(guī)則通道相關(guān)的寄存器及其內(nèi)容
ADC規(guī)則通道初始化子程序
//ADC1初始化子程序
void Adc1_Init(void)
{
RCC->APB2ENR |= 1<<3; //開啟GPIOB時(shí)鐘
RCC->APB2ENR |= 1<<9; //開啟ADC1時(shí)鐘
GPIOB->CRL &=0xffffff00; //PB.01(IN9)、PB.00(IN8)模擬輸入
ADC1->CR1 |= 1<<8; //掃描模式
ADC1->CR2 |= 1<<20; //規(guī)則通道外部觸發(fā):TIM1_CH1
ADC1->SQR1 |= 1<<20; //規(guī)則通道序列長(zhǎng)度:2
ADC1->SQR3 |= 9; //第1個(gè)轉(zhuǎn)換通道:IN9
ADC1->SQR3 |= 8<<5; //第2個(gè)轉(zhuǎn)換通道:IN8
ADC1->CR2 |= 1; //開啟ADC
ADC1->CR2 |= 1<<2; //校準(zhǔn)ADC
while(ADC1->CR2 & 1<<2); //等待校準(zhǔn)完成
}
ADC規(guī)則通道處理子程序
//ADC1處理子程序
void Adc1_Proc(void)
{
if(ADC1->SR & 2) //EOC=1(轉(zhuǎn)換結(jié)束)
{
adc1_dat[adc1_num] = ADC1->DR; //讀取轉(zhuǎn)換值
if(++adc1_num == 2)
adc1_num = 0;
}
}
6.2.2 用ADC1注入通道實(shí)現(xiàn)內(nèi)部溫度傳感器的溫度測(cè)量
STM32中有一個(gè)溫度傳感器,與ADC1的通道16相連,可以用來測(cè)量芯片的溫度
溫度傳感器的最大采樣時(shí)間為17.1ms,溫度范圍為-40~125°C,溫度計(jì)算公式如下:
其中:V為溫度傳感器電壓值,N為模數(shù)轉(zhuǎn)換后的數(shù)字值
注入通道相關(guān)的寄存器及其內(nèi)容
ADC注入通道初始化子程序
//ADC1初始化子程序
void Adc1_Init(void)
{
RCC->APB2ENR |= 1<<3; //開啟GPIOB時(shí)鐘
RCC->APB2ENR |= 1<<9; //開啟ADC1時(shí)鐘
GPIOB->CRL &=0xffffff00; //PB.01(IN9)、PB.00(IN8)模擬輸入
ADC1->CR1 |= 1<<8; //掃描模式
ADC1->CR2 |= 1<<20; //規(guī)則通道外部觸發(fā):TIM1_CH1
ADC1->SQR1 |= 1<<20; //規(guī)則通道序列長(zhǎng)度:2
ADC1->SQR3 |= 9; //第1個(gè)轉(zhuǎn)換通道:IN9
ADC1->SQR3 |= 8<<5; //第2個(gè)轉(zhuǎn)換通道:IN8
ADC1->CR2 |= 1<<10; //注入通道自動(dòng)轉(zhuǎn)換
ADC1->CR2 |= 1<<23; //開啟溫度傳感器
ADC1->SMPR1 |= 5<<18; //SMP16[2:0] =5(55.5)
// (55.5+12.5)/4MHz=17s
ADC1->JSQR |= 0x10<<15; //JSRR[4:0]=0x10(通道16)
ADC1->CR2 |= 1; //開啟ADC
ADC1->CR2 |= 1<<2; //校準(zhǔn)ADC
while(ADC1->CR2 & 1<<2); //等待校準(zhǔn)完成
}
ADC注入通道處理子程序
//ADC1處理子程序
void Adc1_Proc(void)
{
if(ADC1->SR & 2) //EOC=1(轉(zhuǎn)換結(jié)束)
{
adc1_dat[adc1_num] = ADC1->DR; //讀取轉(zhuǎn)換值
if(++adc1_num == 2)
adc1_num = 0;
}
if(ADC1->SR & 4) //JEOC=1(注入通道轉(zhuǎn)換結(jié)束)
{
ADC1->SR &= ~6; //清除JEOC和EOC
adc1_jdat = ADC1->JDR1; //讀取轉(zhuǎn)換值
}
}
上一篇:51單片機(jī):用ADC0832做模數(shù)轉(zhuǎn)換,測(cè)量電壓大小
下一篇:51單片機(jī)筆記
推薦閱讀
史海拾趣
為了進(jìn)一步擴(kuò)大市場(chǎng)份額,DB Lectro Inc積極尋求與國(guó)際知名企業(yè)的合作。通過與多家國(guó)際公司的技術(shù)交流和合作,公司成功地將自身的氣體檢測(cè)技術(shù)應(yīng)用于更多領(lǐng)域,如天然氣開采、食品飲料生產(chǎn)等。同時(shí),公司還積極參與國(guó)際展覽和交流活動(dòng),展示了其先進(jìn)的技術(shù)和產(chǎn)品,贏得了國(guó)際市場(chǎng)的廣泛認(rèn)可。
Astema公司自創(chuàng)立之初,就專注于研發(fā)創(chuàng)新的電子技術(shù)。公司投入大量資源于研發(fā)部門,不斷推出具有競(jìng)爭(zhēng)力的新產(chǎn)品。其中,一款具有高效能、低功耗特點(diǎn)的芯片產(chǎn)品,在市場(chǎng)上獲得了巨大成功,為公司帶來了可觀的收入。這一成功促使Astema在行業(yè)內(nèi)建立了良好的聲譽(yù),吸引了更多的客戶和合作伙伴。
為了進(jìn)一步提升公司的知名度和影響力,淩志比高開始注重品牌建設(shè)和市場(chǎng)推廣。公司積極參與行業(yè)展會(huì)、舉辦產(chǎn)品發(fā)布會(huì)等活動(dòng),與客戶和合作伙伴建立了緊密的聯(lián)系。同時(shí),淩志比高還通過廣告宣傳、社交媒體營(yíng)銷等方式,提升了品牌知名度和美譽(yù)度。
隨著國(guó)內(nèi)市場(chǎng)的飽和,巨盛電子(Chesen)開始尋求國(guó)際化發(fā)展。公司制定了一系列國(guó)際化戰(zhàn)略,包括拓展海外市場(chǎng)、建立海外生產(chǎn)基地、與國(guó)際品牌合作等。通過這些努力,巨盛電子成功進(jìn)入了歐美、東南亞等市場(chǎng),實(shí)現(xiàn)了品牌的全球化布局。同時(shí),公司還積極與國(guó)際品牌合作,共同開發(fā)新產(chǎn)品,提高了品牌知名度和市場(chǎng)份額。
人才是企業(yè)發(fā)展的核心動(dòng)力。巨盛電子(Chesen)非常重視人才的培養(yǎng)和激勵(lì)。公司建立了完善的培訓(xùn)體系,為員工提供豐富的培訓(xùn)資源和機(jī)會(huì)。同時(shí),公司還制定了具有競(jìng)爭(zhēng)力的薪酬和福利制度,以及完善的晉升機(jī)制,激勵(lì)員工積極工作、不斷提升自己。這些舉措不僅提高了員工的工作積極性和創(chuàng)造力,還為企業(yè)的發(fā)展提供了有力的人才保障。
以上五個(gè)故事均基于電子行業(yè)的一般情況和假設(shè)性背景進(jìn)行虛構(gòu)。如有需要,您可以根據(jù)具體情況進(jìn)行調(diào)整和修改。
在XXXX年,電子行業(yè)迎來了前所未有的變革。隨著物聯(lián)網(wǎng)、人工智能等技術(shù)的快速發(fā)展,傳統(tǒng)的電子產(chǎn)品市場(chǎng)面臨著巨大的挑戰(zhàn)。Faraday Electronics Inc意識(shí)到,如果不進(jìn)行戰(zhàn)略轉(zhuǎn)型,公司將難以在激烈的市場(chǎng)競(jìng)爭(zhēng)中立足。于是,公司決定轉(zhuǎn)型為一家專注于智能硬件和軟件解決方案的提供商。通過這一戰(zhàn)略轉(zhuǎn)型,公司成功抓住了市場(chǎng)機(jī)遇,實(shí)現(xiàn)了快速發(fā)展。
哪位知道利用一個(gè)時(shí)間繼電器,一個(gè)relay,做一個(gè)占空比為50%的脈沖, 我只能做個(gè)脈沖,占空比做不了50%,哪位知道的話回復(fù)一下,先謝了。… 查看全部問答∨ |
|
打算開發(fā)嵌入式操作系統(tǒng),召集有志同道合者,現(xiàn)在已經(jīng)做好了semaphore部分,其它部分正在開發(fā)中,論壇:http://dawn.tech.topzj.com/index.php, 歡迎大家光臨指導(dǎo)! … 查看全部問答∨ |
|
TI 原裝DK-LM3S9B96開發(fā)板經(jīng)驗(yàn)、心得 說實(shí)話,從來沒有用過TI的ARM產(chǎn)品, 但是玩過早期的ARM7,工作中用過TI的dsp,另外對(duì)FPGA最熟悉。 覺得這塊板子挺超值的,不光是價(jià)格,而且可擴(kuò)展性比較強(qiáng)。 為了買這塊板子,也為了督促自己學(xué)習(xí),先在這里寫一篇湊數(shù)。 ...… 查看全部問答∨ |
大俠們幫忙看看這個(gè)程序24c64讀寫程序 在keilc上運(yùn)行時(shí)提示target not created,電腦是win7系統(tǒng),跟這個(gè)有關(guān)系嗎?#include<reg52.h>#define uchar unsigned char#define uint unsigned int#define ulong unsigned long#define writedeviceadd ...… 查看全部問答∨ |
單片機(jī)I/O輸出PWM波可以直接接直流電機(jī)嗎? 如題,讓P10輸出PWM波,然后直接接在直流電機(jī)一級(jí),另一級(jí)接地,這樣為什么直流電機(jī)不轉(zhuǎn)?一定需要外接電路嗎?看網(wǎng)上的列子都接了外接電路謝謝… 查看全部問答∨ |
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- 英飛凌微控制器:以全新實(shí)惠套件和強(qiáng)大開發(fā)環(huán)境為開發(fā)者提供支持
- iTOP-i.MX6開發(fā)板設(shè)備數(shù)驅(qū)動(dòng)Menuconfig的用法
- 迅為IMX6ULL開發(fā)板Qt for Android搭建開發(fā)環(huán)境
- 迅為i.MX8M mini開發(fā)板Windots QT系統(tǒng)開發(fā)環(huán)境搭建
- 迅為IMX8MM開發(fā)板Yocto系統(tǒng)使用Gstarwmra(一)
- 迅為IMX8M mini開發(fā)板Linix系統(tǒng)修改默認(rèn)屏幕
- iTOP-4412開發(fā)板支持4G以上文件系統(tǒng)擴(kuò)展
- 迅為IMX8MM開發(fā)板Yocto系統(tǒng)設(shè)置開機(jī)自啟動(dòng)
- 迅為IMX6Q開發(fā)板 Buildroot文件系統(tǒng)mqtt測(cè)試
- 汽車電子芯片國(guó)產(chǎn)化加速,GS32-DSP能否替代C2000?
- 機(jī)器人行業(yè)大魚:ABB機(jī)器人業(yè)務(wù)分拆上市
- 全球首個(gè)L3級(jí)架構(gòu)誕生在中國(guó),意味著什么?
- 汽車存儲(chǔ)芯片研究:大模型推動(dòng)下,主機(jī)廠車用存儲(chǔ)芯片的選擇路徑分析
- 智駕按下急停鍵?正相反,真正的自動(dòng)駕駛就要來了!
- 國(guó)內(nèi)5個(gè)固態(tài)電池項(xiàng)目更新動(dòng)態(tài)
- 機(jī)器人如何防止碰撞?——安全探測(cè)器的技術(shù)架構(gòu)與性能突破
- 自動(dòng)駕駛汽車功能安全與網(wǎng)絡(luò)安全的融合
- 車企虛假宣傳最高判刑2年!智駕、接管成禁用詞?重拳出擊砸向誰?
- 強(qiáng)監(jiān)管下的智能汽車:新規(guī)詳解
- TI 工業(yè)月,靈感不設(shè)限!21天習(xí)慣養(yǎng)成記!打卡贏好禮啦!
- 有獎(jiǎng)直播:TI 的故事—— IC 創(chuàng)世紀(jì)
- Littelfuse 碳化硅(SiC) MOSFET和肖特基二極管產(chǎn)品介紹及相關(guān)應(yīng)用
- 有獎(jiǎng)直播報(bào)名中|基于英飛凌AIROC™ CYW20829低功耗藍(lán)牙芯片的無線組網(wǎng)解決方案
- 100%獲獎(jiǎng),EE新年福利!
- 極簡(jiǎn)主義,足不出戶,看東芝在線展會(huì),安心答題送好禮!
- EE大學(xué)堂新年游戲之\\
- 為你點(diǎn)贊——我最愛有“干貨”的博文
- TI即將直播【 MSP430 系列最新超聲波流量測(cè)量方案】,你會(huì)錯(cuò)過?報(bào)名看直播贏雙重好禮嘍!
- STM32-按鍵輸入實(shí)驗(yàn)學(xué)習(xí)筆記
- STM8 匯編學(xué)習(xí)筆記1:CPU簡(jiǎn)介
- 基于STM32 MCU的太陽能:LED街燈解決方案
- 關(guān)于STM8CAN產(chǎn)生bus-off如何自動(dòng)恢復(fù)
- 機(jī)器人2.0,全面賦能智能制造!
- 工業(yè)機(jī)器人企業(yè)在2018上半年發(fā)生了哪些大事?
- Trinamic智能步進(jìn)電機(jī) -沒有比這更容易的了
- 區(qū)塊鏈公鏈核心要素 - 安全,公平,高效
- 人工智能領(lǐng)域兩極分化,該如何破局?
- Wago, 工博會(huì)親測(cè):人越多,萬可氣場(chǎng)越強(qiáng)沒錯(cuò)了
- EEWORLD大學(xué)堂----數(shù)字電源應(yīng)用領(lǐng)域的更新
- 這個(gè)情人節(jié)DIY不錯(cuò),可惜今年趕不上了
- Qt學(xué)習(xí)之路第59篇 使用流處理 XML
- 半橋信號(hào)的延時(shí)
- 關(guān)于掌上機(jī)通過紅外通信對(duì)設(shè)備進(jìn)行設(shè)置的問題
- 【推薦-信盈達(dá)】深圳單片機(jī)培訓(xùn)PIC單片機(jī)培訓(xùn)!
- pxa270 wince5.0 Eboot mmu問題
- MSP-EXP430G2 LaunchPad:查看MCLK、SMCLK、ACLK默認(rèn)時(shí)鐘頻率
- 復(fù)雜RF環(huán)境下的RFID測(cè)試挑戰(zhàn)
- STM32萬年歷