[电表应用] 请版主提供一个SH88F516的AD例程(C语言),谢谢

[复制链接]
1519|3
 楼主| njapple 发表于 2017-6-18 17:36 | 显示全部楼层 |阅读模式
如题,谢谢
datouyuan 发表于 2017-6-19 16:37 | 显示全部楼层
拿走,不谢。
  1. void InitADC(void)
  2. {
  3.         ADCON        =        0x80;                //允许ADC模块
  4.         ADT                =        0xee;
  5.         /*        ADC时钟为系统时钟的32分频,T(ad) = 32*(1/16M) = 2us
  6.                 ADC采样时间为15个ADC时钟,T(s)= (14+1)*T(ad) = 30us
  7.                 ADC转换时间为12*T(ad) + T(s) = 54us
  8.         */

  9.         ADCH = (1<<7)|(1<<6);        //通道配置 AN7 AN6
  10. }

  11. //调用前ch对应pin一定要设置在ad模式
  12. uint8 GetADC_8(uint8 ch)
  13. {
  14.         ADCON = 0x80+ch*2;        //选择通道
  15.         ADCON |= 0x01;                //开始ADC转换
  16.         while(ADCON&0x01);
  17.         return ADDH;                //8bit
  18. }

  19. //调用前ch对应pin一定要设置在ad模式
  20. uint16 GetADC_16(uint8 ch)
  21. {
  22.         ADCON = 0x80+ch*2;        //选择通道
  23.         ADCON |= 0x01;                //开始ADC转换
  24.         while(ADCON&0x01);
  25.         return ADDH*4+ADDL;        //10bit
  26. }
 楼主| njapple 发表于 2017-6-29 21:51 | 显示全部楼层
多谢!
amw1688 发表于 2017-8-10 10:30 | 显示全部楼层
更多例程,免费送加Q:2714266616
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

6

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部