久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

自己摸索寫了一段單片機三通道輪詢方式檢測ADC的值,好像不正確,請大家指點

查看數: 2315 | 評論數: 5 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2022-1-5 09:25

正文摘要:

本帖最后由 zhth1979 于 2022-1-7 11:31 編輯 前兩天發(fā)了求助帖,但沒有什么找到這方面的例程 ,自己摸索寫了一段三通道輪詢方式檢測ADC的值,好像不正確,請大家指點!單片機型號:STC8H3K32S2 #inclu ...

回復

ID:301191 發(fā)表于 2022-1-6 18:34
頂一下
ID:686513 發(fā)表于 2022-1-6 15:15
本帖最后由 zhth1979 于 2022-1-6 15:25 編輯
wulin 發(fā)表于 2022-1-6 10:51
這是ADC.C ,形參CH范圍0~14。供主函數調用GetADCResult(x);。

這個不錯,應該可以用!但這兩句是什么意思?沒看懂。#define ADCTIM  (*(unsigned char volatile xdata *)0xfea8)    #define ADC_EPWMT   0x10                        //使能 PWM  實時觸發(fā) ADC                     0001 0000    在我這個應用中應該沒作用吧?
ID:213173 發(fā)表于 2022-1-6 10:51
這是ADC.C ,形參CH范圍0~14。供主函數調用GetADCResult(x);。
  1. #include <STC8G.H>
  2. #include "intrins.h"
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. #define ADCTIM  (*(unsigned char volatile xdata *)0xfea8)
  6. //宏定義ADC的操作命令
  7. #define ADC_POWER   0x80                        //ADC power control dit (宏定義ADC電源控制位)1000 0000
  8. #define ADC_START   0x40                        //ADC start control dit (宏定義ADC啟動控制位)0100 0000
  9. #define ADC_FLAG    0x20                        //ADC complete flag (宏定義ADC完成標志位)    0010 0000
  10. #define ADC_EPWMT   0x10                        //使能 PWM  實時觸發(fā) ADC                     0001 0000

  11. //InitADC 初始化ADC
  12. void Init_ADC()
  13. {        //ADC 控制器  電源  啟動  完成  --   15通道模擬選擇位
  14.         //ADC_CONTR    B7    B6    B5   B4   B3   B2   B1   B0
  15.         P_SW2 |= 0x80;                        //打開
  16.         ADCTIM = 0x3f;                        //設置 ADC 內部時序
  17.         P_SW2 &= 0x7f;                        //關閉
  18.         ADCCFG = 0x27;                        //設置ADC結果右對齊,速度為512系統(tǒng)時鐘
  19.         ADC_RES=0;                                //清除ADC_RES存儲器以前的結果
  20.         ADC_RESL=0;
  21.         ADC_CONTR=ADC_POWER; //ADC 開啟電源
  22.         delayms(1);                                //上電延時1ms                                                                                       
  23. }

  24. //        讀取ADC結果
  25. uint GetADCResult(uchar CH)
  26. {
  27.         ADC_CONTR=ADC_POWER|ADC_START|CH;//啟動轉換1100 1000
  28.         _nop_();_nop_();                                //小延時
  29.         while (!(ADC_CONTR & ADC_FLAG));//等待ADC轉換完成標志置位 1010 0000
  30.         ADC_CONTR &=~ADC_FLAG;                        //清完成標志
  31.         return ADC_RES<<8|ADC_RESL;                //返回十位ADC結果
  32. }
復制代碼

ID:686513 發(fā)表于 2022-1-6 08:38
lkc8210 發(fā)表于 2022-1-5 17:52
main呢?
while(1)呢?

這個是子程序,main在主程序里呢。
ID:161164 發(fā)表于 2022-1-5 17:52
main呢?
while(1)呢?

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 色视频网站免费 | 亚洲国产黄 | 亚洲精品国产偷自在线观看 | 九色91视频| 一区二区三区四区在线播放 | 精品国产99 | h视频免费在线观看 | 亚洲欧美自拍偷拍视频 | 午夜久久av | 日韩高清电影 | 国内精品视频免费观看 | 国产精品成人一区二区三区 | 99色综合 | 精品1区2区 | 美女在线视频一区二区三区 | 一级欧美日韩 | 99久久夜色精品国产亚洲96 | 亚洲成人免费av | 国产免费一区二区三区免费视频 | 欧美久久久久 | 精品久久伊人 | 精品久久久一区 | 亚洲精品一区中文字幕乱码 | 激情五月综合 | 国产视频欧美 | 国产极品粉嫩美女呻吟在线看人 | 亚洲国产成人精品女人久久久 | 日韩一级黄色片 | 欧美成人不卡 | 免费能直接在线观看黄的视频 | 国产亚洲一区二区三区在线观看 | 精品久久久久久亚洲综合网站 | 国产成人综合一区二区三区 | 精品一区二区三区在线观看国产 | 天天夜碰日日摸日日澡 | 久久久亚洲一区 | 久综合 | 亚洲一区二区三区视频在线 | 国产日本精品视频 | 久久99精品国产 | 欧美日韩在线成人 |