版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章单片机应用系统开发指导1第一页,共十四页,2022年,8月28日如何开发一个完整的单片机系统?4
对给定的硬件系统进行软件设计。
应先完成程序的结构框图,再对框图填写指令,使所设计的程序达到:功能上可行,代码上优化,并尽量做到结构化、模块化。
5
借助开发系统对所设计的程序进行调试、完善,并连接应用系统(即目标机)进行连机调试和硬件排错;
6
将应用系统投入实际工作环境。第二页,共十四页,2022年,8月28日单片机开发系统应具备的主要功能1
能对目标程序进行输入、修改、贮存;
2
能与上位机(PC机)连接、通讯;
3
能在上位机的支持下对单片机程序进行汇编、反汇编及动态调试等;
4
能以多种方式对目标机进行调试、运行(以单步、设断点、连续等方式运行程序);
5
能为目标机提供程序运行空间,并提供尽量多的子程序库;
6
能对目标程序进行固化。第三页,共十四页,2022年,8月28日对单片机应用系统硬、软件设计的基本要求1、系统配置要留有一定的余地;
2、系统硬件应尽量简单;
3、尽量使用成熟的典型硬件电路;
4、
尽量用软件完成/实现系统要求的功能;
5、
要注意系统的驱动能力;
6、
要留有必要的系统功能扩展空间,
7、尽量做到方便用户使用,并应考虑用户的维护便利。
第四页,共十四页,2022年,8月28日软件设计
1、编辑程序2、编译
(检查语法错误,如有错误返回第一步)3、
试验运行
(检查逻辑错误,如有错误返回第一步)
这是程序开发的主要工作,通常有以下几种手段:
A、软件仿真(仅适用于没有对硬件操作的系统)
B、仿真器(最方便,但成本贵)
C、下载线(低成本,仅有部分CPU有此功能)D、使用编程器直接将程序写到CPU(每次要插拔
CPU,太麻烦)4、调试完毕,用编程器将程序固化在EPROM中(称写片)5、成品。第五页,共十四页,2022年,8月28日程序语言的选择对于一个高级的单片机程序员,往往既要熟悉汇编,同时也要熟悉c语言,才能更好的去编写程序。因为汇编和c都是工具,可能在某些地方用c无法实现,但用汇编却很容易.有些地方用汇编,很繁琐,用c就很方便。在bbs上多次有人争论汇编和c的问题。无法说c好,还是汇编好,有时要取决于你的项目。我们认为能够最快的实现和完成你的设计的就是好的。多数情况下,是用c语言做设计比较快。特别是代码比较多的设计,c的优势就更为明显。如果用c也不好,用汇编也不好,那么就混合使用吧,keilc51是支持c和汇编混合编程的。
第六页,共十四页,2022年,8月28日编程器我们调试通过的汇编语言或C语言源程序,还必须经过与该语言对应的软件将我们能看懂的汇编或C“翻译”(编译)成所用单片机可以识别的代码。将单片机可以识别的代码烧写(编程)到单片机程序存储器中。编译出的代码一般扩展名为*.hex或*.bin;这个代码文件必须送到单片机中,单片机在电路中才能按程序的要求工作。将这个代码文件送到单片机中的工具就是编程器,与电脑连接的编程器一般都通过并口或者串口与编程器的硬件连接,也有相应的服务程序;在连接好电脑与编程后运行其服务程序,在服务程序中先选择所要编程的单片机型号,再调入前面所得到的代码文件,接下来就用编程器将这个代码文件烧写到单片机中。第七页,共十四页,2022年,8月28日写片举例
在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够识别这种格式的文件,只要将此文件调入即可写片。在此,为使同学们对整个过程有个认识,举一例说明:ORG0000HLJMPSTARTORG040HSTART:MOVSP,#5FH;设堆栈LOOP:NOPLJMPLOOP;循环END;结束表1:03000000020040BB:0700400075815F000200431F020040FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75815F00020043表2表3表1为源程序,表2是汇编后得到的HEX文件,表3是由HEX文件转换成的目标文件,也就是最终写入EPROM的文件,它由编程器转换得到,也可以由HEXBIN一类的程序转换得到。学过手工汇编者应当不难找出表3与表1的一一对应关系,值得注意的是从020040后开始的一长串‘FF’,直到7581,这是由于伪指令:ORG040H造成的结果。(出自平凡的单片机)第八页,共十四页,2022年,8月28日一、硬件准备随着技术的发展,单片机开发手段也越来越先进,而价格却不断下降。当FLASH型单片机被广泛应用后,采用软件模拟加写片验证成为一种经济实用的实验方法。而近年来很多单片机都具有了ISP功能,只要一根下载线即可以编程,不再需要编程器。方案1:(1)计算机一台;(2)具有仿真功能的实验板一块,(3)其它如电烙铁、实验电源等常规工具。方案2:(1)计算机一台;(2)下载型实验板一块;(3)下载线一根;(4)其它如电烙铁、实验电源等常工具。方案1的特点是实验板本身具有仿真能力,性价比高。方案2价格略低。第九页,共十四页,2022年,8月28日单片机的在线编程技术通常进行单片机的实验或开发时,编程器是必不可少的。仿真、调试完的程序需要借助编程器烧到单片机内部或外接的程序存储器中。普通的编程器价格从几百元到几千元不等,对于一般的单片机爱好者来说还是一笔不小的开支。另外,在开发过程中,程序每改动一次就要拔下电路板上的芯片编程后再插上,也比较麻烦。随着单片机技术的发展,出现了可以在线编程的单片机。这种在线编程目前有两种实现方法:在系统编程(ISP)和在应用编程(IAP)。第十页,共十四页,2022年,8月28日ISPIn-SystemProgramming在系统可编程ISP一般是通过单片机专用的串行编程接口对单片机内部的Flash存储器进行编程,而IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将控制从一个存储体转向另一个。ISP的实现一般需要很少的外部电路辅助实现,而IAP的实现更加灵活,通常可利用单片机的串行口接到计算机的RS232口,通过专门设计的固件程序来编程内部存储器。例如:ATMEL公司的单片机AT89S8252就提供了一个SPI(serialperipheralinterface)串行外设接口对内部程序存储器编程(ISP),而SST公司的单片机SST89C54内部包含两块独立的存储区,通过预先编程在其中一块存储区中的程序就可以通过串行口与计算机相连,使用PC上专用的用户界面程序直接下载程序代码到单片机的另一块存储区中。(出自“中国电子技术信息网”)第十一页,共十四页,2022年,8月28日IAP:
in
application
programmingISP和IAP为单片机的实验和开发带来了很大的方便和灵活性,也为广大单片机爱好者带来了福音。利用ISP和IAP,不需要编程器就可以进行单片机的实验和开发,单片机芯片可以直接焊接到电路板上,调试结束即成成品,甚至可以远程在线升级或改变单片机中的程序。电子工程师网站的单片机自学、开发套件就是采用具有IAP功能的SST公司的单片机SST89C54来进行开发的。(出自“中国电子技术信息网”)第十二页,共十四页,2022年,8月28日二、软件准备单片机开发中除必要的硬件外,同样离不开软件,Keil软件是目前最流行开发MCS-51系列单片机的软件,从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。掌握这一软件的使用对于使用51系列单片机的爱好者来说是十分必要的,如果你使用C语言编程,那么Keil几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。(出自平凡的单片机)第十三页,共十四页,2022年,8月28日仿真仿真的主要目的是进行软件调试,当然借助仿真机,也能进行一些硬件排错。一块单片机应用电路板包括单片机部份及为达到使用目的而设计的应用电路,仿真就是利用仿真机来代替应用电路板(称目标机)的单片机部份,对应用电路部份进行测试、调试。仿真有CPU仿真和ROM仿真两种,所谓CPU仿真是指用仿真机代替目标机的CPU,由仿真机向目标机的应用电路部份提供各种信号、数据,进行调试的方法。这种仿真可以通过单步运行、连续运行等多种方法来运行程序,并能观察到单片机内部的变
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高速公路合同制收费员二零二五年度服务质量监督与反馈协议3篇
- 2025年度落水管安装与水质净化服务合同4篇
- 二零二五年度木屋建造与木材加工工艺改进合同4篇
- 咖啡馆品牌形象包装设计考核试卷
- 客运站服务创新实践考核试卷
- 2025版养老信托资金借款合同3篇
- 2025版电子商务合同争议解决程序与法律适用合同4篇
- 二零二五年度软件开发与经销合同2篇
- 2025版学校教师培训与发展聘用合同样本3篇
- 2025年外汇交易居间服务合同
- GB/T 16895.3-2024低压电气装置第5-54部分:电气设备的选择和安装接地配置和保护导体
- 计划合同部部长述职报告范文
- 窗帘采购投标方案(技术方案)
- 基于学习任务群的小学语文单元整体教学设计策略的探究
- 人教版高中物理必修一同步课时作业(全册)
- 食堂油锅起火演练方案及流程
- 《呼吸衰竭的治疗》
- 2024年度医患沟通课件
- 2024年中考政治总复习初中道德与法治知识点总结(重点标记版)
- 2024年手术室的应急预案
- 五年级上册小数除法竖式计算练习300题及答案
评论
0/150
提交评论