STM32如何实现波特率自适应(通过一个键盘来控制STM32单片机做成的设备,因为我键盘的波特率有好几种)

 我来答
lazycatnet
推荐于2016-02-29 · TA获得超过2850个赞
知道小有建树答主
回答量:1390
采纳率:0%
帮助的人:879万
展开全部
所谓串口的波特率自适应,如果你的键盘是发送固定格式的报文,那么需要进行波特率检测,就是把所有波特率全部试一遍,得到那个固定格式的报文的就是应该有的波特率。
按照这个思路去写程序,不然你做不到波特率自适应。当然也许你会想到更好的算法。
另外一个办法是让键盘发一个带有0和1的报文序列。这样通过判断脉冲宽度也可以得到波特率,不过这个办法复杂了点。
追问
键盘里有许多种协议码,其中有一种协议码为:0XFC 0XFF 0XDD 没有固定的格式,我的初步想法是通过判断第一个字节来计算波特率,可是我不知道如何一位一位的接收,要是知道了后我就可以通过算出一位所需的时间就是波特率了,不过这之间还牵扯到许多算法,你能告诉我单片机串口如何一位一位的接收数据吗?谢谢……
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
luke242
2011-12-06 · TA获得超过152个赞
知道小有建树答主
回答量:314
采纳率:0%
帮助的人:82.5万
展开全部
程序做好每种波特率,通过协议自适应扫描
追问
你这种方法对有特定的一个字节来检测波特率时有用,但对一上电就发一串不知道的字符串时就不行了吧?请说的详细点,谢谢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式