摘要: 这几天测试写好的IAP升级程序,真是一个糟,能将程序下载进去,但无法运行。 经过各种测试,修改终于找到了问题的原因,现在大致总结下我在写IAP程序的时候遇到的问题和解决方案。首先要实现单片机的IAP升级程序,我们要知道自己的IDE如何能将程序的函数或者变量的编译地址固定,因为对于bootload程序,我们要固定它的地址,还有从bootload跳转到的程序运行的地址。 对于MSP430,在测试中我程序复位时跳转到rts430x.lib:boot.obj (.text:_isr:_c_int00_noexit)这样一个启动函数,之后执行_syatem_pre_int->_auto_init. 阅读全文
posted @ 2012-08-17 11:30 吾乐 阅读(1947) 评论(1) 推荐(0) 编辑
摘要: QT在被诺基亚放弃后,终于在最近几天决定了出处,被芬兰软件公司Digia收购了,qt.digia.com,希望以后能发展的更好。 再不在弄点什么学学,在公司还真没什么事做了,本来想把写的单片机程序代码优化下,不过看着冗长的代码,不知道怎么入手,已经优化了一段时间,效果一般啊。还是做点别的,不然什么事都不想做,就坐那发呆啊。正好最近在写一个IAP升级程序,需要用到一个串口程序,且还需要一定的格式,找了很多工具无法使用,那就自己来写一个,想玩嵌入式发展,就用qt来写。 下面就是我写的一个串口程序,从网上找了不少的代码, 很多问题也是边写表搜索解决,最后完成了一个简单的串口收发程序,用的是W... 阅读全文
posted @ 2012-08-15 10:54 吾乐 阅读(526) 评论(0) 推荐(0) 编辑
摘要: 完成了一个简单的IAP升级程序,只能实现简单的程序擦写。在程序启动的时候,检测命令,超时则运行主程序,否则进入升级模式,将bin文件分解,以相应的格式将程序数据发送到板子,而板子就直接实现对程序的擦写,只有个校验和和反馈,没什么有效的验证机制。由于只能手动实现bin的分解,暂时就写个小程序试验了下,还是能够运行的,郁闷,还是得会点上位机编程,不然好多测试都无法实现。 不过进一步思考发现,我这个程序只要升级失败就不能再次升级了(主程序被擦写掉了),这样肯定会有很多的问题,看来还要将主程序给分离出来,这样程序失败后还能再次利用命令进入升级,不过看现在程序结构发现有些烂了,悲催啊,真的改不动,边写. 阅读全文
posted @ 2012-08-09 11:33 吾乐 阅读(678) 评论(0) 推荐(0) 编辑
摘要: 程序写的差不多了,总工叫我去实现程序的在线升级功能,还什么IAP,我还以为ISP呢,闷了好一会才缓过来,后来才知道IAP是应用可编程,即程序通过自身的升级代码来升级,而升级程序可以通过串口、USB、U盘之类的来提供。好吧,大概了解了点,后来在总工的提示下知道做这个程序需要将程序分为2段,一段主代码,另一段则是升级程序,这样后面在升级的时候只对运行的程序部分升级,而升级程序保持不变,防止把自己擦挂掉了,就over了,还有我们要对程序的地址什么的要有比较深的了解。 我用的是430,编译器是CCS4.0,可以通过CMD文件来管理段地址,不过刚开始完全不懂,找资料吧。找了半天,尝试了半天,终于成... 阅读全文
posted @ 2012-08-07 16:18 吾乐 阅读(815) 评论(0) 推荐(0) 编辑
摘要: 既然准备好好的弄,就先把编程规范给学习下,先看华为的规范,从简单的文件注释和命名开始,这2块是最容易搞乱的,还是得坚持住,天天看,每次编程看一次,就不信还搞不定,下面摘下大概的规范内容,有部分修改了点。 注释规范:文件注释 /***************************************************************** Copyright: File name: 文件名 Description: 用于详细说明此程序文件完成的主要功能 Author: 作者 Version: 版本 Date: 完成日期 History: 修改历史记录列表... 阅读全文
posted @ 2012-07-22 08:02 吾乐 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 毕业到现在发现自己没什么成长,虽然在公司里也快完成了2个项目,不过项目做完后,越想觉得自己的水平越菜,还有小公司里没什么人,做单片机控制方案,搞硬件的比较多,软件的也就2、3个,再说我发现搞单片机的大部分是电子出身的,所以软件估计也就学个C语言,其他什么算法、数据结构、操作系统根本没学过,更别说什么设计模式了。所以对于我们来说编程也就实现功能,现在发现很痛苦,程序编写好后,就不想去优化,结构啊、变量啊都是很乱的。 看来下面就要给自己一些要求了,不改变,那工作就像死水一样,没有任何活力。编程规范,这个一定要好好的看看,不然直接没得混;嵌入式方向,最近又拿起了那块ARM9的板子,以前每次都学... 阅读全文
posted @ 2012-07-21 20:16 吾乐 阅读(256) 评论(3) 推荐(0) 编辑