本人想用Arty A7 35T做一些基于蜂鸟E203的串口交互开发,目前已经移植并且成功运行了printf函数。
在测试scanf函数的时候,发现结果不理想(好吧其实就没反应),于是读源码,看到了下面这句话
请问是不是没救了?我只想读出串口接收的数据,这个方案是不是不可行?
一般写嵌入式程序不用printf或scanf函数,以节约程序存储空间。
通常都是使用底层寄存器,保存接受的字节,根据需要转换数据类型。
稍微高级一点的,会用串口接收中断,再高级一点的会加入FIFO、DMA之类功能模块,减少CPU的工作负担。
如果不支持scanf函数的话,怎样才能读取串口接收到的简单数据呢?通过底层寄存器吗?