您的位置 首页 模拟

程序移植中的常见问题总结

现象:芯片驱动正常,功能应用单独实现也没有任何问题。但是将其移植到主程序中出现了时钟显示停止、触屏失效、参数显示出现问题的现象。原

现象:

芯片驱动正常,功用使用独自完成也没有任何问题。可是将其移植到主程序中呈现了时钟显现中止、触屏失效、参数显现呈现问题的现象。

原因:
在芯片驱动程序的开发中,疏忽了一个问题。那就是该芯片引脚占用的IO资源在初始化的时分不应该改动其他引脚的正常功用作业。初始化芯片时人为的改动了其他功用引脚的效果。将其功用复用功用人为了改成了输出引脚。只重视了该芯片正常作业时的IO引脚,疏忽了其他各IO口的复用状况。后逐条剖析检查原主程序中 IO的初始化操作,逐口比对发现了该问题。

解决方案:
从头对接口进行初始化,保存其他引脚的功用复用效果。

总结:
作业要详尽,不要犯想当然的缺点。呈现问题后要镇定,咬人是不对的,呵呵。。。

一、关于延时

芯片时序要求十分严厉,最基本的时刻单位必定要十分准确,准确到微秒级。这是进行后续作业的根底。由于C言语来编程,不是很好操控延时的长短。故选用测验的办法进行,为了最大或许的减小差错,选用延伸测验时刻的方法进行。其基本思想是延时必定时刻后,将其时刻在屏幕上打印出来,并剖析各两次时刻的距离和详细延时参数之间的联系。例如:当延时参数为60000000时,各两次时刻距离是否小于1分钟。【补白:60000000us=1min】

二、对芯片的读写操作验证

进行芯片自我验证,向芯片暂存器的固定字节写入数据,然后一个字节一个字节读出来,比对写入和读出的数据是否相同。

三、非易失操作的必要性

RAM数据暂存器用于内部核算和数据的存取,数据在掉电后丢掉。为长时间保存需求保存的数据信息,需求将相关数据信息由暂存器拷贝到EEPROM中。
上电复位后,芯片主动将EEPROM中相关字节拷贝到RAM中。

四、非必需操作的必要性

芯片读取操作,首要读取数据的低8位,再读取数据的高8位。无论是低8位仍是高8位,都是从最低位一位一位的读。即便低位是不需求的字节也要读出来,这叫规矩。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/moni/317676.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部