在单片机应用开发中,代码的使用效率问题、单片机抗干扰性和可靠性等问题仍困扰着 工程师。为帮助工程师解决单片机设计上的难题,《电子工程专辑》网站特邀Holtek香 港分公司工程部处长邓宏杰先生担任《单片机应用编程技巧》专题讨论的嘉宾,与广大 设计工程师交流单片机设计开发经验。现根据论坛中的讨论归纳出单片机开发中应掌握 的几个基本技巧。一、 如何提高C语言编程代码的效率邓宏杰指出,用C语言进行单片机程序设计是单片机开发与应用的必然趋势。他强调:“ 如果使用C编程时,要达到最高的效率,最好熟悉所使用的C编译器。先试验一下每条C语言编译以后对应的汇编语言的语句行数,这样就可以很明确的知道效率。在今后编程的 时候,使用编译效率最高的语句。” 他指出,各家的C编译器都会有一定的差异,故编译效率也会有所不同,优秀的嵌入式系统C编译器代码长度和执行时间仅比以汇编语言编写的同样功能程度长5-20%。他说:“对于复杂而开发时间紧的项目时,可以采用C语言,但前提是要求你对该MCU系统的C语言和C编译器非常熟悉,特别要注意该C编译系统所能支持的数据类型和算法。虽然C语言是最普遍的一种高级语言,但由于不同的MCU厂家其C语言编译系统是有所差别的,特别是在一些特殊功能模块的操作上。所以如果对这些特性不了解,那么调试起来问题就会很 多,反而导致执行效率低于汇编语言。” 二、 如何减少程序中的bug? 对于如何减少程序的bug,邓宏杰给出了一些建议,他指出系统运行中应考虑的超范围管理参数有: 1.物理参数。这些参数主要是系统的输入参数,它包括激励参数、采集处理中的运行参 数和处理结束的结果参数。合理设定这些边界,将超出边界的参数都视为非正常激励或 非正常回应进行出错处理。 2.资源参数。这些参数主要是系统中的电路、器件、功能单元的资源,如记忆体容量、 存储单元长度、堆叠深度。在程式设计中,对资源参数不允许超范围使用。 3.应用参数。这些应用参数常表现为一些单片机、功能单元的应用条件。如E2PROM的擦 写次数与资料存储时间等应用参数界限。 4.过程参数。指系统运行中的有序变化的参数。
上传时间: 2013-10-21
上传用户:chukeey
本实验板采用仿真芯片STC89C51RD或52作为核心部件。最有特色的就是可以在线下载程序。而且单片机内部也有存贮器…修改程序再也不需要拿去编程器烧好程序再插到实验板上,只需从串口下载,方便快捷。实验板直接从电脑的USB口取电,免除由整流器取电的麻烦,真正做到一台电脑,一块板就能玩转51。另外板子面积也比较小…约为12 x 7 CM.各个功能的说明:1.NOKINA3310液晶屏,诺基亚3310液晶点阵为48*84点,可以同时显示字符,文字,图形。2.I2C 串行EEPROM24C08,这个就比较常用了,密码锁等,与断电保存数据有关的就能用上。3.8个按键,非常实用2X4键盘,通过简洁的程序即可完成键盘输入控制.4.8个LED.,这个就不用说了吧,流水灯,提示灯什么的都能用上。5.1个四位数码管,可以做个计数器,可以显示频率,反正跟数字显示有关都可以了。6.时钟芯片,喜欢就自己做个时钟,显示时间,日期,农历也可以啊,呵呵。7.手动复位,这个主要是为了方便单片机复位,不用拨电源那么麻烦,轻轻一按就好了。8.蜂鸣器,可以完成各种奏乐、报警等发声音类实验。
上传时间: 2013-11-18
上传用户:wff
流水灯
上传时间: 2013-10-29
上传用户:wweqas
本篇文章主要讲述8051器件中程序地址指针的运行原理和方式,并介绍了广州致远电子有限公司的DP-51+开发工具中程序的运行方式及如何利用代码分页来实现超过64KB代码空间的地址空间扩展。希望读者可以通过在DP-51+及其DP系列开发工具上的实验,理解8051系列单片机程序的运行原理,尤其是许多初级读者十分头疼的代码分页实现方式。
上传时间: 2013-11-04
上传用户:wli25203
摘要:以学习单片机为目的,为在没有仿真器和目标板的情况下对单片机内部程序运行时有感性的认识,以常用的89C2051单片机为核心,利用Proteus仿真软件的硬件仿真模块建立一个正弦波发生电路,并运用C语言编写相应程序,结合所设计电路在Proteus仿真软件的软件仿真功能进行了综合仿真,并把仿真结果和实际电路与程序运行的结果进行了比较。据此,通过从实践出发来,把实践与理论结合在一起的学习方法来达到入门单片机知识。 关键词:单片机学习,单片机仿真、Proteus,正弦信号
上传时间: 2013-11-18
上传用户:75119158
单片机为AT89S52,利用数字式输出的传感器DS18B20测温度,精度较高
上传时间: 2015-05-25
上传用户:tianjinfan
市面上广告用的五彩灯代码,用MDT2005单片机,内部包含汇编代码以及烧写芯片时候的设置
上传时间: 2015-10-17
上传用户:bibirnovis
我在spartan-3e starter kit 的板上实现了mc8051,程序调试通过,运行正常。 方法 1、用Keil 编译8051的代码; 2、将生成的hex文件用hex->bin工具转成bin文件 3、用bin->coe工具转成coe 4、在core generate 生成的rom中指明coe文件的位置 5、编译、下载到spartan-3e starter kit 板上,你将会看到流水灯的效果 我正在做这方面的东西,欢迎大家与我一起探讨。
上传时间: 2013-12-09
上传用户:源码3
ti c6713 芯片的gpio的演示,类似于流水灯试验在单片机学习中的效果,可以帮助入门c6
上传时间: 2015-12-14
上传用户:龙飞艇
以51单片机为微处理器,利用中断控制7289键盘
上传时间: 2016-01-24
上传用户:ve3344