张飞软硬开源基于STM32 BLDC直流无刷电机驱动器开发视频套件,👉戳此立抢👈

开发单片机应掌握的几个技巧

单片机精讲吴鉴鹰 2018-11-22 16:21 次阅读

单片机应用开发中,代码的使用效率问题、单片机抗干扰性和可靠性等问题仍困扰着工程师。为帮助工程师解决单片机设计上的难题,现根据论坛中的讨论归纳出单片机开发中应掌握的几个基本技巧。

一、如何提高C语言编程代码的效率

邓宏杰指出,用C语言进行单片机程序设计是单片机开发与应用的必然趋势。“如果使用C编程时,要达到最高的效率,最好熟悉所使用的C编译器。先试验一下每条C语言编译以后对应的汇编语言的语句行数,这样就可以很明确的知道效率。在今后编程的时候,使用编译效率最高的语句。”

他指出,各家的C编译器都会有一定的差异,故编译效率也会有所不同,优秀的嵌入式系统C编译器代码长度和执行时间仅比以汇编语言编写的同样功能程度长5-20%。“对于复杂而开发时间紧的项目时,可以采用C语言,但前提是要求你对该MCU系统的C语言和C编译器非常熟悉,特别要注意该C编译系统所能支持的数据类型和算法。

虽然C语言是最普遍的一种高级语言,但由于不同的MCU厂家其C语言编译系统是有所差别的,特别是在一些特殊功能模块的操作上。所以如果对这些特性不了解,那么调试起来问题就会很多,反而导致执行效率低于汇编语言。”

二、如何减少程序中的bug?

对于如何减少程序的bug,邓宏杰给出了一些建议,他指出系统运行中应考虑的超范围管理参数有:

1.物理参数。这些参数主要是系统的输入参数,它包括激励参数、采集处理中的运行参数和处理结束的结果参数。合理设定这些边界,将超出边界的参数都视为非正常激励或非正常回应进行出错处理。

2.资源参数。这些参数主要是系统中的电路、器件、功能单元的资源,如记忆体容量、存储单元长度、堆叠深度。在程式设计中,对资源参数不允许超范围使用。

3.应用参数。这些应用参数常表现为一些单片机、功能单元的应用条件。如E2PROM的擦写次数与资料存储时间等应用参数界限。

4.过程参数。指系统运行中的有序变化的参数。

三、如何解决单片机的抗干扰性问题

邓宏杰指出:防止干扰最有效的方法是去除干扰源、隔断干扰路径,但往往很难做到,所以只能看单片机抗干扰能力够不够强了。单片机干扰最常见的现象就是复位;至于程序跑飞,其实也可以用软件陷阱和看门狗将程序拉回到复位状态;所以单片机软件抗干扰最重要的是处理好复位状态。

一般单片机都会有一些标志寄存器,可以用来判断复位原因;另外你也可以自己在RAM中埋一些标志。在每次程序复位时,通过判断这些标志,可以判断出不同的复位原因;还可以根据不同的标志直接跳到相应的程序。这样可以使程序运行有连续性,用户在使用时也不会察觉到程序被重新复位过。

四、如何测试单片机系统的可靠性

有读者希望了解用用什么方法来测试单片机系统的可靠性,邓宏杰指出:“当一个单片机系统设计完成,对于不同的单片机系统产品会有不同的测试项目和方法,但是有一些是必须测试的:

1.测试单片机软件功能的完善性。这是针对所有单片机系统功能的测试,测试软件是否写的正确完整。

2.上电、掉电测试。在使用中用户必然会遇到上电和掉电的情况,可以进行多次开关电源,测试单片机系统的可靠性。

3.老化测试。测试长时间工作情况下,单片机系统的可靠性。必要的话可以放置在高温,高压以及强电磁干扰的环境下测试。

4、ESD和EFT等测试。可以使用各种干扰模拟器来测试单片机系统的可靠性。

例如使用静电模拟器测试单片机系统的抗静电ESD能力;使用突波杂讯模拟器进行快速脉冲抗干扰EFT测试等等。邓宏杰强调:“还可以模拟人为使用中,可能发生的破坏情况。人体或者衣服织物故意摩擦单片机系统的接触端口,由此测试抗静电的能力。用大功率电钻靠近单片机系统工作,由此测试抗电磁干扰能力等。”

原文标题:单片机开发中应掌握的基本技巧

文章出处:【微信号:wujianying_danpianji,微信公众号:单片机精讲吴鉴鹰】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

玩单片机到千万身家,“技术型老总”需要哪些神技能?

中国硬件创新大赛网络培训会—技术培训篇如果你就干这行,毫无疑问你不能错过这次直播;如果不是,可能你不一定喜欢单片机,也不
发表于 05-16 00:00 585次 阅读
玩单片机到千万身家,“技术型老总”需要哪些神技能?

玩单片机到千万身家,“技术型老总”需要哪些神技能?

中国硬件创新大赛网络培训会—技术培训篇如果你就干这行,毫无疑问你不能错过这次直播;如果不是,可能你不一定喜欢单片机,也不
发表于 05-16 00:00 585次 阅读
玩单片机到千万身家,“技术型老总”需要哪些神技能?

单片机应该如何学习详细的学习步骤说明

不知不觉自己接触单片机已经有两年多了,从最初的MCS-51,到后来的AVR、MSP430,对于单片机....
发表于 06-18 17:50 5次 阅读
单片机应该如何学习详细的学习步骤说明

使用MSP430单片机设计的高级流水灯程序免费下载

本文档的主要内容详细介绍的是使用MSP430单片机设计的高级流水灯程序免费下载。
发表于 06-18 17:49 7次 阅读
使用MSP430单片机设计的高级流水灯程序免费下载

数码管显示电子钟的C语言程序免费下载

本文档的主要内容详细介绍的是数码管显示电子钟的C语言程序免费下载。
发表于 06-18 17:20 6次 阅读
数码管显示电子钟的C语言程序免费下载

EM3-V22单片机开发板电路原理图免费下载

本文档的主要内容详细介绍的是EM3-V22单片机开发板电路原理图免费下载。
发表于 06-18 17:20 7次 阅读
EM3-V22单片机开发板电路原理图免费下载

使用51单片机进行家用智能电热水器的毕业设计免费下载

本设计采用ATEML公司生产的AT89C51单片机为核心来设计智能电热水器。本设计也对单片机控制电热....
发表于 06-18 17:20 7次 阅读
使用51单片机进行家用智能电热水器的毕业设计免费下载

嵌入式开发通常采用哪种编程语言

目前在嵌入式开发领域比较常见的编程语言是C,另外C++、Python、JavaScript等语言也可....
发表于 06-18 16:59 7次 阅读
嵌入式开发通常采用哪种编程语言

STM32嵌入式入门必看之文章给你详细的讲解

STM32嵌入式入门必看之文章-----介绍非常详细!(学习STM32的理由!!!!)为什么要写这篇....
发表于 06-18 16:52 6次 阅读
STM32嵌入式入门必看之文章给你详细的讲解

如何使用16位单片机进行智能循线和避障机器人设计资料说明

本文介绍了一种具有智能循线和避障功能的机器人设计方案,机器人系统包括控制系统的硬件和软件设计。硬件部....
发表于 06-18 15:49 8次 阅读
如何使用16位单片机进行智能循线和避障机器人设计资料说明

实例解读51单片机完全学习与应用的PPT课件教程免费下载

本文档的主要内容详细介绍的是实例解读51单片机完全学习与应用的PPT课件教程免费下载包括了:第1章 ....
发表于 06-18 15:49 8次 阅读
实例解读51单片机完全学习与应用的PPT课件教程免费下载

关于嵌入式C开发必须掌握的一些专业技能

华为的嵌入式系统做得非常棒,这个是毋庸置疑。做嵌入式的C开发人员一般都会想进华为,看看华为的嵌入式系....
发表于 06-18 11:37 56次 阅读
关于嵌入式C开发必须掌握的一些专业技能

618限时特惠~正在进行!最后一天!

推荐课程: 张飞软硬开源,629元既可获得基于STM32 BLDC直流无刷电机驱动器视频 618限时特惠,怎能不看看呢? 电...
发表于 06-18 10:46 92次 阅读
618限时特惠~正在进行!最后一天!

请问MCU将默认使用什么?

海都。我用的是PIC16F87A单片机。通常情况下,我通过编写(13)位来编写μ-CONFIG(0x3F3A);在MPLAB IDE...
发表于 06-18 08:04 9次 阅读
请问MCU将默认使用什么?

STC8系列单片机技术参考手册的详细资料免费下载

STC8系列单片机是不需要外部晶振和外部复位的单片机,是以超强抗干扰/超低价/高速/低功耗为目标的8....
发表于 06-18 08:00 10次 阅读
STC8系列单片机技术参考手册的详细资料免费下载

一些相关示例程序资料合集免费下载

本文档的主要内容详细介绍的是一些相关示例程序资料合集免费下载包括了:1.BST-V51学习板常用函数....
发表于 06-18 08:00 6次 阅读
一些相关示例程序资料合集免费下载

采用SPCE061A和PTR8000实现模拟SPI总线通信

关硕,关济实 (东北电力大学 自动化工程学院  吉林 吉林  132012) SPI(Serial Peripheral Inte...
发表于 06-18 07:12 3次 阅读
采用SPCE061A和PTR8000实现模拟SPI总线通信

请问晶振对单片机的作用是怎么样的?

真心不明白晶振对单片机的作用是怎么样的? cpu处理数据需要晶振吗?一条指令传到cpu他就是一连串的0,1形式的方波,cpu自然会处理...
发表于 06-18 05:56 21次 阅读
请问晶振对单片机的作用是怎么样的?

单片机初学指路

    单片机是什么,你可能不太清楚。学习单片机需要什么,可能你不清楚。         &nb...
发表于 06-18 04:35 29次 阅读
单片机初学指路

请问单片机5V是如何控制127V或者380V的设备的?

单片机5V是如何控制127V或者380V的设备的?其原理是什么?求大神详解!!!...
发表于 06-18 00:50 5次 阅读
请问单片机5V是如何控制127V或者380V的设备的?

如何自己制作ATM单片机下载器?

如何自己制作ATM单片机下载器?最好和STC通用   感谢...
发表于 06-18 00:06 8次 阅读
如何自己制作ATM单片机下载器?

单片机中晶振电路部分电容位置变化的影响

大家都了解单片机的晶振电路,常见的都是先晶振,然后两颗22pf电容到地,如图片中B这样,但是如果在设计板子时候,先将电容放在...
发表于 06-17 19:55 62次 阅读
单片机中晶振电路部分电容位置变化的影响

如何实现电风扇分档风力调节?

发表于 06-17 19:34 14次 阅读
如何实现电风扇分档风力调节?

如何设计电风扇模拟系统设计?

发表于 06-17 19:32 48次 阅读
如何设计电风扇模拟系统设计?

LabVIEW教程之选择结构的详细资料说明

选择结构相当于文本语言中的条件语句。LabVIEW 8 中新增加的 Diagram Disable ....
发表于 06-17 16:42 12次 阅读
LabVIEW教程之选择结构的详细资料说明

LabVIEW教程之循环结构的详细资料说明

LabVIEW中的循环结构有 for 循环和 while 循环。其功能与文本语言的循环结构的功能类似....
发表于 06-17 16:42 9次 阅读
LabVIEW教程之循环结构的详细资料说明

单片机定时器中断原理及s3c2440的定时器使用方法

使CPU中断的事件称中断源。中断源向CPU发出中断请求,CPU暂时中断原来执行的事件A转去做事件B。....
发表于 06-17 16:06 59次 阅读
单片机定时器中断原理及s3c2440的定时器使用方法

51单片机的定时器

从上面定时器/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:T....
发表于 06-17 15:02 70次 阅读
51单片机的定时器

单片机定时器/计数器的结构

 每来一个脉冲计数器加1,当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零,且计数....
发表于 06-17 09:57 69次 阅读
单片机定时器/计数器的结构

单片机定时器/计数器基本原理

AT89S52单片机内部的定时/计数器的结构如图2所示。定时器T0由特殊功能寄存器TL0(低8位)和....
发表于 06-17 09:19 46次 阅读
单片机定时器/计数器基本原理

使用TMS320F28027单片机进行LED照明的程序免费下载

本文档的主要内容详细介绍的是使用TMS320F28027单片机进行LED照明的程序免费下载。
发表于 06-17 08:00 18次 阅读
使用TMS320F28027单片机进行LED照明的程序免费下载

C8051F系列单片机板子的原理图和PCB资料免费下载

本文档的C8051F系列单片机板子的原理图和PCB资料免费下载。
发表于 06-17 08:00 16次 阅读
C8051F系列单片机板子的原理图和PCB资料免费下载

你有这些嵌入式硬件电路设计的基本功吗?

我走的电子开发道路其实和大多数人说的一样,基本的路线为模拟电子(熟练)→数字电路设计(掌握)→单片机....
的头像 玩转单片机 发表于 06-16 11:52 473次 阅读
你有这些嵌入式硬件电路设计的基本功吗?

使用单片机设计超声波测距1602显示的程序和接线图免费下载

本文档的主要内容详细介绍的是使用单片机设计超声波测距1602显示的程序和接线图免费下载
发表于 06-13 17:40 56次 阅读
使用单片机设计超声波测距1602显示的程序和接线图免费下载

如何提高单片机的抗干扰性

搞过产品的朋友都有体会,一个设计看似简单,硬件设计和代码编写很快就搞定,但在调试过程中却或多或少的意....
发表于 06-13 17:40 56次 阅读
如何提高单片机的抗干扰性

使用单片机设计MP3的电路图免费下载

本文档的主要内容详细介绍的是使用单片机设计具有能显示歌名,电子书,闹钟,随音乐播放流水灯功能的MP3....
发表于 06-13 17:40 73次 阅读
使用单片机设计MP3的电路图免费下载

如何使用单片机设计AD和DA转换器详细资料说明

 某些单片机内部巳经集成了AD DA转换器,使其在工控行业、仪器仪表.家电产品的应用与日俱增.但是这....
发表于 06-13 17:17 58次 阅读
如何使用单片机设计AD和DA转换器详细资料说明

PROTEUS仿真软件的基本使用教程免费下载

Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件(该软件....
发表于 06-13 17:17 59次 阅读
PROTEUS仿真软件的基本使用教程免费下载

如何进行直流稳压电源的设计详细资料说明

单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器R....
发表于 06-13 16:58 81次 阅读
如何进行直流稳压电源的设计详细资料说明

基于GPRS技术的单片机开发特点及过程介绍

针对这一问题,提出一种基于GPRS的单片机上网的解决方案,即在单片机中实现PPP协议,并通过驱动GP....
发表于 06-13 15:20 120次 阅读
基于GPRS技术的单片机开发特点及过程介绍

四个单片机原理与应用的实验指导书资料免费下载

本文档的主要内容详细介绍的是四个单片机原理与应用的实验指导书资料免费下载实验项目包括了:实验一 I/....
发表于 06-13 08:00 25次 阅读
四个单片机原理与应用的实验指导书资料免费下载

使用AT89C51单片机设计步进电机控制系统论文资料免费下载

步进电机是现代控制技术中最早出现的执行部件,其特点是将数字脉冲控制信号直接转换为一定数值的机械角位移....
发表于 06-13 08:00 35次 阅读
使用AT89C51单片机设计步进电机控制系统论文资料免费下载

CAN总线源代码的C语言资料免费下载

本文档的主要内容详细介绍的是CAN总线源代码的C语言资料免费下载。
发表于 06-13 08:00 40次 阅读
CAN总线源代码的C语言资料免费下载

单片机最小系统电路原理图免费下载

本文档的主要内容详细介绍的是单片机最小系统电路原理图免费下载。
发表于 06-13 08:00 124次 阅读
单片机最小系统电路原理图免费下载

如何设计智能巡线小车的多模式速度控制系统详细设计方案说明

介绍了基于 Freescale HCS12 系列单片机的智能巡线小车多模式速度控制系统的设计方案。该....
发表于 06-12 17:07 40次 阅读
如何设计智能巡线小车的多模式速度控制系统详细设计方案说明

STM32F1单片机的IO位带操作头文件免费下载

本文档的主要内容详细介绍的是STM32F1单片机的IO位带操作头文件免费下载。
发表于 06-12 16:31 48次 阅读
STM32F1单片机的IO位带操作头文件免费下载

单片机精确延时的方法解析

1、使用循环函数延时: void delay1ms(void) //误差 0us,延时1ms ....
发表于 06-12 15:32 101次 阅读
单片机精确延时的方法解析

使用51单片机设计的计算器的程序和仿真资料免费下载

本文档的主要内容详细介绍的是使用51单片机设计的计算器的程序和仿真资料免费下载,可以计算加减乘除小数....
发表于 06-12 08:00 27次 阅读
使用51单片机设计的计算器的程序和仿真资料免费下载

CC2530 SOC芯片的数据手册免费下载

CC2530是一个真正的系统芯片(SOC)解决方案,适用于IEEE 802.15.4、ZigBee和....
发表于 06-12 08:00 30次 阅读
CC2530 SOC芯片的数据手册免费下载

STC15F408AD系列单片机的总体介绍资料免费下载

STC15F408AD系列单片机是STC生产的单时钟/机器周期(1T)的单片机,是高速/高可靠/低功....
发表于 06-12 08:00 33次 阅读
STC15F408AD系列单片机的总体介绍资料免费下载

使用单片机进行电子称的设计资料合集免费下载

本文档的主要内容详细介绍的是使用单片机进行电子称的设计资料合集免费下载包括了:1.设计开发原理说明(....
发表于 06-12 08:00 50次 阅读
使用单片机进行电子称的设计资料合集免费下载

TI高性能单片机和模拟器件在高校中的应用和选型指南PDF电子书

本手册主要着眼于选型,因此一些涉及深入的技术细节的章节在本手册中略去,大家可以参考我们的培训 PPT....
发表于 06-12 08:00 42次 阅读
TI高性能单片机和模拟器件在高校中的应用和选型指南PDF电子书

如何使用51单片机进行智能小车避障电路的实现

随着汽车工业的发展 ,汽车本身的安全 性和智 能性 日益得到重视。 目前 ,国内外 已经有了很多有关....
发表于 06-11 17:20 73次 阅读
如何使用51单片机进行智能小车避障电路的实现

如何实现电动小车的自动循迹和声控行驶资料说明

本系统通过采集光电传感器和驻极体的数据来实现电动小车的自动循迹和声控行驶。控制终端由 C8051F0....
发表于 06-11 17:20 51次 阅读
如何实现电动小车的自动循迹和声控行驶资料说明

使用51单片机进行自动循迹智能小车的程序资料免费下载

本文档的主要内容详细介绍的是使用51单片机进行自动循迹小车的程序资料免费下载
发表于 06-11 16:13 36次 阅读
使用51单片机进行自动循迹智能小车的程序资料免费下载

Linux操作系统基础教程的详细资料讲解

Linux 是在1991 年发展起来的与UNIX 兼容的操作系统,可以免费使用,它的源代码可以自由传....
发表于 06-11 15:32 56次 阅读
Linux操作系统基础教程的详细资料讲解

普中51单片机开发攻略PDF电子书免费下载

本开发攻略配套的实验平台为:普中 51-双核-A6/A7 开发板,前一款开发板采用的是双 CPU 设....
发表于 06-11 08:00 40次 阅读
普中51单片机开发攻略PDF电子书免费下载

如何使用ATmage32L单片机进行自动循迹智能小车的设计

本寻迹小车是以有机玻璃为车架,ATmage32L单片机为控制核心,加以直流电机、光电传感器和电源电路....
发表于 06-10 18:01 40次 阅读
如何使用ATmage32L单片机进行自动循迹智能小车的设计

使用STM32单片机应用LDC1000电感数字转换器的程序和工程文件

本文档的主要内容详细介绍的是使用STM32单片机应用LDC1000电感数字转换器的程序和工程文件资料....
发表于 06-10 17:39 52次 阅读
使用STM32单片机应用LDC1000电感数字转换器的程序和工程文件

如何让小车在路上走进行智能小车寻迹的详细资料说明

多数情况下,车是在路上跑的,我们的圆梦小车也不例外,只是它能认识的“路”与现实世界不同,因为它的眼睛....
发表于 06-10 17:38 57次 阅读
如何让小车在路上走进行智能小车寻迹的详细资料说明

太阳能电池板自动对光控制集成电路的关键技术研究

针对太阳能电池板自动对光控制集成电路的关键技术展开研究,设计一种可以通过太阳光电池板自动对光的集成电....
的头像 集成电路应用杂志 发表于 06-10 17:25 287次 阅读
太阳能电池板自动对光控制集成电路的关键技术研究

使用STM32F030单片机读取温湿度传感器SHT20的C语言源代码免费下载

本文档的主要内容详细介绍的是使用STM32F030单片机读取温湿度传感器SHT20的C语言源代码免费....
发表于 06-10 17:07 64次 阅读
使用STM32F030单片机读取温湿度传感器SHT20的C语言源代码免费下载