关于stm8的调试方法

apple_fl 2013-10-25 12:47:32
我目前在学习stm8板子,弄了个stm8l051芯片的温度传感器模块,程式思路是利用定时器每隔500ms去采集adc转换过来的温度数据,显示到LED数字灯上,但实际测试时发现它并一定按照这个时间间隔去采集,有时15秒,有时几秒,我想利用printf跟踪,但发现printf也会被中断,请问还能怎么调试跟踪的方法?我用的是iar for stm8软件
...全文
449 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
cpuwolf 2013-10-27
  • 打赏
  • 举报
回复
另外可以尝试一下我刚移植好的atom threads ,你说的计时和串口打印都已经可以用了 https://github.com/cpuwolf?tab=activity
cpuwolf 2013-10-27
  • 打赏
  • 举报
回复
买个非官办的调试st link只需10元
dceacho 2013-10-26
  • 打赏
  • 举报
回复
引用 5 楼 apple_fl 的回复:
[quote=引用 4 楼 wangfan027 的回复:] 流程不复杂应该很好调试啊,间隔时间长达十几秒,多暂停几次就应该能发现时间耗在哪了
现在我自己写的是比较简单,刚刚想到在某一行给变量赋值来跟踪,也算凑合用。如果是复杂的那种,会有哪些调试方法找bug?[/quote] 一般都是先猜后想办法验证
apple_fl 2013-10-25
  • 打赏
  • 举报
回复
引用 8 楼 zhong419040805 的回复:
讲printf的数据放到buff然后在串口中断发送出来,不影响原始代码
好主意,我明天试试
Kwolve 2013-10-25
  • 打赏
  • 举报
回复
讲printf的数据放到buff然后在串口中断发送出来,不影响原始代码
zhxianbin 2013-10-25
  • 打赏
  • 举报
回复
排除法,逐步增加代码
蛋蛋_rmvb 2013-10-25
  • 打赏
  • 举报
回复
波特率设置的高一点,可以减少printf的时间,
apple_fl 2013-10-25
  • 打赏
  • 举报
回复
引用 4 楼 wangfan027 的回复:
流程不复杂应该很好调试啊,间隔时间长达十几秒,多暂停几次就应该能发现时间耗在哪了
现在我自己写的是比较简单,刚刚想到在某一行给变量赋值来跟踪,也算凑合用。如果是复杂的那种,会有哪些调试方法找bug?
dceacho 2013-10-25
  • 打赏
  • 举报
回复
流程不复杂应该很好调试啊,间隔时间长达十几秒,多暂停几次就应该能发现时间耗在哪了
woshi_ziyu 2013-10-25
  • 打赏
  • 举报
回复
可以看看这篇文章 Debug (printf) Viewer
apple_fl 2013-10-25
  • 打赏
  • 举报
回复
引用 1 楼 xinstruggle 的回复:
在官网上下载一个ST-toolset试试,可以在线调试。之前一直在用这个软件。当然你还需要一个ST-LINK仿真器!淘宝上可以买到。
我已经在用ST_LINK了,但我想问的是,我想跟踪代码运行的整个过程,以往看Linux驱动代码时,我会用到printf来查看代码走过哪些地方,以及在哪里死循环。 现在面对单片机,我用实时中断处理温度采集时,看起来printf也会被中断掉
  • 打赏
  • 举报
回复
在官网上下载一个ST-toolset试试,可以在线调试。之前一直在用这个软件。当然你还需要一个ST-LINK仿真器!淘宝上可以买到。

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧