㈠ 单片机的基本组成部分是什么
单片机的基本组成部分:
1、运算器
运算器由运算部件——算术逻辑单元(Arithmetic & Logical Unit,简称ALU)、累加器和寄存器等几部分组成。ALU的作用是把传来的数据进行算术或逻辑运算,输入来源为两个8位数据,分别来自累加器和数据寄存器。ALU能完成对这两个数据进行加、减、与、或、比较大小等操作,最后将结果存入累加器。
运算器有两个功能:
(1) 执行各种算术运算。
(2) 执行各种逻辑运算,并进行逻辑测试,如零值测试或两个值的比较。
运算器所执行全部操作都是由控制器发出的控制信号来指挥的,并且,一个算术操作产生一个运算结果,一个逻辑操作产生一个判决。
2、控制器
控制器由程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成,是发布命令的“决策机构”,即协调和指挥整个微机系统的操作。其主要功能有:
(1) 从内存中取出一条指令,并指出下一条指令在内存中的位置。
(2) 对指令进行译码和测试,并产生相应的操作控制信号,以便于执行规定的动作。
(3) 指挥并控制CPU、内存和输入输出设备之间数据流动的方向。
微处理器内通过内部总线把ALU、计数器、寄存器和控制部分互联,并通过外部总线与外部的存储器、输入输出接口电路联接。外部总线又称为系统总线,分为数据总线DB、地址总线AB和控制总线CB。通过输入输出接口电路,实现与各种外围设备连接。
3、主要寄存器
(1)累加器A
累加器A是微处理器中使用最频繁的寄存器。在算术和逻辑运算时它有双功能:运算前,用于保存一个操作数;运算后,用于保存所得的和、差或逻辑运算结果。
(2)数据寄存器DR
数据寄存器通过数据总线向存储器和输入/输出设备送(写)或取(读)数据的暂存单元。它可以保存一条正在译码的指令,也可以保存正在送往存储器中存储的一个数据字节等等。
(3)指令寄存器IR和指令译码器ID
指令包括操作码和操作数。
指令寄存器是用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存中取到数据寄存器中,然后再传送到指令寄存器。当系统执行给定的指令时,必须对操作码进行译码,以确定所要求的操作,指令译码器就是负责这项工作的。其中,指令寄存器中操作码字段的输出就是指令译码器的输入。
(4)程序计数器PC
PC用于确定下一条指令的地址,以保证程序能够连续地执行下去,因此通常又被称为指令地址计数器。在程序开始执行前必须将程序的第一条指令的内存单元地址(即程序的首地址)送入PC,使它总是指向下一条要执行指令的地址。
(5)地址寄存器AR
地址寄存器用于保存当前CPU所要访问的内存单元或I/O设备的地址。由于内存与CPU之间存在着速度上的差异,所以必须使用地址寄存器来保持地址信息,直到内存读/写操作完成为止。
显然,当CPU向存储器存数据、CPU从内存取数据和CPU从内存读出指令时,都要用到地址寄存器和数据寄存器。同样,如果把外围设备的地址作为内存地址单元来看的话,那么当CPU和外围设备交换信息时,也需要用到地址寄存器和数据寄存器。
简介:
单片机,全称单片微型计算机(英语:Single-ChipMicrocomputer),又称微控制器(Microcontroller),是把中央处理器、存储器、定时/计数器(Timer/Counter)、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。由于其发展非常迅速,旧的单片机的定义已不能满足,所以在很多应用场合被称为范围更广的微控制器;从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。
硬件特性:
1、单片机集成度高。单片机包括CPU、4KB容量的ROM(8031 无)、128 B容量的RAM、 2个16位定时/计数器、4个8位并行口、全双工串口行口;
2、系统结构简单,使用方便,实现模块化;
3、单片机可靠性高,可工作到10^6 ~10^7小时无故障;
4、处理功能强,速度快;
5、低电压,低功耗,便于生产便携式产品;
6、控制功能强;
7、环境适应能力强。
㈡ 学习单片机,需要哪些基础,入门都学哪些东西
1、电路基础:一些数字电路、模拟电路基础。毕竟以后要自己设计电路,这些知识是很有用的。
2、C语言基础:C语言开发,相比汇编最大的优点就是移植性要好。学习51单片机,C语言编程当然需要有些基础。
3、一些单片机的基础知识:虽然是初学者,但是一些基础理论知识还是应该知道的。
4、一些焊接等动手能力,这个要求就不是那么严格了。
㈢ 单片机的主要工作原理什么
单片机原理是指一种在线式实时控制计算机的原理方式。在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机(比如家用PC)的主要区别。
单片机就是一个微型电脑,它是靠程序工作的,并且可以修改。通过不同的程序实现不同的功能。
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
(3)单片机入门工作要素扩展阅读:
单片机正常工作的三大条件:
1、单片机供电电源正常
供电电源是单片机工作的首要条件,如果电源都不正常,那单片机肯定不能正常工作,所以我们在测试任何产品之前首要的工作就是测量芯片及产品的供电电源。
出现电源不正常的情况,主要查找以下几点:电源供电是否正常、芯片是否存在短路现象、芯片的电源管脚是否虚焊或者漏焊、芯片的电源管脚是否有开路现象。
2、单片机复位管教不能出现复位信号
单片机一直处于复位状态,那么单片机的程序肯定运行不正常,所以在遇到单片机不能正常工作且电源正常的情况下,就需要测量一下单片机的复位管脚是否有复位信号出现,不同的单片机的复位信号是不同的。
3、晶振是否起振
引起晶振起振的原因很多,包括晶振频率选择、电容的选择,如果晶振不起振主要查找以下几点:晶振是否与单片机的典型应用电路上使用的晶振频率不一致。
参考资料来源:网络-单片机
㈣ 学习单片机怎么入门
循序渐近,一点点吃透学习,方法如下:
1、选择一本好教材,建议《51单片机轻松入门
基于STC15W4K系列》这本,内容新,讲解透彻,有配套视频可辅助参考,不管是初学入门还是已经懂得单片机皮毛,满足所有需求。
2、有了书就要理解意思,所以要吃透教材,看不懂也不要紧,多看,多问,在问题中寻找学习方向。
3、选择配套产品,不要在乎板子的资源多少,推荐吴鉴鹰的单片机,开发板性价比高;软件建议用Keilc51,硬件要有pc机和开发板,开发板要求有流水灯、数码管、独立按键、矩阵键盘、ad转换、液晶屏、蜂鸣器,这就差不多了。其它不明白的就网上找视频找教程,总会有解答的东西。
4、操练起来,从最基本的流水灯开始,试着先控制一个发光管,慢慢的变换花样,做出自己的个性来。
5、带着问题解决问题,一开始先不要找人请教,自己试,这样记忆最深刻,也最有效果,但也不要钻牛角尖,实在不行就问,要不刚建立起来的那点想法就打击没有了。
6、当技术水平,学习方法,心理素质都达到一定的境界了,就算入门了,接下来就要看个人的努力和悟性怎样了,当然在学习单片机的过程中必须遵循一定的原则,坚守住一定的底线,这样才能用最少的经历,在最短的时间内获得大的进步。
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。
㈤ 单片机正常工作的三要素!
晶振、电源、复位电路
㈥ 我是一名大专生,想自学成为单片机硬件工程师,应该学些什么知识呢
粗算我接触单片机已经有两年多了,从最初的MCS-51,到后来的AVR、MSP430、PIC,当然我还只算是一只入门不久的菜鸟,人外有人,牛人真的太多了。也常有同学问我单片机应该怎么学,我的回答都是两个字:实践。我觉得实践才能出真知,不实践是永远也学不会单片机的,这和你看一百道菜谱不下厨永远也做不出佳肴,看一百本游泳的书不下水永远也学不会游泳是一个道理。那么怎么去实践?这可能是初学者最关心的问题,网上类似的回答也很多,这都是老生常谈了,只要你是有心人,一搜一大把。
简单说一下学习单片机的步骤:
1.购买常用的工具(万用表,烙铁,烙铁架,松香,焊锡,螺丝刀,吸锡器,摄子)和电子元件(万能板,电阻,电容,发光二极管,整流桥,数码管,常用接插件等),先做个5V的直流电源(变压器/整流桥/7812/7805/电解电容若干,电容的极性可别反了),再从基本的发光二极管驱动电路开始,灌电流还是拉电流?限流电阻取多大?怎么计算的?你是不是发现,很多基本的知识你都不懂,甚至连元件的型号你都叫不出来。没有关系,多问人,论坛、QQ技术群里热心人还是有的。准备一个笔记本,有用的知识应该记下来。
2.用万能板搭建一个51的最小系统(当然要从51入手,资料太多了),点亮一个LED再说,接着是数码管、蜂鸣器,继电器,EEPROM,AD/DA,LCD,时钟芯片,数字温度计,红外遥控编解码等等,这里面三极管用的很普遍,有时用作放大,有时用开关,一定要理解清楚。看来要做的工作还真不少,这可不能急,一样一样来,谁让你想学到真本领。有条件买个开发板也很方便,若是能坚持DIY,也是趣味无穷。很多芯片是可以免费申请到的,最好申请的是美信公司的片子,我用的很多芯片都是从那申请的,例如:MAX1270、DS12C887、DS18B20、MAX518、MAX396、MAX7219、MAX145等,在此我是发自内心的感谢美信公司为我提供的免费午餐,确实要用的话就申请一下,只是好奇,或贪小便宜,那就别申请,别让人家小瞧了咱中国未来的电子工程师。当然这些芯片的datasheet都是英文的,所以,大学生朋友们,尽管我们是学电的,英文还是要好好学的。
3.单片机的编程,多数人先接触汇编,要学好单片机,汇编是要懂的,但最终你必须掌握C语言,C语言真的太强大、太方便了,其好处不用我多说了。IDE个人感觉最好的是Keil,在这推荐一下。刚开始
当然是从跑马灯开始,网上有很多单片机实验的源代码,都是绝好的学习资料,好好消化一下,收获会很大。
“hello
world”的串口通信例子应该尽早调通,在没有仿真器的情况下,串口就是最好的调试工具,一个高人曾指点我:拿到一个处理器,首先要做的就是打通串口。串口一通就好比一个习武之人打通了全身筋脉,再学其它武功就会易如反掌。定时器是单片机非常重要的资源,其使用方法一定要整清楚。高人说过,没有定时器的单片机不是单片机,事实上我也没见过哪款单片机没有定时器的。另外,一个好的编程风格也很重要,看一看相关的资料,你会受益很多,网上这样的资料也很多。
4.程序写好了,怎么下载到单片机里,总是借别人的编程器总是不太好,现在一些单片机有ISP功能了,如89S5X和AVR单片机。网上有一个Easy51Pro
v2.0宇宙版,资料很全,感谢前辈的无私奉献啊。照他说的电路自己做个ISP下载线,非常好用,若是自己做的不好用,买个现成的也不贵。这钱若还舍不得,那就试试STC的51系列单片机吧,可以用串口烧你的程序,这其实叫IAP,有兴趣可以去网上搜一下。当然,等你以后的用的单片机多了,编程器还是不可缺少的。
5.
单片机故障的排查:对于单片机的问题,首先搞清楚一个CPU工作的三要素:电源,时钟源(晶振),复位电路,是不是都没有问题了,如果有示波器那就更好了,看一下ALE脚是不是有fosc/6的方波信号,有的话说明单片机在工作,三要素已经满足了,没有的话只能再不厌其烦的检察了,其实很简单,参照书上的电路一般没问题。
等自己动手做出些东西来了,可以算是入门了,会有一种成就感,但是不要满足于这点小成功,这些还都是小把戏,前面的路还是漫长的,如FPGA,PCB,DSP,ARM等,都是需要学习的。保存好你的电路和源代码,这都是你的财富。会有用到它们的时候。另外,你做的东西可能只是功能上能实现,离一个成熟的产品还有很大差距,稳定性、抗干扰都不是小问题。这些知识必须有良好的电路基础理论,大学里学的数电、模电、信号都是非常重要的,特别是模电,好好复习,保证每次复习你都会有新的收获。路漫漫其修远兮,耐心去求索吧。
硅谷芯微单片机培训中心
㈦ 单片机工作需哪些条件
单片机工作需要条件如下:
1、合适的工作电压。
2、复位电路(保证可靠复位)
3、时钟。
㈧ 单片机如何入门,入门后深入学习,还要学习哪些
1、电路基础:一些数字电路、模拟电路基础。毕竟以后要自己设计电路,这些知识是很有用的。
2、C语言基础:C语言开发,相比汇编最大的优点就是移植性要好。学习51单片机,C语言编程当然需要有些基础。
3、一些单片机的基础知识:虽然是初学者,但是一些基础理论知识还是应该知道的。
4、一些焊接等动手能力,这个要求就不是那么严格了。
㈨ 单片机必备基础知识
学习单片机需要一些相关的基础知识,要有电路、模拟电路基础,可以不精通,但是至少有这个概念。熟悉一些常用的基础元器件的用法,比如电阻、电容的作用,了解二极管、三极管的基本用法,能够理解单片机最先系统电源电路、晶振电路和复位电路的工作原理。
数字电路基础,单片机本身就是根据数字电路原理运行的,了解数字电路中的“0”、和“1”概念,了解数字电路的门电路,掌握真值表。
C语言也是学习单片机的必要知识,市场的单片机都是用C语言开发的,已经很少人应用到汇编语言。
有了上面的基础知识后,就要选择一款单片机平台入门。目前市场上有的单片机类型多种多样,大家一定要仔细挑选一款适合自己的。
选好单片机后安装单片机开放环境,熟悉单片机软件、下载器、开发板的使用。
㈩ 学习单片机要有哪些基础知识
学习使用单片机就是理解单片机硬件结构,以及内部资源的应用,在汇编或C语言中学会各种功能的初始化设置,以及实现各种功能的程序编制。
第一步:数字I/O的使用
使用按钮输入信号,发光二极管显示输出电平,就可以学习引脚的数字I/O功能,在按下某个按钮后,某发光二极管发亮,这就是数字电路中组合逻辑的功能,虽然很简单,但是可以学习一般的单片机编程思想,例如,必须设置很多寄存器对引脚进行初始化处理,才能使引脚具备有数字输入和输出输出功能。每使用单片机的一个功能,就要对控制该功能的寄存器进行设置,这就是单片机编程的特点,千万不要怕
麻烦,所有的单片机都是这样。
第二步:定时器的使用
学会定时器的使用,就可以用单片机实现时序电路,时序电路的功能是强大的,在工业、家用电气设备的控制中有很多应用,例如,可以用单片机实现一个具有一个按钮的楼道灯开关,该开关在按钮按下一次后,灯亮3分钟后自动灭,当按钮连续按下两次后,灯常亮不灭,当按钮按下时间超过2s,则灯灭。数字集成电路可以实现时序电路,可编程逻辑器件(PLD)可以实现时序电路,可编程控制器(PLC)也可以实现时序电路,但是只有单片机实现起来最简单,成本最低。
定时器的使用是非常重要的,逻辑加时间控制是单片机使用的基础。
第三步:中断
单片机的特点是一段程序反复执行,程序中的每个指令的执行都需要一定的执行时间,如果程序没有执行到某指令,则该指令的动作就不会发生,这样就会耽误很多快速发生的事情,例如,按钮按下时的下降沿。要使单片机在程序正常运行过程中,对快速动作做出反应,就必须使用单片机的中断功能,该功能就是在快速动作发生后,单片机中断正常运行的程序,处理快速发生的动作,处理完成后,在返回执行正常的程序。中断功能使用中的困难是需要精确地知道什么时候不允许中断发生(屏蔽中断)、什么时候允许中断发生(开中断),需要设置哪些寄存器才能使某
种中断起作用,中断开始时,程序应该干什么,中断完成后,程序应该干什么等等
。
中断学会后,就可以编制更复杂结构的程序,这样的程序可以干着一件事,监视着一件事,一旦监视的事情发生,就中断正在干的事情,处理监视的事情,当然也可以监视多个事情,形象的比喻,中断功能使单片机具有吃着碗里的,看着锅里的功能。
以上三步学会,就相当于降龙十八掌武功,会了三掌了,可以勉强护身。
第四步:与PC机进行RS232通信
单片机都有USART接口,特别是MSP430系列中很多型号,都具有两个USART接口。USART接口不能直接与PC机的RS232接口连接,它们之间的逻辑电平不同,需要使用一个MAX3232芯片进行电平转换。
USART接口的使用是非常重要的,通过该接口,可以使单片机与PC机之间交换信息,虽然RS232通信并不先进,但是对于接口的学习是非常重要的。正确使用USART接口,需要学习通信协议,PC机的RS232接口编程等等知识。试想,单片机实验板上的数据显示在PC机监视器上,而PC机的键盘信号可以在单片机实验板上得到显示,将是多么有意思的事情啊!
第五步:学会A/D转换
MAP430单片机带有多通道12位A/D转换器,通过这些A/D转换器可以使单片机操作模拟量,显示和检测电压、电流等信号。学习时注意模拟地与数字地、参考电压、采样时间,转换速率,转换误差等概念。
使用A/D转换功能的简单的例子是设计一个电压表。
第六步:学会PCI、I2C接口和液晶显示器接口
这些接口的使用可以使单片机更容易连接外部设备,在扩展单片机功能方面非常重要。
第七步:学会比较、捕捉、PWM功能
这些功能可以使单片机能够控制电机,检测转速信号,实现电机调速器等控制起功能。
如果以上七步都学会,就可以设计一般的应用系统,相当于学会十招降龙十八掌,可以出手攻击了。
第八步:学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计
学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计是非常重要的,因为这是当前产品开发的发展方向。
到此为止,相当于学会15招降龙十八掌,但还不到打遍天下无敌手的境界。即使如此,也算是单片机大虾了。