在测试电路板时,想通过串口发一个字符串来控制电路上的LED灯亮灭。结果在编写程序时,一直调不通。程序如下。
if(USART_RX_BUF[]=="abc"){LED0(0);LED1(1); delay_ms(500);LED0(1);LED1(0); delay_ms(500);}
可是灯一直都没有反应。
请教了资深的软件工程师,这是怎么回事?他看了一下我的程序,然后说我的程序写错了,因为C语言没字符串String这种类型,不能直接操作String,应该是逐个字符操作再与操作。程序修改如下。
if(USART_RX_BUF[0]=='a'&&USART_RX_BUF[1]=='b'&&USART_RX_BUF[2]=='c'){LED0(0);LED1(1); delay_ms(500);LED0(1);LED1(0); delay_ms(500);}
果然,用了修改的程序编译后下载到电路板上,灯可以被控制点亮和熄灭了。
最后,资深的软件工程师补充了一下,C语言没有字符串String的类型,但是C 有,以后用到C 编程时,是可以直接操作字符串的。
听君一席话 ,胜读十年书,又学到了一个知识点,提升能力就是需要一点一滴地积累。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。