野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9302|回复: 2

发送一个命令使ADC开始采集电压

[复制链接]
发表于 2017-3-20 18:39:58 | 显示全部楼层 |阅读模式
ADC测量电压时,我想用串口发送n和f命令使ADC开始测量电压显示在串口调试助手上,o时测量电压不停循环发送,f停止;可是我现在写了之后开启o时只能发送一次,循环发送就停止不了会选入死循环,
各位大神 能否帮忙解决怎么循环发送不陷入死循环,f后会停止
这是我的main函数中的while

while(1)
  {
                ch=getchar();
                if(ch=='o')
                {
                        LED_GREEN;
                        ADC_ConvertedValueLocal=(float)ADC_ConvertedValue/4096*3.3;
                        I=(ADC_ConvertedValueLocal*1000)/R;
                        printf("\r\nThe cunrrent Value = 0x%o4X \r\n",ADC_ConvertedValue);
                  printf("\r\nThe cunrrent Value = %f  V \r\n",ADC_ConvertedValueLocal);
                        printf("\r\nThe cunrrent Value = %f  mA\r\n",I);
                   printf("\r\nstop\r\n");
                  Delay(0xFFFFFF);       
                }else if(ch=='f')
                {
                        LED_RED;
                }
                else
                {
                        LED_BLACK;
                       
                }
               
        }
}



但是只能发送一次,接收一次,不能发送一次,循环接收。
回复

使用道具 举报

发表于 2017-3-21 14:07:15 | 显示全部楼层
输出完后不用加delay,并把ch变量赋值成初始值
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-3-21 14:50:01 | 显示全部楼层
flyleaf 发表于 2017-3-21 14:07
输出完后不用加delay,并把ch变量赋值成初始值

还是发送一次接收一次  除非点击自动发送
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-7 07:52 , Processed in 0.028595 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表