vip2128 发表于 2024-9-22 16:25:08

关于8g1k08a 串口中断收发

测试了01A-串口1中断收发-8PIN-C语言,可以看到发送数据后,能接收到发送的数据


如果8g1k08a rx tx是9600连接外设备, 发送2个命令字节,外设备会返回4个字节的数据,
那改如何接收这些数据并放进数组
代码要怎么写,

王昱顺 发表于 2024-9-22 18:11:15

请发一下源代码,我可以帮你修改一下
不然不知道你测试的是哪个代码

vip2128 发表于 2024-9-22 20:22:32

第一个01A 范例,stc8g1k08A串口隔一秒发送 0x58 0x08 , 返回的数据有4位,串口显示打印出来,并存入数组




vip2128 发表于 2024-9-22 20:23:44

王昱顺 发表于 2024-9-22 18:11
请发一下源代码,我可以帮你修改一下
不然不知道你测试的是哪个代码

源码以上...........

DebugLab 发表于 2024-9-22 22:07:44


使用指针指向数组地址,按顺序写入,并加入接收完毕和超时判断,让指针和数据包始终同步
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=4598

vip2128 发表于 2024-9-23 00:45:57

DebugLab 发表于 2024-9-22 22:07
使用指针指向数组地址,按顺序写入,并加入接收完毕和超时判断,让指针和数据包始终同步
https://www.stca ...

你的代码 圆周率我有试过,能打印圆周率,有这句
x%2?(pi-=4.0F/((float)x*2.0F+1.0F)):(pi+=4.0F/((float)x*2.0F+1.0F));
竟然能运行这样的代码,第一次见,刚开始还以为是病句,

x 和(pi+pi_last)/2 我也尝试用 SBUFR_BufferT_Buffer代替,但显示的是字节数的最大值,
跟缓存长度有关, 太复杂了,也不会改, 也删了没再搞了,
a玩stc寄存器也太复杂,要是stc系列能支持arduino就好了,github关于stc很稀少,也几乎不能用

晓飛飛 发表于 2024-9-24 23:29:41

vip2128 发表于 2024-9-23 00:45
你的代码 圆周率我有试过,能打印圆周率,有这句
x%2?(pi-=4.0F/((float)x*2.0F+1.0F)):(pi+=4.0F/((flo ...

你所谓“病句”是三目运算符写法,语法本身没毛病,现在一般不推荐用了
页: [1]
查看完整版本: 关于8g1k08a 串口中断收发