在网上找的stm32的dht11程序,编译的时候出现错误,提示#268 error declaration may not appear after excutable statement in block,看看最后的解决方法。
出错的代码片段
int main(){
SystemInit();
systick_init();
usart_config();
LED_Init(); while (1)
{
Led_On;
u8 buffer[5];
double hum;
double temp;
if (dht11_read_data(buffer) == 0)
{
hum = buffer[0] + buffer[1] / 10.0;
temp = buffer[2] + buffer[3] / 10.0;
}
usart_printf("___{\"temperature\": %.2f, \"humidness\": %.2f}___\n", temp, hum);
delay_us(2000000);
Led_Off;
delay_us(2000000);
}
}看看错误提示

变量的声明,不能放在可执行语句的后面,必须在主函数开头声明变量!
所以,我们按提示,把变量声明放前面去,错误就没了。
int main()
{
u8 buffer[5];
double hum;
double temp;
SystemInit();
systick_init();
usart_config();
LED_Init(); while (1)
{
Led_On;
if (dht11_read_data(buffer) == 0)
{
hum = buffer[0] + buffer[1] / 10.0;
temp = buffer[2] + buffer[3] / 10.0;
}
usart_printf("___{\"temperature\": %.2f, \"humidness\": %.2f}___\n", temp, hum);
delay_us(2000000);
Led_Off;
delay_us(2000000);
}
}记录一下,分享给大家。
欢迎关注微信公众号:泛米米的小菜园
12本阳台种菜电子书限时免费送
关注【泛米米的小菜园】,发送“电子书”免费获取
随时随地在手机上学习交流阳台种菜
这篇文章出自 fanmimi 如需转载请注明出处;
这篇文章的地址:https://fanmimi.com/2020/467.html
本站部分资源收集于网络,纯个人收藏,无商业用途,如有侵权请及时告知!
微信公众号查淘宝天猫专属优惠券方法图解,只需3步,每单立省几十元
点击率超过100万次的家教秘诀!
网站隐私协议
【限时免费领】20本家庭养花种菜必备书,助你成为一名养花种菜达人!
甲有5套房,不上班,靠收房租生活;乙有1套房,上班赚工资…
值得品味一生的精言妙语
LOVE的数字密码,你知道多少?(千万别错过哦)
写给那些在工厂上班的朋友