打印

问个模拟串口的问题

[复制链接]
1104|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
popeye021|  楼主 | 2014-12-26 14:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
wang168506| | 2014-12-26 15:05 | 只看该作者
异步的话  波特率确实很成问题这样   同步的好些!

使用特权

评论回复
板凳
popeye021|  楼主 | 2014-12-26 16:03 | 只看该作者
wang168506 发表于 2014-12-26 15:05
异步的话  波特率确实很成问题这样   同步的好些!

异步的话,软件模拟串口一方的波特率误差太大?

从实现上来说,是不是用异步的方式要简单一点?

使用特权

评论回复
地板
wang168506| | 2014-12-26 17:20 | 只看该作者
popeye021 发表于 2014-12-26 16:03
异步的话,软件模拟串口一方的波特率误差太大?

从实现上来说,是不是用异步的方式要简单一点?

对额  请问你怎么模拟时钟输出呢?for 语句?应该是不大稳妥的办法吧  其实同步异步都不难   同步串行通信 就不存在时钟问题了の

使用特权

评论回复
5
ningling_21| | 2014-12-26 19:33 | 只看该作者
popeye021 发表于 2014-12-26 16:03
异步的话,软件模拟串口一方的波特率误差太大?

从实现上来说,是不是用异步的方式要简单一点?

模拟异步串口需要用到定时器,如果定时器被其它中断打断会造成数据出错...

使用特权

评论回复
6
popeye021|  楼主 | 2014-12-27 19:16 | 只看该作者
ningling_21 发表于 2014-12-26 19:33
模拟异步串口需要用到定时器,如果定时器被其它中断打断会造成数据出错... ...

你说的被其他中断打断是指其他中断优先级更高导致执行定时中断的时候响应其他中断,导致波特率不准?

使用特权

评论回复
7
huayuliang| | 2014-12-27 19:48 | 只看该作者
模拟串口所用的定时器被中断·····既然已经知道会存在这个问题,你可以屏蔽掉其他中断啊。
曾在一个项目里使用了个模拟串口,AVR的,自带两个串口,都被占用(一个485,一个CDMA),俺又不想搞什么复用,干脆模拟了个串口。嗯,俺在网上找了个现成的程序,使用时确实发现了点问题,不过都解决了,主要是波特率不能高。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

86

主题

455

帖子

4

粉丝