51单片机法度模范 及调试步调 实战经验

[复制链接]
查看255 | 回复1 | 2023-3-13 03:31:56 | 显示全部楼层 |阅读模式
我刚加入 工作的时候,用的是stc 51单片机的,51单片机不像stm32那样可以通过st-link在keil上面在线仿真。
有时候涌现 bug的时候,异常 难找问题,要一段一段屏蔽然后测试。
在刚开始接触开发的时候,我异常 不习习用 在线仿真,年夜 概是因为没用过。
记得有一次进了一家公司做行车记录仪,用的台产GRAIN的单片机。
那时候基本上没什么资料,就一个dada sheet和demo法度模范   。
在开发之前,老年夜 支配 了给我一个任务,就是把这个仿真环境先给搭起来。
相当于是他们原厂没有的器械 ,让我去搞定,这个芯片是基于Fa626TE core的32位控制器。


网上的资料太少了,光是测试搭建这个环境花了半个多月,最后还没搭建出来。
那个时候完全是懵逼状态,摸着石头过河,不知道仿真啥原理,横竖 网上搜到一个我就试一个。
做这个之前基本都是在做51的器械 ,所以对我来说太难了,加上资料又少,就是跨级打boss。
后面我有点不耐烦,就跟老年夜 说:这个我不消 仿真了,以前不消 仿真照样也能把产品  做出来。
后来老年夜 思考了一下,还是希望能想把仿真搞出来,我有点瓦解 ,实在想不明白为何他这么执拗 。
当我后面慢慢接触32位的单片机多了,开发的产品  多了,我才真正体会到了仿真的利益 。
毫不夸张地说,用好仿真,你的开发效率至少提高3倍,这里说的不是仿真软件。
拿stm32单片机举例,用st-link+keil在线硬件仿真,不只 能监控法度模范   怎么跑的,还能监控跑进程 中变量的值的变更 ,指针地址的变更 。
用熟了你就知道,特别是做指针的应用,实在太香了,有时候指针指来指去,你的理解可能只是在自己的理论层面上,而用仿真你可以监控到指针的指向变更 。
那像51这种,不克不及 像stm32那样用st-link在线仿真怎么办?(现在51似乎 也有了,具体没用过)
年夜 家别小看51单片机,有些51内核的ROM都有几十K,最终产品  法度模范   的年夜 小并不会比stm32的小。
这种如果没仿真,那涌现 一个BUG,够你调半天了。
在曩昔 的开发中,我也总结了一些经验,年夜 家可以借鉴下。
我一般是借助产品  硬件上一切能作为提示的器械 ,比如  说:
1.数码管
2.LCD
3.LED灯
4.串口
我在开发法度模范   的时候,第一个做的肯定是点亮一个LED灯。
点亮LED能够最快地让你验证硬件核心部分  (单片机最小系统)有没有问题,
点亮以后,我再开一个准时 器它每秒闪烁1次,直到产品  年夜 多半 功能  完成。
这样做的利益 就是可以验证你法度模范   有没有跑着跑着死机之类的问题,如果有,那就及时解决,不然  后面法度模范   年夜 了找起来会更难。
如果有数码管和LCD,调试起来会加倍 轻车熟路 ,直接在数码管和LCD上显示要调试的数据即可,虽然没仿真这么便利 ,然则 总比都没有好。
还有就是串口,一般硬件在第一次打板的时候,我都邑 把串口预留出来,便利 调试,特别是做物联网产品  ,串口调试可以说是必备的。
主要作用就是用来监控MCU和WiFi模组之间的通讯数据。
最后,还有一种情况就是产品  啥都没有,连LED都没有,这种情况该怎么办?
这种情况就只能听天由命了,完全靠你的开发经验。
一般第一板硬件设计成这样的,都是初级水平工程师,经验不足。
即便你产品  用不到那些资源,好歹把串口或者LED预留出来,把整体功能  调试完以后最终一板把它去失落 不就行了?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

笑谈一天傧 | 2023-3-13 03:32:35 | 显示全部楼层
逻辑剖析 仪
回复

使用道具 举报

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

本版积分规则

24

主题

34

回帖

142

积分

注册会员

Rank: 2

积分
142