这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 如何将单片机的可用函数发生器当串口发送器使用

共6条 1/1 1 跳转至

如何将单片机的可用函数发生器当串口发送器使用

高工
2019-12-03 22:49:05     打赏

1.可用函数发生器当串口发送器用

如果你要调试串口,只有一块扳,计算机又不在手边,你可以用函数发升器当串口发送器来用,如你的波特率是9600,那你把函数发生器频率调到9600/2=4800HZ上输出TTL电平直接到RXD上就行了,如果是RS232接口,你频率不变就选函数发生器双极性(交流输出)就是了,注意电平有峰峰值12VPP就够了,此时你的单片机收到数据必须是55H,你可以用MOV P1,SBUF,在P1上去测电压,这样没显示也可测试串口了。

如何将单片机的可用函数发生器当串口发送器使用

理论依旧:55H 是01010101 串口启始位是0,先发55H最低位,于是一帧就是0(启始)101010101(停止)。0(启始)101010101(停止)。正好是1/2波特率的方波。

2.如果你的串口要实现远距离传输,你怎么知道传输的可靠性和信号与传输媒介的适配性呢?

你可以这样来做:发送00H 0FFH 55H,如果这三个值都能正确接受,那网络一定能可靠传输了,这就是以点代面的测试方法。

理由:00H 0FFH是最宽的脉冲和电平(代表能量)最大/最小的脉冲,用信号系统话说他们代表是直流,而55H是最窄脉冲,它代表是最高频和能量中间值。既然最低的能过,最大也能过,最宽能过最窄也能过,大能量(抗干扰强)低能量(代表抗干扰弱)中能量也能过,你会相信中间的和中不垃圾的过不了吗!

3.用同步头初始实现波特率自适应和判断数据包起始

同步头用谁?------7FH,且开始同步时连续发送!

看7FH的发送 0起始11111110---1停止

瞧011111110多对称!当你收到两个0中间夹了连续个1的数据后,只要用连续1的时间除以0的持续时间=7,说明这就是同步头了,且一个标准码元持续时间就是码元0的持续时间,其波特率=1/(0码元持续时间)




院士
2019-12-04 00:39:59     打赏
2楼

这个想法还挺有意思。

只不过,人家串口可是10位的数据位。


工程师
2019-12-04 22:53:51     打赏
3楼

赞同楼上说的问题


工程师
2019-12-05 21:10:14     打赏
4楼

很有道理


助工
2019-12-07 21:55:32     打赏
5楼

同步时连续发送这个恩不错


工程师
2019-12-10 20:04:47     打赏
6楼

串口数据位不对吧


共6条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]