本内容介绍了Keil C编译器编程规则和代码优化,要实用好单片机就必须清楚它的内部结构组织结构,无论是在芯片的选择还是代码的编写
上传时间: 2013-10-16
上传用户:yuanxiaoqiang
实用单片机系统是基于MCU8051硬件平台下开发的一款操作平台,它不是一个操作系统,而是一个操作平台,主要借鉴了操作系统、手机的一些概念,比如消息机制、系统时钟、软件定时器、平台等概念。 实用单片机系统的核心理念是:在一个标准化的硬件基础上(如8051,avr,arm等)扩展一个标准化的软件平台,把常规项目常用的一些功能如串口通讯、串口调试、系统定时器、软件定时器、按键界面处理等通过消息机制组织起来,形成一个完整的系统。当一个特定的项目需要增加或者删除一项具体的功能时,只需要在平台上增加或者去掉相应的功能即可,这样项目不需要每次重新构思架构,也不需要从零开始,并且原有的系统通过各个项目沉淀后,更加稳定可靠,这就是平台的概念,它不是各个子函数的集合。 相对于现在的很多人把RTOS操作系统应用于MCU来说,往往只为了实现任务的调度转换而不考虑功能的实用、易用性,此外因其较高的资源占用性导致其不适合在MCU类低资源的嵌入式平台应用,MS系统相对于这些RTOS来说,首先还是保留了编程者的常规前后台思维,但又加了一些RTOS的优点,如软件定时器实现的时间片任务系统,类似RTOS的任务,其次为编程者实现了整个程序的框架和一些常用的函数及接口功能如按键、串口、时钟等,让编程者把精力放在跟项目相关的地方,甚至不需要关心所用MCU的寄存器配置,再次就是代码非常简单,容易学习,尤其是建议大家采用SourceInsight查看程序,远比keil编辑器的功能强,它是C语言下最好的编辑器。而MS3.21版本,建议大家直接在Keil的软件仿真器下运行学习。 MS资料可以从以下网址下载:http://www.study-bbs.com/thread-46471-1-1.html读者有什么疑问也可以在这个版面提问,作者将尽力解释。目前MS3.21版本增加了一个GUI操作框架,相比目前已有的GUI更加简单易懂,利用一个函数指针代替了复杂的状态机,每一个界面由一个界面建立函数和一个执行函数构成即可。
上传时间: 2013-10-29
上传用户:txfyddz
第一部分概述 功能简介 LED图文编辑系统是专为LED脱机显示屏设计的一套功能强大,使用方便,简单易学的LED电子显示屏节目制作、编辑软件,支持多区域显示、多节目播放、多显示屏发送;支持多种文件格式:文本文件,WORD、XLS、RTF文件,图片文件(BMP/JPG/...),表格显示,时钟显示(模拟/数字),计时显示(正计时/倒计时).
上传时间: 2013-11-22
上传用户:qijian11056
摘要:在32位ARM核单片机嵌入式系统的开发中,为了保证系统能正常独立运行,用户必须编写自己的启动程序。以飞利浦公司的LPC2210单片机为例,在ADSl.2集成开发环境中,介绍了启动程序的编写过程。该启动程序在EasyARM2200开发板运行成功。关键词:单片机;启动代码;嵌入式系统
上传时间: 2013-10-19
上传用户:yunfan1978
因为工作的缘故,必须学习EMC单片机了。我会把我的学习历程写下来,算是对坛子的一点贡献,也算是自己的一个总结吧。因为以前学过51的和PIC、HOLTEK的单片机,并且也大致了解过EMC的指令集,所以学起来并不是太难。为了学习,而又没有仿真器,于是去emc的网站下载了一个simulator来软件仿真。第一感觉还不错,把里面的例子程序跑了一下,单步执行然后看寄存器的变化。发现他的IDE环境不是特别好用,首先编辑器无法设置TAB的宽度,导致UE里面写好的代码,都不整齐了。再说一下对EMC指令集的理解。EMC的寄存器占用2个空间:内存空间和IO空间,前者用mov来访问,后者用IOW和IOR等来访问。这点我想很多初学者都会象我一样,要花点时间来理解这个问题。还有就是很多寄存器没有地址的,也就是占用特殊的地址空间,既不是内存也不是IO空间,比如CONT等。我想,正是这种类繁多的寻址,使得在简单的MCU上可以2个clock跑一条单周期指令。对于此,PIC和HOLTEK的单片机都需要4个clock跑一条单周期指令,51系列CISC指令就更不用说了。
上传时间: 2013-11-05
上传用户:龙飞艇
胰岛素泵的设计 MPLAB IDE是一种在PC 机上运行的软件,用来为Microchip Technology系列单片机开发应用程序。由于它提供了一种单一的集成环境来为嵌入式单片机开发程序代码,因此被称为集成开发环境或IDE,所有软件开发任务都可以在MPLAB IDE下完成,包括编辑、编译、调试程序和下载。MPLAB IDE提供了一个统一的开发平台,用于所有Microchip Technology处理器系统。 本系统的软件设计开发采用C语言。C语言的可移植性很高,并且可读性很好。软件设计是通过各个模块的编程设计来实现的。
上传时间: 2013-10-08
上传用户:哈哈haha
Keil C251设计软件V3.11(4k代码限制) keil c251 v3.11 demo版的安装说明:安装方法是先将V3.11安装程序用winzip解压缩到某个目录下。(不要直接点击setup.exe安装),比如解压缩到c:\c251然后执行c:\c251\setup\setup.exe 安装程序,这个程序会让你选择安装Eval Version版还是Full Version版,选择Eval Version版进行安装 安装好之后就可以使用,但有代码大小的限制。需要无限制的版本,请购买正版软件。 C251是intel公司的16位单片机,指令兼容51的单片机。8位单片机风靡了20年,下一个20年应该是16位单片机的世界。
上传时间: 2014-01-23
上传用户:yanqie
AVR STUDIO4:这个文件是一个完整的开发工具,包括编辑、仿真功能,利用这个工具,我们可以编辑源代码,并在AVR器件上运行。 代码实例:这是一个用于演示完整代码,AT90S8515数据手册:这是AT90S8515芯片的完整资料。AT90S8515芯片是一款非常容易上手的AVR芯片。现在你不用担心AVR其他型号的产品,以后你会发现AVR系列产品有非常大的相似性,你掌握了一款芯片比如说8515),学会其他芯片也非常容易。。指令说明:如果你要详细的了解各种指令的话,这个文件非常有用。
标签: AVRstudio
上传时间: 2013-10-09
上传用户:guojin_0704
ICCAVR简介ICCAVR 是一种使用ANSI 标准C 语言来开发微控制器(MCU)程序的一个工具,它是一个综合了编辑器和工程管理器的集成工作环境(IDE)。源文件全部被组织到工程之中,文件的编辑和工程(project)的构筑也在IDE 的环境中完成。编译错误在状态窗口中显示,用鼠标单击编译错误时,光标会自动跳转到出错行。这个工程管理器还能直接产生INTEL HEX格式的烧写文件和可以在AVR Studio 中调试的COFF 格式的调试文件。这里特别要提一下ICCAVR 中的应用构筑向导,可以在Tools 栏中选择“ApplicationBiulder”或者直接点击快捷工具栏中的“Application Biulder”图标,就可以打开应用构筑向导对话框,可以根据需要设定芯片种类,各个端口初始值,是否使用定时器,中断,UART等,选好以后单击“OK”就可以得到所需的硬件初始化程序段,非常可靠而且方便。图1给出了初始化UART 的一个例子:下面介绍一下创建并编译一个工程文件的简要步骤:1.新建一个源文件从file 菜单中选择new,创建一个新文件,在改文件中输入源程序并进行编辑和修改,然后存盘,在存盘时必须指定文件类型,如命名为:try.c 。写一个新文件的步骤:首先用Biulder 初始化需要用到的硬件资源,生成初始化程序,然后再写需要的代码实现所要的功能。2.新建一个project从projrct 菜单中选择new 命令,IDE 会弹出一个对话框,在对话框中用户可以指定工程存放的文件夹和工程的名称。在建立一个新工程之后,在工程管理器的窗口会出现三个子目录,Files, Headers, Documents,这时就可以将要编译的文件添加到project 中了。3.把文件添加到工程中可以在project-files 里单击右键,选择需要添加的文件;也可以在编辑窗口中单击右键选择弹出窗口的“Add To Project”命令。4.编译源文件在编译之前特别要注意在Project Options 中选择与硬件相应的芯片。如本次实验就选择ATMEGA8515,如图2 所示。在project 中选择make project,也可以直接单击快捷键F9,这时要是有错则会弹出出错信息,修改调试正确以后单击快捷键ISP 就可以烧写到硬件中去了。
标签: ICCAVR
上传时间: 2013-10-25
上传用户:569342831
LM3S系列代码加密 本文主要介绍LM3S系列MCU代码加密方案。
上传时间: 2013-10-12
上传用户:hullow