通过串行设置值到微控制器

Setting value to microcontroller over serial

本文关键字:控制器 设置      更新时间:2023-10-16

我目前正在做一个项目。我正在从计算机上的程序发送UDP消息,到一个通过串行连接的核F303RE微控制器的树莓派。微控制器有一个传感器和一个led连接。如果传感器电压降至特定值以下,led将点亮。从我的程序中,我向树莓派发送一个UDP消息,树莓派将其转发到串行端口和微控制器。在程序中设置触发值"d"只能工作一次。第一次设置后,它就不让我再设置了。我已经找了一天了,但还没有找到任何解决办法。有人知道吗?

#include "mbed.h" 
DigitalOut Vcc(PA_0);
AnalogIn aInnA1(PA_1);
DigitalOut Gnd(PA_4);
DigitalOut myled(PA_6);
static float voltage1=0.0f;

void utspenning() 
{
float voltage1 = aInnA1*3.3f;  
printf("$VOLTAGE,A1,%.2frn" ); // This sends value back to the program
}
int main()
{
Vcc=1; Gnd=0;
char e [9];
while(1)
 {   
 scanf("%[^rn]s",e); // Reads my input from the program
 float d = atof(e);
    if (voltage1 > d ) 
        {
                    myled = 1;
        }
    if (voltage1 < d ) //  
             {
                myled = 1;
                wait(0.1);
                myled = 0;
                wait(0.1); 
            }
}}

我不熟悉这个微环境或您正在开发的环境,但我怀疑需要将voltage1声明为易失性