问一下关于单片机串口信号调制的问题,如何把串口发过来的二进制信息调制到40khz载波上去

项目要求:下位机使用单片机串ロ不断发送一个随机数值给上位机,上位机收到数据显示在显示框中。



1.1连接串口调试助手对其发送随机数据,串口助手发送0x00指令單片机串口停止发送数据,发送0x01指令单片机串口继续发送数据。

2.1 初始化定时器中断

2.3 编写串行口中断函数,接收来自PC机的数据


}


我没有stc单片机串口下载器用usb转串口的。本来应该是酱紫的


在软件上点下载,然后再把上面说的四个脚插到单片机串口上

查下串口针脚定义,给你个图!
这是RS232!不是TTL!电平不对的接了要烧
要是51单片机串口好像是需要冷启动烧程序
}

助理工程师, 积分 1098, 距离下一级还需 902 積分

0

助理工程师, 积分 1098, 距离下一级还需 902 积分

0
用c语言关键字union来解决

助理工程师, 积分 1098, 距离下一级还需 902 积分

0

助理工程师, 积分 1098, 距离下一级还需 902 积分

0
萣义一个“共用体”xxx,y作为“共用体变量”里面再定义一个char类型的变量数组c[4]和float类型的变量f。
根据union的定义里面的变量占用同一个内存地址。所以c[4]和f的内存地址是一样的,说的再通俗一点就是c[4]的4个数实际上就是f的四个字节。
接着前面提出的问题把3.141给了f,即f=3.141那么,你僦可以把c[4]数组的4个字节发送到串口调试助手了

高级工程师, 积分 6347, 距离下一级还需 1653 积分

0

高级工程师, 积分 6347, 距离下一级还需 1653 积分

0
0
0
3.141这个数在单片机串ロ中存储的4个字节分别是多少呢
你可以借助一个软件(浮点数十六进制转换器)来看,

中级技术员, 积分 263, 距离下一级还需 37 积分

0

中级技术员, 积分 263, 距离下一级还需 37 积分

0

中级工程师, 积分 4051, 距离下一级还需 949 积分

0

中级工程师, 积分 4051, 距离下一级还需 949 积分

0

正解事实上,我们一般对于基本存储类型8位的 比如EEPROM存储float变量,或者类似串口发送用的都是这个,关键是代码短效率高,完全不需要什么高低拆分、移位处理
扫描二维码,隨时随地手机跟帖
}

我要回帖

更多关于 单片机串口 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信