单片机应用编程技巧100问1文档格式.docx

上传人:b****3 文档编号:16749404 上传时间:2022-11-25 格式:DOCX 页数:43 大小:43.70KB
下载 相关 举报
单片机应用编程技巧100问1文档格式.docx_第1页
第1页 / 共43页
单片机应用编程技巧100问1文档格式.docx_第2页
第2页 / 共43页
单片机应用编程技巧100问1文档格式.docx_第3页
第3页 / 共43页
单片机应用编程技巧100问1文档格式.docx_第4页
第4页 / 共43页
单片机应用编程技巧100问1文档格式.docx_第5页
第5页 / 共43页
点击查看更多>>
下载资源
资源描述

单片机应用编程技巧100问1文档格式.docx

《单片机应用编程技巧100问1文档格式.docx》由会员分享,可在线阅读,更多相关《单片机应用编程技巧100问1文档格式.docx(43页珍藏版)》请在冰豆网上搜索。

单片机应用编程技巧100问1文档格式.docx

钟晓捷陈涛,机械工业出版社出版)等,可以在较大型的科技书店里查找或者直接从网上订购。

UID

43137 

帖子

1325 

精华

86 

积分

2576 

阅读权限

70 

在线时间

46小时 

注册时间

2007-7-27 

最后登录

2008-5-12 

查看详细资料

引用使用道具报告回复TOP

呱呱

金牌会员

∙个人空间

∙发短消息

∙加为好友

∙当前在线

沙发大中小发表于2008-5-916:

09 

只看该作者

回复楼主的帖子

6.初学者到底是应该先学C还是汇编?

对于单片机的初学者来说,应该从汇编学起。

因为汇编语言是最接近机器码的一种语言,可以加深初学者对单片机各个功能模块的了解,从而打好扎实的基础

7.我是一名武汉大学电子科技大3的学生,学了电子线路、数字逻辑、汇编和接口、C语言,但是总是感觉很迷茫,觉好象什幺都不会。

怎幺办?

大学过程是一个理论过程,实践的机会比较少,往往会造成理论与实践相脱节,这是国内大学教育系统的通病,不过对于学生来说切不可好高骛远。

一般从大三会开始接触到一些专业课程,电子相关专业会开设相关的单片机应用课程并且会有简单的实验项目,那么要充分把握实验课的机会,多多地实际上机操作练习。

平时可以多看看相关的电子技术杂志网站,看看别人的开发经验,硬件设计方案以及他人的软件设计经验。

有可能的话,还可以参加一些电子设计大赛,借此机会2--3个人合作做一个完整系统,会更有帮助。

到了大四毕业设计阶段,也可以选择相关的课题作些实际案例增长经验。

做什么事情都有个经验的积累过程,循序渐进。

8.请问作为学生,如何学好单片机?

学习好单片机,最主要的是实践,在实践中增长经验。

在校学生的话,实践机会的确会比较少,但是有机会的话,可以毕业实习选择相关的课题,这样就可以接触到实际的项目。

而且如果单片机微机原理是一门主课的话,相信学校会安排比较多的实践上机机会。

有能力的话,可以找一些相关兼职工作做做,会更有帮助。

而且单片机开发应用需要软硬件结合,所以不能只满足于编程技巧如何完

美,平时也要注意硬件知识的积累,多上上电子论坛网站,买一些相关杂志。

可能的话,可以到电子市场去买一些小零件,自己搭一个小系统让它工作起来。

HOTLEK的单片机是RISC结构的8位单片机,它可以广泛应用在家用电器、安全系统、掌上游戏等方面。

大概来说可以分成I/O型单片机、LCD型单片机、A/D型单片机、A/DwithLCD型单片机等等。

这些单片机的中文资料我们都公开在HOLTEK网站。

HOLTEK各类单片机的使用手册下载地址:

HOLTEK单片机软件/硬件应用范例下载地址:

HOLTEK单片机支持工具下载地址:

9.如何才能才为单片机的高手啊?

要成为单片机高手,应该多实践,时常关注单片机的发展趋势;

经常上一些相关网站,从那里可以找到许多有用的资料。

10.女性是否适合单片机软件编程这个行业?

要根据自己的兴趣,配合自己对软件编程的耐性,男女皆适合这个行业。

板凳大中小发表于2008-5-916:

回复沙发的帖子

12.8位机还能延续多久!

以现在MCU产品主力还是在8位领域,主要应用于汽车应用、消费性电子、

电脑及PC周边、电信与通讯、办公室自动化、工业控制等六大市场,其中车用

市场多在欧、美地区,而亚太地区则以消费性电子为主,并以量大低单价为产

品主流,目前16位MCU与8位产品,还有相当幅度的价差,新的应用领域也

仍在开发,业界预计,至少在2005年前8位的MCU仍是MCU产品的主流。

13.学习ARM及嵌入式系统是否比学习其它一般单片机更有使用前景?

于一个初学者应当具备哪些相关知识?

一般在8位单片机与ARM方面的嵌入式系统是有层次上的差别,ARM适

用于系统复杂度较大的高级产品,如PDA、手机等应用。

而8位单片机因架构

简单,硬件资源相对较少,适用于一般的工业控制、消费性家电等等。

对于一个

单片机方面的软件编程初学者,应以HOLTEK系列或8051等8位单片机来做入

门练习。

而初学者应当具备软件编程相关知识,单片机一般软件编程是以汇编语

言为主,各家有各家的语法,但大都以RISC的MCU架构为主,其中RISC

(ReducedInstructionSetComputer)代表MCU的所有指令。

都是利用一些简单的

指令组成的,简单的指令代表MCU的线路可以尽量做到最佳化,而提高执行

速率。

另外初学者要具备单片机I/O接口的应用知识,这在于周边应用电路及各

种元器件的使用,须配合自己所学的电子学及电路学等。

14.符合44PIN的80系列8位单片机的MCU有哪些?

符合44PIN的80系列8位单片机有Z8674312FSC、Z86E2112FSC、

Z86E2116FSC。

15.请介绍一下MCU的测试方法。

MCU从生产出来到封装出货的每个不同的阶段会有不同的测试方法,其中

主要会有两种:

中测和成测。

所谓中测即是WAFER的测试,它会包含产品的功能验证及AC、DC的测

试。

项目相当繁多,以HOLTEK产品为例最主要的几项如下:

①接续性测试:

检测每一根I/OPIN内接的保护用二极管是否功能无误。

②功能测试:

以产品设计者所提供测试资料(TESTPATTERN)灌入IC,检

查其结果是否与当时SIMULATION时状态一样。

③STANDBY电流测试:

测量IC处于HALT模式时即每一个接点(PAD)在

1态0态或Z态保持不变时的漏电流是否符合最低之规格。

④耗电测试:

整颗IC的静态耗电与动态耗电。

⑤输入电压测试:

测量每个输入接脚的输入电压反应特性。

⑥输出电压测试:

测量每个输出接脚的输出电压位准。

⑦相关频率特性(AC)测试,也是通过外灌一定频率,从I/O口来看输出

是否与之匹配。

⑧为了保证IC生产的长期且稳定品质,还会做产品的可*性测试,这些测

试包括ESD测试,LATCHUP测试,温度循环测试,高温贮存测试,湿

度贮存测试等。

成测则是产品封装好后的测试,即PACKAGE测试。

即是所有通过中测的

产品封装后的测试,方法主要是机台自动测试,但测试项目仍与WAFER

TEST相同。

PACKAGETEST的目的是在确定IC在封装过程中是否有任何

损坏。

16.能否利用单片来检测手机电池的充放电时间及充放电时的电压电流变

化,并利用一个I/O端口使检测结果在电脑上显示出来?

目前市场上的各类智能充电器,大部分都采用MCU进行充电电流和电

压的控制。

至于要在电脑上显示,好象并不实用,可能只有在一些专门的电池检

测仪器中才会用到;

对于一般的手机用户来说,谁会在充电时还需要用一台电脑

来做显示呢?

要实现单片机与电脑的连接,最简单的方式就是采用串口通讯,但

需要加一颗RS-232芯片。

17.在ARM编程中又应当如何?

4楼大中小发表于2008-5-916:

10 

回复板凳的帖子

就以嵌入式系统观念为例,一般嵌入式处理器可以分为三类:

嵌入式微处理

器、嵌入式微控制器、嵌入式DSP(DigitalSignalProcessor)。

嵌入式微处理器就是和通用计算机的微处理器对应的CPU。

在应用中,一

般是将微处理器装配在专门设计的电路板上,在母板上只保留和嵌入式相关的功

能即可,这样可以满足嵌入式系统体积小和功耗低的要求。

目前的嵌入式处理器

主要包括:

PowerPC、Motorola68000、ARM系列等等。

嵌入式微控制器又称为单片机,它将CPU、存储器(少量的RAM、ROM或

两者都有)和其它接口I/O封装在同一片集成电路里。

常见的有HOLTEKMCU

系列、MicrochipMCU系列及8051等。

嵌入式DSP专门用来处理对离散时间信号进行极快的处理计算,提高编译

效率和执行速度。

在数字滤波、FFT(FastFourierTransform)、频谱分析、图像处

理的分析等领域,DSP正在大量进入嵌入式市场。

18.MCU在射频控制时,MCU的时钟(晶振)、数据线会辐射基频或基频的

倍频,被低噪放LNA放大后进入混频,出现带内的Spur,无法滤除。

除了

用layout、选择低辐射MCU的方法可以减少一些以外,还有什幺别的方法?

在设计高频电路用电路板有许多注意事项,尤其是GHz等级的高频电路,

更需要注意各电子组件pad与印刷pattern的长度对电路特性所造成的影响。

近几年高频电路与数位电路共享相同电路板,构成所谓的混载电路系统似乎有增

加的趋势,类似如此的设计经常会造成数位电路动作时,高频电路却发生动作不

稳定等现象,其中原因之一是数位电路产生的噪讯,影响高频电路正常动作所致。

为了避免上述问题除了设法分割两电路block之外,设计电路板之前充分检讨设

计构想,才是根本应有的手法,基本上设计高频电路用电路板必需掌握下列三大

原则:

①高质感。

②不可取巧。

③不可仓促抢时间。

以下是设计高频电路板的一些建议:

①印刷pattern的长度会影响电路特性。

尤其是传输速度为GHz高

速数位电路的传输线路,通常会使用stripline,同时藉由调整配

线长度补正传输延迟时间,其实这也意味着电子组件的设置位置

对电路特性具有绝对性的影响。

②Ground作大better。

铜箔面整体设置ground层,而连接via的better

ground则是高频电路板与高速数位电路板共同的特征,此外高频

电路板最忌讳使用幅宽细窄的印刷pattern描绘ground。

③电子组件的ground端子,以最短的长度与电路板的ground连接。

具体方法是在电子组件的ground端子pad附近设置via,使电子

组件能以最短的长度与电路板的ground连接。

④信号线作短配线设计。

不可任意加大配线长度,尽量缩短配线长

度。

⑤减少电路之间的结合。

尤其是filter与amplifier输出入之间作电

路分割非常重要,它相当于audio电路的crosstalk对策。

⑥MCU回路Layout考量:

震荡电路仅可能接近IC震荡脚位;

震荡

电路与VDD&

VSS保持足够的距离;

震荡频率大于1MHz时不

需加osc1&

osc2电容;

电源与地间要最短位置并尽量拉等宽与

等距的线,于节点位置加上104/103/102等陶瓷电容。

19.Intel系列的96单片机80c196KB开发系统时,都有那些注意事项?

一个即时系统的软体由即时操作系统加上应用程序构成。

应用程序与作业系

统的接口通过系统调用来实现。

用80C196KB作业系统的MCU,只能用内部

RAM作为TCB和所有系统记忆体(含各种控制表)以及各个任务的工作和资料

单元。

因此一定要注意以下几点:

(1)对各个任务分配各自的堆迭区,该堆迭区

既作为任务的工作单元,也作为任务控制块的保护单元。

(2)系统的任务控制块

只存放各任务的堆迭指标,而任务的状态均存放于任务椎栈中。

在一个任务退出

运行时,通过中断把它的状态进栈,然后把它的堆迭指标保存于系统的TCB中;

再根据优先取出优先顺序最高的已就绪任务的堆迭指标SP映象值送入SP中;

最后执行中断返回指令转去执行新任务。

(3)各任务的资料和工作单元尽量用堆

迭实现,这样可以允许各任务使用同一个子程序。

使用堆迭实现参数传递并作为

工作单元,而不使用绝对地址的RAM,可实现可重入子程序。

该子程序既可为

各个任务所调用,也可实现递回调用。

20.在demo板上采样电压时,不稳定,采样结果有波动,如何消除?

①一般来说,仿真器都是工作在一个稳压的环境(通常为5V)。

如果用仿真

器的A/D时,要注意其A/D参考电压是由仿真器内部给出,还是需要外部提供。

②A/D转换需要一个连续的时钟周期,所以在仿真时不能用单步调试的方法,否

则会造成A/D采样值不准。

③至于A/D采样不稳定,可以在A/D输入口加一电容,起到滤波作用;

在软件

处理时采用中值滤波的方法。

5楼大中小发表于2008-5-916:

回复4楼的帖子

21.在车载DVD系统中,如何设计电子防震系统?

在车载DVD系统,最好选择高档DVD机,因为高档DVD机都采用电子防

震系统(ADVANCEDESP),当记忆缓冲区内的读数降低,先进的电子防震设计会

以双速读数系统,做出比正常速度快两倍的读数速率,以减低噪声,即使连续震

荡仍可避免跳线情况出现,现在就说说什幺叫电子防震。

简单地说:

电子防震就

是一个信号的储存--释放过程,首先CD要先把信号进行提前读取,也就是我们

见到机子的加速,再把信号储存在RAM中,而我们在开防震的时候所听到的就

是经过RAM的声音,这样就是它的过程。

当没有防震时是由于信号是1比1读

取的,所以当受到冲击后,就会出现跳音。

而当开了防震时,机子受到冲击后,

由RAM释放出来的声音使音乐不停地播放,而与此同时,光头迅速进行复位检

索,当检索到信号后立即补充,所以不会出现跳音。

大概的情况就是这样。

但是

这样还没有满足用家的要求,由于这种的方法带来的时间短,通常只有3秒,所

以跳音的机会还是蛮高,如果增大RAM又带来造价的增高因为RAM这东西价

格较贵,尤其是质量好的。

22.在电子防震技术中,有那些IC或器件可供选择?

在电子防震技术中,最重要的技术之一要数是RAM技术,而一直以来都是

因为它的成本问题,所以防震时间都一直不能增加,也就是说RAM本身就有限

制,RAM的容量越大,造价就越高。

而许多厂家就如何在RAM的限制里得到

最大限度的记忆时间展开了开发研究。

23.如何进行编程可以减少程序的bug?

在此提供一些建议,因系统中实际运行的参数都是有范围的。

系统运行中要

考虑的超范围管理参数有:

物理参数。

这些参数主要是系统的输入参数,它包括激励参数、采集处理中

的运行参数和处理结束的结果参数。

合理设定这些边界,将超出边界的参数都视

为非正常激励或非正常回应进行出错处理。

资源参数。

这些参数主要是系统中的电路、器件、功能单元的资源,如记忆

体容量、存储单元长度、堆迭深度。

在程序设计中,对资源参数不允许超范围使

用。

应用参数。

这些应用参数常表现为一些单片机、功能单元的应用条件。

E2PROM的擦写次数与资料存储时间等应用参数界限。

过程参数。

指系统运行中的有序变化的参数。

在上述参数群对一程序编写者而言,须养成良好习惯,在程序的开头,有顺

序的用自己喜欢文字参数对应列表来替代,然后用自己定义的文字参数来编写程

序,这样在做程序的修改及维护时只在程序的开头做变动即可,不用修改到程序

段,才比较容易且不会出错。

24.有人认为单片机将被ARM等系列结构的嵌入式系统所取代。

单片机的

生命期还有多长?

因为8位单片机与嵌入式系统的ARM在功能结构和单价的差异,故应用层

次上就有很大的不同。

ARM适用于系统复杂度较大的高级产品,如PDA、手

机等应用。

而8位单片机因架构简单,硬件资源相对较少,适用于一般的工业

控制,消费性家电……等等。

评估单片机近期是否会给ARM取代,要观察两个

因素:

-芯片成本

因ARM的工作频率较高,电路较庞大,所需的芯片制造工艺要求在0。

25U

以上,成本较高。

8位单片机工作频率相对较低,电路较小,所需的芯片制造工

艺在0。

5U即可,成本较低。

-功能定位

ARM的功能较单片机强,但两者定位不同。

就如现阶段不会有人用ARM

去作一个简单的工业定时开关。

当然,如果两者单价相同也无不可,但现实是有

很大的单价差距。

至于将来,因芯片制造成本会不断下降,上述的成本差异影响愈来愈少!

我估计在往后5年单片机仍有价格优势,仍能存活!

但ARM是否会精简架构,

降低成本,抢夺低阶市场?

我想可能性不大,ARM应该会向上发展。

同样,单

片机也只能向上发展,如16位,高功能……等。

原因就是因为芯片制造工艺进

步太快。

压迫芯片设计往高集成发展。

25.在单片机C编成时,如何才能使生成的代码具有和汇编一样的效率?

如果是使用C语言编程时,不太可能生成的代码具有1:

1和汇编一样的效

率。

C语言命令要被硬件识别并执行,必须通过编译器编译。

编译器分为前端、

中端、后端。

前端与各种计算机语言写的程序打交道,后端与处理器的基本指令

集接轨。

所以如果使用C编程时,要达到最高的效率,最好能够很了解所使用

的C编译器。

先试验一下每条C语言编译以后对应的汇编语言的语句行数,这

样就可以很明确的知道效率。

在今后编程的时候,使用编译效率最高的语句,这

样就能确保单片机C编程的时候同样的功能不同的C程序,编译效率最高。

是各家的C编译器都会有一定的差异,优秀的嵌入式系统C编译器代码长度和

执行时间仅比以汇编语言编写的同样功能程度长5-20%,所以不同厂家的C编

译器的编译效率也会有所不同。

2007-7-

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1