实验教程初稿.docVIP

  1. 1、本文档共134页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验教程初稿

第一章 基础理论 1.1 单片机程序设计与应用系统开发过程 单片机的行为是受程序控制的,因此开发与使用单片机必然会遇到程序设计的问题,单片机设计是一个硬件与软件结合的问题,而其软件设计的工作往往占有更多的成分。一个完整的嵌入式系统开发过程,除了硬件电路的设计外,软件工作包括程序编辑、汇编或编译、程序下载、程序调试、脱机验证等过程。 程序的编辑就是按照一定的格式,采用汇编或者C等高级语言进行编写。早期的单片机程序设计在DOS环境下符合一定的格式编辑,然后采用一个合适的软件汇编,生成二进制等CPU能识别的目标代码,将单片机(内带程序存储器的情形)或程序存储器放入编程器,编程器通过串口或USB等接口与PC机相连,将PC机存放的CPU能识别的代码下载到单片机或程序存储器中。图1-1是一个简单的说明。 图1-1 程序设计过程 采用以上方式进行开发的情形下,单片机必须是能从电路板上取下来,这对贴片封装的单片机就无能为力了。此时为了能在线仿真调试,需要昂贵的仿真头和仿真电缆与软件,而且几乎没有仿真器能做到100%的功能仿真,甚至有的问题正是来自于仿真器。随着技术的发展,采用ISP技术,只要在目标电路板上预留一个接口,通过一个很小的下载器,与PC机串、并口或USB口相连,就可以进行程序的调试与下载,尤其是有的单片机具有JTAG接口,下载调试更加方便,调试尽可能少占用单片机资源,更有甚者,像freescale的单片机,内置背景调试控制器(BDC ,Background Debug Controller),支持一线ISP和程序调试。目前程序开发需要的各种软件,如编辑、汇编、编译、链接、调试、下载等都集成到一个环境下(集成开发环境IDE),这些开发环境有的是针对某种单片机,由单片机厂商提供,有的则比较通用一些,这些开发环境如Silicon Laboratories,AVR Studio,Keil uVision,Freescale CodeWarrior等。 对于单片机初学者而言,进行单片机入门级的学习,建议手头具备如下材料: (1)某款单片机的完整的数据手册。需要搞清楚存储器配置情况,程序应该放在哪,数据与变量应该放在哪,程序是如何放入单片机中的(如果单片机中有程序存储器的话),如果单片机支持ISP功能,最好动手做一个下载器; (2)拥有使用单片机的完整的指令系统,寻址方式如果不太好掌握,先看指令。建议采用C等高级语言编程,这样可以避免学习枯燥难记的汇编指令。最好有一些例程,以及若干能完成某种功能的程序模块,包括对单片机管脚的电平控制程序。必须掌握程序的总体结构、变量的定义、程序开始位置、中断入口与处理方法、单片机I/O口的控制,单片机寄存器的控制等; (3)选择并确定合适的程序设计开发环境与编译器,了解程序设计中辅助汇编与编译的伪指令,通过实例了解程序设计中应该包含的头文件和库文件;了解集成开发环境中的程序调试与模拟仿真方法; (4)如果条件允许,选择合适的开发板与程序下载调试的方式,程序调试与监控手段。 (5) 尽可能多的看别人写的完整的实例程序。 (6) 如果是要进行系统开发,则需要在系统开发工具与开发语言的选择上下一番功夫。 1.1.1 单片机应用系统开发工具的选择 单片机系统的开发离不开相应的开发工具,包括编程器、实时仿真器、虚拟仿真软件、编译软件等。开发工具的主要作用包括系统硬件电路的诊断与检查、程序的输入与修改、程序的调试、程序的固化等。 编程器的作用就是将单片机程序的机器码烧写到单片机的存储器中,也称为程序的下载、烧写或固化。对于支持ISP功能的单片机,只需要下载电缆(或下载器)就可以完成。 实时仿真器包括相应的软件和硬件,一般是通过PC机,用软件监视程序在单片机中的实际情况。有的时候,程序实际是在PC机上运行,当需要与硬件交换信息的时候,才通过适当的接口实现PC机与目标板的信息交换。仿真器的主要功能是实时运行程序,在程序中设置断点,通过仿真接口,监视和控制程序的运行,查看和修改内部寄存器和数据存储器等。除了硬件实时仿真器,另一种做法就是软件监控程序的方法,在单片机的程序存储器中开辟一块地方,预先下载一段代码,该代码与PC机通讯,接受PC机的命令,同时接管单片机正常的中断,读取单片机内部寄存器与存储器信息,并发送到PC机,以达到程序监控的目的。针对支持ISP功能的单片机,可以通过实时仿真器或监控软件完成程序的下载工作。 虚拟仿真软件主要在没有单片机硬件情况下进行软件程序调试。通常这种系统是通过模拟开发软件和计算机平台构成。在仿真软件的支持下,可方便地实现对单片机硬件模拟、指令模拟和运行状态模拟,从而完成软件开发的全过程。目前比较典型的产品有英国Labcenter electronics公司的C/C++的Freesca

文档评论(0)

ipad0d + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档