久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機之AD學習筆記
[打印本頁]
作者:
mcs51hello
時間:
2016-1-6 14:04
標題:
單片機之AD學習筆記
最近調試了幾個單片機的AD轉換模塊,碰到了一些問題,總結了一下
AD轉換就是選通道、比較電壓、要采集電壓的端口設置為模擬端口
1、選擇參考電壓源
2、選擇AD轉換時鐘
3、要采集電壓的端口設置為模擬端口
4、選擇要采樣的模擬通道
5、使能AD模塊
PIC24FJ
開始看此部分是調試電池電量的時候,是由于電池電量顯示不準確,debug模式下,看ad采集到的電壓被轉換成的數據,發現寄存器ADC1BUF中的數據只有關開機是正確的,以后的值都是不對的好像大多數的值是零,后來發現是由于在主循環中的某個模塊又把原來配置為模擬輸入端口引腳還原成了普通的I/O口了(就是AD1PCFGbits.PCFG0先被配置為0后又被置1,我用的是通道0)。
A/D代碼初始化實例
AD1PCFG = 0; // 配置ad端口,配置所有端口為模擬端口,要是作為普通io使用必須置1
AD1CON1 = 0x2208; // 配置采樣時鐘源
AD1CON2 = 0; // 配置A/D 比較電壓,轉換在每個采樣結束后開始
AD1CON3 = 0; // 配置 A/D 轉換時鐘 是 Tcy/2
AD1CHS = 0; // 配置輸入通道,CH0+ 輸入AN0,CH0- 輸入 Vr- (AVss).
AD1CSSL = 0; // 輸入掃描被禁止
IFS0bits.AD1IF = 0; // 清中斷
IPC3bits.AD1IP2 = 1;
IPC3bits.AD1IP1 = 1;
IPC3bits.AD1IP0 = 0; // 配置 A/D中斷優先級
IEC0bits.AD1IE = 1; // 使能 A/D 中斷
AD1CON1bits.ADON = 1; // 打開 A/D
AD1CON1bits.SAMP = 1; // 開始采樣輸入
Delay(); //延時,確保開始轉換時,采樣的時間已結束
AD1CON1bits.SAMP = 0; // A/D采樣結束,開始轉換
中斷
void __attribute__ ((__interrupt__)) _ADC1Interrupt(void)
{
IFS0bits.AD1IF = 0;
}
在pic的數據手冊中有比較詳細的例程,值得參考
MSP430
這個單片機的比較電壓可以選擇內部或外部的
問題:AD轉換,單通道單次轉化和單通道多次轉換有什么區別
單次轉換是指進行一次轉換前需要你給一次指令。
連續轉換的話開啟后自動連續進行轉換,轉換的數據連續進行更新。
如果你采用單次轉換,就需要不斷發送轉換的命令,讀取結果,再發轉換命令,再讀。就是循環啦。
如果連續轉換開啟的話,就在程序中循環讀就可以了。
STM32
在采集電池電壓時遇到了問題,3.9v到4.2v的電壓得到的ad轉換的電壓值的寄存器存儲的電壓值正常,3.9v以下的值不正確,發現是Vref+輸入的比較電壓不穩定造成的。
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
日韩视频一区二区
|
亚洲 欧美 日韩 在线
|
精品在线观看视频
|
国产精品嫩草影院桃色
|
日韩激情久久
|
欧美日韩在线观看一区二区
|
三级a毛片
|
www欧美
|
黑人精品xxx一区一二区
|
国产成人精品av在线观
|
a视频在线
|
亚洲毛片网
|
色综合天天综合网天天狠天天
|
国产精品无遮挡
|
国产中文
|
婷婷久久五月
|
国产黄色av
|
一区二区三区视频在线
|
糖心vlog精品一区二区
|
a级片毛片
|
国产精品久久免费
|
成人午夜又粗又硬又大
|
国产精品久久久久久无人区
|
91成人精品一区在线播放
|
久久精品日韩
|
日日夜夜精品免费
|
欧美色图在线观看
|
一区二区高清视频
|
插插插视频
|
成人高潮片免费视频
|
国产一区二区三区精品视频
|
a级黄毛片
|
成人国产精品视频
|
免费av网站在线观看
|
日韩一区二区三区在线
|
日本a v在线播放
|
亚洲天天干
|
国产在线视频网站
|
亚洲精品999
|
日韩精品综合
|
中文字幕理论片
|