-
大小: 4.09MB文件類型: .zip金幣: 2下載: 0 次發(fā)布日期: 2023-09-18
- 語言: 其他
- 標(biāo)簽: 物聯(lián)網(wǎng)??STM32??
資源簡介
基于Tlink云智能檢測系統(tǒng),通過網(wǎng)頁和手機(jī)客戶端查看各個(gè)傳感器信息,并且可設(shè)置觸發(fā)條件以微信或者短信方式發(fā)送

代碼片段和文件信息
#include?“adc.h“
#include?“delay.h“
/**************************************ADC***********************/
/*
函數(shù)功能:ADC1規(guī)則通道初始化
說 明:初始化規(guī)則通道1?-->PA1
*/
void?ADC1_Init(void)
{
//GPIO配置
RCC->APB2ENR?|=1<<2;
GPIOA->CRL?&=0xFFFFFF0F;
GPIOA->CRL?|=0x00000000;?//模擬輸入
//ADC1時(shí)鐘使能
RCC->APB2ENR?|=1<<9;
RCC->APB2RSTR?|=1<<9;
RCC->APB2RSTR?&=~(1<<9);
//設(shè)置分頻因子
RCC->CFGR?&=~(3<<14);
RCC->CFGR?|=2<<14; //12MHz
//設(shè)置工作模式
ADC1->CR1?&=~(0xF<<16);//清零,同時(shí)也是設(shè)置為獨(dú)立模式?0000
//ADC1->CR1?&=~(0x7<<13);//一個(gè)通道
ADC1->CR1?&=~(1<<8);//非掃描模式
ADC1->CR2?|=1<<23;//啟用溫度傳感器
ADC1->CR2?|=1<<20;//使用外部事件啟動轉(zhuǎn)換
ADC1->CR2?|=0x7<<17;//選擇SWSTART觸發(fā)
ADC1->CR2?&=~(1<<11);//右對齊
ADC1->CR2?&=~(1<<1);//單次轉(zhuǎn)換模式
//設(shè)置ADC1規(guī)則通道序列的相關(guān)信息
ADC1->SQR1?&=~(0xF<<20);//一個(gè)轉(zhuǎn)換
ADC1->SMPR1?|=7<<18; //通道16?239.5周期 采樣時(shí)間
ADC1->SMPR2?|=7<<3; //通道1(PA1)??239.5周期
//開啟AD轉(zhuǎn)換器,并校準(zhǔn)
ADC1->CR2?|=1<<0; //開啟AD
ADC1->CR2?|=1<<3; //初始化校準(zhǔn)寄存器
while(ADC1->CR2&1<<3);//等待初始化校準(zhǔn)完成
ADC1->CR2?|=1<<2; //開始較準(zhǔn)
while(ADC1->CR2&1<<2);//等待校準(zhǔn)完成
}
/*
函數(shù)功能:獲取通道的ADC轉(zhuǎn)換值
參 數(shù):
u8?ch?->通道號
返回值:ADC轉(zhuǎn)換值
*/
u16?Get_Adc1(u8?ch)
{
ADC1->SQR3?&=0xFFFFFFE0;//將第1個(gè)轉(zhuǎn)換位清零
ADC1->SQR3?|=ch<<0;
ADC1->CR2?|=1<<22;//開始轉(zhuǎn)換規(guī)則通道
while(!(ADC1->SR&1<<1));//等待轉(zhuǎn)換完成
return?ADC1->DR;
}
/*
函數(shù)功能:獲取通道ch的轉(zhuǎn)換值,取times次,然后平均
參 數(shù):
u8?ch? 通道號
u8?times?次數(shù)
返回值:times次ch通道轉(zhuǎn)換值的平均值
*/
u16?Get_AdcAve(u8?chu8?times)
{
u32?sum_val=0;
u8?i;
for(i=0;i {
sum_val+=Get_Adc1(ch);
delay_MS(5);
}
return?sum_val/times;
}
/**************************************DAC***************************/
/*
函數(shù)功能:DAC通道初始化
說 明:初始化DAC通道1?->PA4
*/
void?DAC_Init(void)
{
//開啟PA口時(shí)鐘,設(shè)置PA4為模擬輸入
RCC->APB2ENR?|=1<<2;
GPIOA->CRL?&=0xFFF0FFFF;
GPIOA->CRL?|=0x00000000;
//使能DAC1時(shí)鐘
RCC->APB1ENR?|=1<<29;
RCC->APB1RSTR?|=1<<29;
RCC->APB1RSTR?&=~(1<<29);
//設(shè)置DAC的工作模式
DAC->CR?|=1<<1;//關(guān)閉輸出緩存
DAC->CR?|=1<<0;//使能DAC通道1
DAC->DHR12R1=0;//12位右對齊
}
/*
函數(shù)功能:DAC通道1輸出
說 明:輸出的電壓值--MV毫伏
3.3v=3300mv?傳入范圍0-3300
*/
void?DAC_OUT_MV(u16?dat)
{
float?tmp;
tmp=dat/1000.0;?
DAC->DHR12R1=tmp*4095/3.3; //填入的范圍0~65535
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件????????2523??2018-04-24?21:23??基于Tli
?????文件?????????215??2018-04-24?21:14??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件????????4638??2018-04-28?16:50??基于Tli
?????文件????????1528??2018-04-28?16:24??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件????????1174??2018-08-15?14:45??基于Tli
?????文件?????????214??2018-04-26?12:07??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件????????1629??2018-08-24?14:30??基于Tli
?????文件?????????501??2018-08-24?14:16??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件?????????755??2018-04-28?17:41??基于Tli
?????文件?????????135??2018-03-29?19:29??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件????????9140??2018-08-13?19:13??基于Tli
?????文件????????1415??2018-05-04?08:17??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件????????2336??2018-04-28?16:24??基于Tli
?????文件?????????885??2018-04-28?12:56??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件?????????556??2018-04-25?15:06??基于Tli
?????文件?????????149??2018-04-25?15:05??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件????????1215??2018-03-18?20:18??基于Tli
?????文件?????????480??2018-04-15?15:05??基于Tli
?????目錄???????????0??2018-09-20?16:52??基于Tli
?????文件???????16156??2012-08-25?14:01??基于Tli
............此處省略183個(gè)文件信息
評論
共有 條評論