找回密码
 立即注册
查看: 930|回复: 6

关于8g1k08a 串口中断收发

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-06-16 09:02:44

5

主题

37

回帖

679

积分

高级会员

积分
679
发表于 2024-9-22 16:25:08 | 显示全部楼层 |阅读模式
测试了01A-串口1中断收发-8PIN-C语言  ,可以看到发送数据后,能接收到发送的数据


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

回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:499
  • 最近打卡:2025-06-16 10:06:31
已绑定手机
已实名认证

112

主题

2390

回帖

6014

积分

版主

积分
6014
发表于 2024-9-22 18:11:15 | 显示全部楼层
请发一下源代码,我可以帮你修改一下
不然不知道你测试的是哪个代码
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-06-16 09:02:44

5

主题

37

回帖

679

积分

高级会员

积分
679
发表于 2024-9-22 20:22:32 | 显示全部楼层
第一个01A 范例,stc8g1k08A串口隔一秒发送 0x58 0x08 , 返回的数据有4位,串口显示打印出来,并存入数组


STC8G系列-串口相关程序.rar (249.23 KB, 下载次数: 81)

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-06-16 09:02:44

5

主题

37

回帖

679

积分

高级会员

积分
679
发表于 2024-9-22 20:23:44 | 显示全部楼层
王*** 发表于 2024-9-22 18:11
请发一下源代码,我可以帮你修改一下
不然不知道你测试的是哪个代码

源码以上...........
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:468
  • 最近打卡:2025-06-16 07:06:57
已绑定手机

79

主题

5131

回帖

9138

积分

超级版主

DebugLab

积分
9138
发表于 2024-9-22 22:07:44 | 显示全部楼层

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

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-06-16 09:02:44

5

主题

37

回帖

679

积分

高级会员

积分
679
发表于 2024-9-23 00:45:57 | 显示全部楼层
Debu*** 发表于 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 我也尝试用 SBUF  R_Buffer  T_Buffer代替,但显示的是字节数的最大值,
跟缓存长度有关, 太复杂了,也不会改, 也删了没再搞了,
a玩stc寄存器也太复杂,要是stc系列能支持arduino就好了,github关于stc很稀少,也几乎不能用

点评

你所谓“病句”是三目运算符写法,语法本身没毛病,现在一般不推荐用了  详情 回复 发表于 2024-9-24 23:29
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:459
  • 最近打卡:2025-06-16 00:13:00
已绑定手机

37

主题

2221

回帖

2658

积分

荣誉版主

积分
2658
发表于 2024-9-24 23:29:41 | 显示全部楼层
vip2*** 发表于 2024-9-23 00:45
你的代码 圆周率我有试过,能打印圆周率,有这句
x%2?(pi-=4.0F/((float)x*2.0F+1.0F)):(pi+=4.0F/((flo ...

你所谓“病句”是三目运算符写法,语法本身没毛病,现在一般不推荐用了
睁开眼睛做场梦~~~
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-16 16:06 , Processed in 0.170836 second(s), 89 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表