資源簡介
基于單片機(jī)的短跑定時器設(shè)計(jì)與實(shí)現(xiàn)
該項(xiàng)目包括原理圖電路圖 程序源碼 演示視頻講解文檔全套資料
三分拿去 超值了

代碼片段和文件信息
#include?“adc.h“
#include?“delay.h“ ???
////////////////////////////////////////////////////////////////////////////////// ?
//本程序只供學(xué)習(xí)使用,未經(jīng)作者許可,不得用于其它任何用途
//ALIENTEK戰(zhàn)艦STM32開發(fā)板V3
//ADC?代碼 ???
//正點(diǎn)原子@ALIENTEK
//技術(shù)論壇:www.openedv.com
//修改日期:2015/1/14
//版本:V1.0
//版權(quán)所有,盜版必究。
//Copyright(C)?廣州市星翼電子科技有限公司?2009-2019
//All?rights?reserved ??
//////////////////////////////////////////////////////////////////////////////////?
???
//初始化ADC1
//這里我們僅以規(guī)則通道為例
//我們默認(rèn)僅開啟通道1 ???
void??Adc_Init(void)
{????
//先初始化IO口
? RCC->APB2ENR|=1<<2;????//使能PORTA口時鐘?
GPIOA->CRL&=0XFFFFFF0F;//PA1?anolog輸入?
RCC->APB2ENR|=1<<9;????//ADC1時鐘使能 ??
RCC->APB2RSTR|=1<<9;???//ADC1復(fù)位
RCC->APB2RSTR&=~(1<<9);//復(fù)位結(jié)束 ????
RCC->CFGR&=~(3<<14);???//分頻因子清零
//SYSCLK/DIV2=12M?ADC時鐘設(shè)置為12MADC最大時鐘不能超過14M!
//否則將導(dǎo)致ADC準(zhǔn)確度下降!?
RCC->CFGR|=2<<14;?????? ?
ADC1->CR1&=0XF0FFFF;???//工作模式清零
ADC1->CR1|=0<<16;??????//獨(dú)立工作模式??
ADC1->CR1&=~(1<<8);????//非掃描模式 ??
ADC1->CR2&=~(1<<1);????//單次轉(zhuǎn)換模式
ADC1->CR2&=~(7<<17); ???
ADC1->CR2|=7<<17; ???//軟件控制轉(zhuǎn)換??
ADC1->CR2|=1<<20;??????//使用用外部觸發(fā)(SWSTART)!!! 必須使用一個事件來觸發(fā)
ADC1->CR2&=~(1<<11);???//右對齊 ?
ADC1->SQR1&=~(0XF<<20);
ADC1->SQR1|=0<<20;?????//1個轉(zhuǎn)換在規(guī)則序列中?也就是只轉(zhuǎn)換規(guī)則序列1? ???
//設(shè)置通道1的采樣時間
ADC1->SMPR2&=~(3*1);???//通道1采樣時間清空 ??
? ADC1->SMPR2|=7<<(3*1);?//通道1??239.5周期提高采樣時間可以提高精確度 ?
ADC1->CR2|=1<<0; ???//開啟AD轉(zhuǎn)換器 ?
ADC1->CR2|=1<<3;???????//使能復(fù)位校準(zhǔn)??
while(ADC1->CR2&1<<3);?//等待校準(zhǔn)結(jié)束? ?
????//該位由軟件設(shè)置并由硬件清除。在校準(zhǔn)寄存器被初始化后該位將被清除。? ?
ADC1->CR2|=1<<2;????????//開啟AD校準(zhǔn) ???
while(ADC1->CR2&1<<2);??//等待校準(zhǔn)結(jié)束
//該位由軟件設(shè)置以開始校準(zhǔn),并在校準(zhǔn)結(jié)束時由硬件清除??
} ??
//獲得ADC1某個通道的值
//ch:通道值?0~16
//返回值:轉(zhuǎn)換結(jié)果
u16?Get_Adc(u8?ch)???
{
//設(shè)置轉(zhuǎn)換序列 ?? ?
ADC1->SQR3&=0XFFFFFFE0;//規(guī)則序列1?通道ch
ADC1->SQR3|=ch; ?? ????
ADC1->CR2|=1<<22;???????//啟動規(guī)則轉(zhuǎn)換通道?
while(!(ADC1->SR&1<<1));//等待轉(zhuǎn)換結(jié)束 ? ???
return?ADC1->DR; //返回adc值
}
//獲取通道ch的轉(zhuǎn)換值,取times次然后平均?
//ch:通道編號
//times:獲取次數(shù)
//返回值:通道ch的times次轉(zhuǎn)換結(jié)果平均值
u16?Get_Adc_Average(u8?chu8?times)
{
u32?temp_val=0;
u8?t;
for(t=0;t {
temp_val+=Get_Adc(ch);
delay_ms(5);
}
return?temp_val/times;
}?
?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-10-10?18:51??成品\
?????文件???????54402??2017-09-15?16:29??成品\Backup?of?receiver1.Sch
?????文件?????1018837??2018-05-06?09:45??成品\Backup?of?STM32F103C8T6.PCB
?????目錄???????????0??2018-04-06?17:19??成品\REMOTER\
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\HARDWARE\
?????文件????????1834??2017-04-11?11:05??成品\REMOTER\發(fā)送\HARDWARE\10515??CS5461.zip
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\HARDWARE\ADC\
?????文件????????2582??2015-02-27?13:11??成品\REMOTER\發(fā)送\HARDWARE\ADC\adc.c
?????文件?????????897??2018-04-17?20:57??成品\REMOTER\發(fā)送\HARDWARE\ADC\adc.h
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\HARDWARE\BEEP\
?????文件?????????756??2015-01-10?22:24??成品\REMOTER\發(fā)送\HARDWARE\BEEP\beep.c
?????文件?????????696??2015-01-10?22:24??成品\REMOTER\發(fā)送\HARDWARE\BEEP\beep.h
?????目錄???????????0??2017-04-02?15:08??成品\REMOTER\發(fā)送\HARDWARE\CS5461\
?????文件????????3806??2017-04-07?13:42??成品\REMOTER\發(fā)送\HARDWARE\CS5461\CS5461.c
?????文件?????????651??2017-04-07?13:42??成品\REMOTER\發(fā)送\HARDWARE\CS5461\cs5461.h
?????目錄???????????0??2017-03-31?20:39??成品\REMOTER\發(fā)送\HARDWARE\CS5463\
?????文件????????2916??2017-04-04?20:44??成品\REMOTER\發(fā)送\HARDWARE\CS5463\cs5463.c
?????文件?????????479??2017-04-01?21:40??成品\REMOTER\發(fā)送\HARDWARE\CS5463\cs5463.h
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\HARDWARE\EXTI\
?????文件????????1878??2015-01-10?22:24??成品\REMOTER\發(fā)送\HARDWARE\EXTI\exti.c
?????文件?????????651??2015-01-10?22:24??成品\REMOTER\發(fā)送\HARDWARE\EXTI\exti.h
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\HARDWARE\KEY\
?????文件????????1568??2018-05-10?10:39??成品\REMOTER\發(fā)送\HARDWARE\KEY\key.c
?????文件?????????911??2018-05-10?10:39??成品\REMOTER\發(fā)送\HARDWARE\KEY\key.h
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\HARDWARE\LED\
?????文件?????????784??2018-05-04?17:11??成品\REMOTER\發(fā)送\HARDWARE\LED\led.c
?????文件?????????691??2018-05-04?17:11??成品\REMOTER\發(fā)送\HARDWARE\LED\led.h
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\HARDWARE\MPU6050\
?????目錄???????????0??2015-07-31?13:08??成品\REMOTER\發(fā)送\HARDWARE\MPU6050\eMPL\
?????文件???????19342??2012-12-14?11:16??成品\REMOTER\發(fā)送\HARDWARE\MPU6050\eMPL\dmpKey.h
............此處省略232個文件信息
評論
共有 條評論