[DemoCode下载] N76E003的ADC例子,可以用于SDCC编译器

[复制链接]
 楼主| jiekou001 发表于 2020-10-21 20:23 | 显示全部楼层 |阅读模式
  1. #include "N76E003.h"
  2. #include "SFR_Macro.h"
  3. #include "Function_define.h"
  4. #include "Common.h"
  5. #include "Delay.h"

  6. /* Needed for printf */
  7. int putchar (int c) {
  8.   while (!TI);
  9.   TI = 0;
  10.   SBUF = c;
  11.   return c;
  12. }


  13. unsigned int ADC_read(void)
  14. {
  15.         register unsigned int value = 0x0000;
  16.           
  17.         clr_ADCF;
  18.         set_ADCS;                                                                       
  19.         while(ADCF == 0);
  20.           
  21.         value = ADCRH;
  22.         value <<= 4;
  23.         value |= ADCRL;
  24.           
  25.         return value;
  26. }


  27. void main (void)
  28. {
  29.         unsigned int ADCValue;
  30.         float fVoltage;
  31.         InitialUART0_Timer3(115200);
  32.         TI = 1;
  33.        
  34.         /* Enable AIN0 pin for ADC read */
  35.         Enable_ADC_AIN0;
  36.                
  37.         while(1)
  38.         {
  39.                 ADCValue = ADC_read();

  40.                 /* warning: considering 5v VDD and no calibration */
  41.                 fVoltage = ((float) ADCValue * 5) / 4095;
  42.        
  43.                 printf_fast_f("\n Voltage: %.3f", fVoltage);
  44.                
  45.                 Timer0_Delay1ms(500);
  46.         }
  47. }


nawu 发表于 2020-11-10 13:47 | 显示全部楼层
是新唐专用的编译器吗
qcliu 发表于 2020-11-10 13:49 | 显示全部楼层
采样速率在哪里配置啊
tfqi 发表于 2020-11-10 13:50 | 显示全部楼层
用的查询方式啊
wiba 发表于 2020-11-10 13:50 | 显示全部楼层
这样用有些耗费资源
zljiu 发表于 2020-11-10 13:50 | 显示全部楼层
非常实用的例程
 楼主| jiekou001 发表于 2020-11-19 15:49 | 显示全部楼层
zljiu 发表于 2020-11-10 13:50
非常实用的例程

是的,非常实用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

147

主题

1502

帖子

2

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

147

主题

1502

帖子

2

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