本帖最后由 芯圣电子官方QQ 于 2023-7-20 09:48 编辑
因为懒,许久未来更新,不过学习还是没有停止。今天我们介绍用芯圣SQ013模拟串口。
串口通讯概述
我们常用的串口通讯协议 为1个起始位+8个数据位+1位结束位。起始位为低电平,结束位高电平。一般我们常用的串口通讯协议是三线制 TXD RXD GND 。我们设置波特率9600bps ,即1秒钟发送9600个码元 ,传输一位时间为1s/9600 = 104us.
单片机概述
我使用的是芯圣SQ013单片机 ,是一颗8位精简指令集单片机,支持C语言,汇编编程,但由于没有硬件UART,所以我们采用IO口进行模拟。
程序代码
实现现象首先我们需要一个USB转串口模块,CH340,CP2102都行。
本例程序我们只验证串口发送。
程序执行现象为上电1s后 上位机接收3句Hello,World! 睡眠。
此处为了展示1s发送一次,我将睡眠语句注释了。
延时法最初我设置的值为27,用逻辑分析仪发现时间为111.1us
此处设置值为26 ,时间为107.4us
此处设置值为25,时间为104.3us
结束语 以上数据都为实际芯片测试,仿真器测试时发现设置值为25时,时间为102us,但图片没有保存下来。有机会再测试一下。
|