標(biāo)題:
能幫我看看我這8位的AD采集單片機(jī)程序?yàn)槭裁床怀晒?
[打印本頁]
作者:
如癡百感生
時(shí)間:
2019-9-28 16:44
標(biāo)題:
能幫我看看我這8位的AD采集單片機(jī)程序?yàn)槭裁床怀晒?br />
本帖最后由 如癡百感生 于 2019-9-28 16:58 編輯
1.PNG
(10.32 KB, 下載次數(shù): 78)
下載附件
2019-9-28 16:44 上傳
2.PNG
(21.6 KB, 下載次數(shù): 74)
下載附件
2019-9-28 16:44 上傳
計(jì)算部分弄錯(cuò)了 ,,應(yīng)該是v=b*5/256;但結(jié)果還是不對,,沒問題了 自己把自己弄混了 抱歉
作者:
csmyldl
時(shí)間:
2019-9-28 22:33
能自己馬上發(fā)現(xiàn)錯(cuò)誤并改正,真厲害!
作者:
shwghsy
時(shí)間:
2020-2-29 16:42
#include ”stc15w4k.h"
#include <stdio.h> // 為使用KEIL自帶的庫函數(shù)printf而加入
加入串口可以在PC端實(shí)時(shí)查看電壓數(shù)據(jù)
unsigned int ADC_P11() // ADC轉(zhuǎn)換函數(shù)
{
unsigned int i; // 用于軟件延時(shí)程序
unsigned char status; // 用于判斷AD轉(zhuǎn)換結(jié)束的標(biāo)志
unsigned int AD_Dat=0; // 10位AD轉(zhuǎn)換值
unsigned char Tmp; // 臨時(shí)變量用于將AD轉(zhuǎn)換出來的2個(gè)字節(jié)合成一個(gè)字節(jié)
ADC_CONTR|=0x80; // 開AD轉(zhuǎn)換電源,第一次使用時(shí)要打開內(nèi)部模擬電源
for (i=0;i<10000;i++); // 適當(dāng)延時(shí)等待AD轉(zhuǎn)換供電穩(wěn)定,一般延時(shí)1ms以內(nèi)即可,為了縮短AD
// 調(diào)用時(shí)間,可把這2行剪切到主程序中去。
P1ASF|=0x02; // 選擇P1.1作為AD轉(zhuǎn)換通道,0x02= 0000 0010
ADC_CONTR=0xE1; // 選擇P1.1作為AD轉(zhuǎn)換通道,最高轉(zhuǎn)換速度,清轉(zhuǎn)換完成標(biāo)志。
//for (i=0;i<1000;i++); // 如果是多通道模擬量進(jìn)行AD轉(zhuǎn)換,則更換AD轉(zhuǎn)換通道后要適當(dāng)延時(shí),
// 使輸入電壓穩(wěn)定,延時(shí)量取20μs~200μs即可,與輸入電壓源的內(nèi)阻有關(guān),如果輸入電壓信號(hào)源的內(nèi)
// 阻在10K以下,可不加延時(shí),如果是單通道模擬量轉(zhuǎn)換,則不需要更換AD轉(zhuǎn)換通道,也不需要加延時(shí)。
ADC_CONTR|=0x08; // 啟動(dòng) A/D 轉(zhuǎn)換,ADC_START=1。
status=0;
while(status==0) // 等待AD轉(zhuǎn)換結(jié)束。
{
status=ADC_CONTR&0x10; // 判斷ADC_FLAG是否等于1,0x10=0001 0000B。
}
ADC_CONTR&=0xE7; // 將ADC_FLAG清0, 0xE7=1110 0111B,ADC_FLAG=0,ADC_START=0。
AD_Dat = ADC_RES; // 默認(rèn)高字節(jié)高8位。
AD_Dat <<= 2;
Tmp = ADC_RESL; // 默認(rèn)低字節(jié)低2位。
Tmp &= 0x03; // 屏蔽無關(guān)位
AD_Dat |= Tmp; // 高低字節(jié)拼接成一個(gè)10位數(shù)。
return AD_Dat;
}
mian函數(shù)下
float Vin; // 存放計(jì)算出來的外部輸入電壓
unsigned int ADvalue; // 存放AD轉(zhuǎn)換返回的結(jié)果
ADvalue=ADC_P11(); // 采樣P1.1口模擬輸入電壓 電瓶正極電壓
Vin=VCC*ADvalue/1023; // 注意是1023才正確
printf("%.3f ",Vin); //輸出電壓顯示。
作者:
lele5211314
時(shí)間:
2020-2-29 17:07
什么ADC也不說清楚
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1