- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于飞思卡尔的Bootloader程序下载更新汇编
基于飞思卡尔的Bootloader程序下载更新前 言写这篇文档是因为大三暑假时在一家公司实习,做一个基于飞思卡尔的bootloader远程更新项目,刚开始定的技术指标是基于MC9S12XS128单片机的Bootloader程序、远程(基于GSM网络)和CAN总线通信。但因为我只是一个本科实习生而且实习时间只有一个多月,所以只完成了基于SCI的本地写入.S19文件的更新。这大概也就是这篇文档所包含的内容啦。整个程序是存在瑕疵甚至基本上可以说是不成功的,但是我觉得自己在做这个项目的过程中确实也解决了网上没有提到或者没有答案的一些问题,特写此文档,希望大家各取所需,如果有什么高见或者发现了我明显错误的地方,也非常欢迎大家给我指出。欢迎大家前来指教。小目录一、Bootloader的含义---------------------------------------------------------2二、SCI串口的使用------------------------------------------------------------3三、Flash的擦除和写入--------------------------------------------------------5四、.S19文件的写入-----------------------------------------------------------13五、心得体会-----------------------------------------------------------------14一、Bootloader的意义与作用关于Bootloader的意义网上非常之多,这里针对单片机的Bootloader程序进行说明。Bootloader是在单片机上电启动时执行的一小段程序。也称作固件,通过这段程序,可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用应用程序准备好正确的环境。Boot代码由MCU启动时执行的指令组成。这里的loader指向MCU的Flash中写入新的应用程序。因此,Bootloader是依赖于特定的硬件而实现的,因此,在众多嵌入式产品中目前还不可能实现通用Bootloader。Bootloader的最大优点是:在不需要外部编程器的情况下,对嵌入式产品的应用代码进行更新升级。它使得通过局域网或者Intemet远程更新程序成为可能。例如,如果有5000个基于MCU的电能表应用程序需要更新,电能表制造商的技术人员就可以避免从事对每一个电能表重新编程的巨大工作量,通过使用Bootloader的功能,由控制中心通过电能表抄表系统网络,远程对5?000个电表重新编程。可见,Bootloader功能对于嵌入式系统的广泛应用具有十分重要的意义。再举一个例子。就拿我自己做这个程序的目的来说,我所在的公司将自己的产品卖到全国各地,如果哪一天公司的底层软件工程师(单片机工程师)想要升级底层软件,就可以借助GSM网络直接通过单片机中的Bootloader程序进行底层软件的自我更新,而不是派出售后人员一台一台的进行更新,节省了大量的人力物力。注意点:平时我们最常用到的下载程序的方法是通过USB数据线或其他数据线进行程序的烧写,这个方式是通过外界提供给单片机高电压来对flash擦除和写入完成的。而Bootloader不需要外界提供高电压仅靠正常工作电压便可完成对flash的擦除和写入,从而达到更新程序的目的。二、SCI串口的使用前面也提到,我做的是通过SCI串口的本地更新。SCI(Serial Communication Interface,串行通信接口)是最常用、最经典的串行通信接口方式。通信双方除了要按照约定的真个是进行数据通信外,还要约定相同的通信速率,在SCI通信中使用波特率来表示。串行通信的波特率被定义为每秒内传送的位数,单位为b/s或bps,常用的波特率有1200bps,4800bps,9600bps,19200bps,38400bps等。SCI的使用主要注意两点:波特率的设置和工作方式的选择,我选择的是中断工作方式。波特率:设置波特率的主要目的是使单片机和上位机(上位机在这里就指将信息发给单片机的PC端)保持同步。MC9S12XS128的波特率寄存器是SCIBDH和SCIBDL,总共16位但是只有13位可以写入。SBR[12:0]:波特率常数,取值1~8191.波特率发生器的时钟输出是由MCU内部总线时钟BUSCLK分频而来,SBR[12:0]就是分频系数,而SCI模块需要的工作时钟为波特率的16倍。SCI的波特率计算公式如下:SCI=fBUS/(16*SBR[12:0])波特率的计算数结果些许误差可以忽略,以
您可能关注的文档
- 基于VHDL语言的2ASK调制系统的设计汇编.docx
- 基于nRF24L01的温度测试装置设计汇编.doc
- 基于中国专利申请准备美国专利申请的注意事项汇编.pptx
- 基于亮度颜色文理边缘检测2汇编.pptx
- 基于代理的分库分表中间件汇编.pptx
- 基于乐高教育平台的高中技术类课程教学汇编.doc
- 基于信息素更新和挥发因子调整改进蚁群算法汇编.doc
- 基于内网或受限网络范围内的WiFi实现无线网络安全访问控制汇编.doc
- 基于BIM技术的装配式建筑设计汇编.pptx
- 基于信号的去噪方法分析小波变换汇编.docx
- 黑龙江省同江市事业单位考试职业能力倾向测验(中小学教师类D类)强化训练题库必考题.docx
- 福建省福鼎市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题必考题.docx
- 2025年海南省琼海市事业单位考试职业能力倾向测验(中小学教师类D类)强化训练题库最新.docx
- 辽宁省凤城市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题学生专用.docx
- 2025年湖北省石首市职业能力倾向测验事业单位考试(中小学教师类D类)试题新版.docx
- 2025年河北省安国市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题及答案1套.docx
- 黑龙江省东宁市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题完美版.docx
- 2025年湖北省武穴市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题审定版.docx
- 音乐版权管理协议.pptx
- 部门经理任职表态发言(3篇) .pdf
最近下载
- 六年级数学《圆的对称性》C1跨学科学习活动设计学习活动方案学生成果及点评.pdf VIP
- 高低压变配电工程施工招标文件.pdf VIP
- 变电站施工合同协议书范本.docx
- 《分级护理制度》课件.ppt VIP
- 2024年检验类之临床医学检验技术(士)真题精选附答案 .pdf VIP
- J B∕T 13202.4-2017 -柴油机 颗粒捕集系统 第4部分:颗粒捕集器技术条件.pdf
- 2.蜗牛的坚持 课件(共19张PPT内嵌视频) 人教版一年级美术上册02.ppt.pptx VIP
- 软科2024年中国大学排名 .pdf VIP
- DB37_T 5174-2021 山东省沿海地区建筑工程风压标准.docx
- 小学跨学科教学的评价与反馈.docx
文档评论(0)