完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
目前,单片机型号种类繁多,以其优越的控制性能在自动化控制领域占有重要地位。如今单片机无处不在,像我们的电冰箱、空调、洗衣机都是单片机在内部控制,当然,他们所用的单片机是定制的,并不是我们学习时使用的单片机。除此不同品牌的单片机芯片采用的内核也会不同,比如INTEL公司的MCS-51内核(代表芯片:AT89系列、国产STC系列等),ARM公司的高性能”Cortex-M3”内核(代表芯片:STM32系列)等。因为内核的差异,使得他们在使用中也会有所不同。
对于初学者来说,51单片机中的STC89C52是很不错的选择,因为它便宜(单片价格在8RMB左右),而且相对容易学习。接下来将以这款芯片为例介绍51单片机。 首先简单介绍这款芯片: 1.STC89C52是STC公司(中国深圳宏晶科技公司)生产的一种低功耗、高性能CMOS8位微控制器,具有8K字节系统可编程Flash存储器(8K对单片机来说不小了,当然不能跟我们的手机比),使用MCS-51内核,指令代码完全兼容传统8051。 2.工作电压范围很广(这里只介绍5V版本),在3.3V~5.5V之间都能工作,但是电压越高,工作电流也会更大,通俗的说,如果用单片机点亮一颗LED灯,使用5.5V供电,灯的亮度要比3.3V供电时亮,耗电也会更多。 3.通用I/O 口(4x8=32个),复位后为:P1/P2/P3 是准双向口/弱上拉, P0 口是漏极开路输出,作为 I/O 口用时,需加上拉电阻。(除非某I/0口置零,否则它就输出高电平) 4.工作频率范围:0~40MHz,相当于普通8051 的0~80MHz,实际工作 频率可达48MHz,其工作频率取决于晶振频率,我们常用的是12MHz、11.0592MHz。 5.ISP(在系统可编程)/IAP(在应用可编程),可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序。在学习过程中,我们只要使用ISP即可,也就是制作好电路板之后,只要把RxD/P3.0,TxD/P3.1通过排针引出来,我们就可以通过USB-TTL把程序烧录到单片机,不需要再把单片机芯片从系统板上取出来。 6.共3 个16 位定时器/计数器。即定时器T0、T1、T2 其他参数就不详细介绍,其资料可自行在网上查阅。 首先需要了解这款芯片的引脚图,才能根据引脚连接各种元件。(暂时只标注常用的的功能) 接下来详细探讨各模块: 1,I/O口 I/O口即输入输出口,是单片机用来输出或者输入信号的端口。STC89C52共有四组(P0、P1、P2、P3),每组8个(每组I/O口能同时输出8位二进制数,所以该芯片为8位控制器),共32个I/O口。 单片机所有I/O口默认状态都是高点平,除非在程序里将其置0,这样的设定可以让单片机运行更稳定。 通常,I/O口都会连接上拉电阻,其目的一是使单片机运行稳定,二是提高单片机驱动能力,即让单片机能控制更大的负载。上拉电阻我们常用阻值为10K的9P排阻即可(其大小在1~10K都可,电阻小可提高驱动能力,电阻大可以降低功耗)。它有9个引脚,一个为公共端,另外八个引脚与I/O口相连。其结构及接线图如下图所示。注意,除了上拉电阻,还有下拉电阻,上拉电阻的公共端是接VCC,下拉电阻的公共端是接GND,这里暂不讨论下拉电阻。 2.时钟电路 这里的时钟并不是我们所说的钟表,而是指一种信号(理想的时钟信号就是矩形波,或者说脉冲波)。从数字电子威廉希尔官方网站 中学习知道,在逻辑电路中,必须依靠时钟信号才能工作(例如触发器,每收到一个时钟信号,就动作一次),单片机其实就可以看成就是一个集成化的逻辑电路。所以我们需要外接时钟电路,来让单片机工作。 时钟电路的核心是晶振,它是一种可以产生稳定震荡频率的电子元件。它的基本参数是震荡频率,单位为MHz,其参数决定了单片机的工作频率。其数值一般刻在晶振元件上面。常用的单片机晶振主要有12.000MHz和11.0592MHz,当程序中使用了定时器,使用11.0592MHz晶振可以定时更准确。 时钟电路除了晶振还有两个瓷片电容(30pF),这两个电阻可以起到微调频率的作用。 晶振电路有两个端口XT1和XT2,将这两个端口分别与单片机的18脚(XTAL2)、19脚(XTAL1)相连即可为单片机提供时钟信号(这两个端口没有顺序,可以随意连接)。 3.复位电路 复位电路说白了就是用来重启单片机,使单片机初始化,重新开始执行程序。当单片机因程序问题出现故障(比如程序中出现不可控的死循环),可通过复位电路向单片机第9脚RET发送一个复位信号,单片机就可自行复位。这个复位信号是一个连续2个机器周期(24个时钟周期)的高电平。也就是单片机的RES脚如果连续两个机器周期都是被置于高电平,单片机就会自动复位。 所以最简单的复位电路就是上图所示。按下开关K,VCC接入单片机RST,两个机器周期后,单片机复位。(实际使用中,你按下按钮立刻松开,这段时间已经远超过两个机器周期,所以按下复位键不需要停顿再松开)如果一直按着复位键,单片机则不会进入工作状态,只有松开复位键单片机才开始工作。 一般来说,单片机上电以后自动从程序开头执行,所有寄存器也是初始值。但是在一些复杂的电路中,单片机的外接电路很多,有时候会有电容电感之类的,他们上电之后并不能立即进入工作状态,他们有个“充电”过程,虽然时间短,但是单片机执行一条指令是微秒级的,很容易让单片机误判,出现意想不到的错误。如何避免这种现象? 请设想:如果单片机上电之后,不立即进入工作状态,而是停顿“一会儿”,等其他元件充电完毕,再进入工作状态,那就可以躲开上电初期的不稳定因素,从而避免误判。 那如何实现这个停顿呢?这就依赖于复位电路的上电自动复位了。 上面是单片机常用的复位电路。 其原理涉及到电路原理中的KCL定律和一阶电路的零状态响应,不感兴趣可略过。 上电后,电解电容C1充电,其电压变化为 [式1], 而RET处的电位即对地电压,可以看到,电阻R9的电压在数值上正好等于RET的电位, 根据基尔霍夫电压定律,R9的电压=电源电压-电容C1电压,即 , 式中的τ为时间常数,其值为τ=RC=1000X22/1000000=22ms,其电压变化曲线如图(简略绘制,仅供参考): 可以看到在很长一段时间里(其实不到20ms),Ur都保持在较高的电位,也就是RET为高电平(3.7V以上电压单片机都认为是高电平),在这段时间,足够单片机躲过上电初期的不稳定。当Ur的电压减小到不足以让单片机判定为高点平,复位失效,单片机工作。 可以看到这种复位电路也能手动复位,按下开关S1,电容C1通过R10放电,松开S1,电容C1又开始充电,其情形与上电复位相同,RET接收到高电平,单片机复位。 所以复位电路的作用一是开机自动复位,躲过上电时的不稳定;二是手动复位,在单片机运行出错时使用。 4.其他引脚 并行串口:第10、11脚是单片机的并行串口,作用就是烧录程序。注意这两脚是P3.0、P3.1复用了。烧录程序需要用到烧录工具USB-TTL。 实际的USB-TTL有很多型号,有的型号有10个引脚,但烧录程序只需用到四个(VCC、GND、RXD、TXD)。所以我们需要四根杜邦线,首先,将转换工具上的VCC、GND与单片机系统板的VCC、GND连接,然后把烧录工具的RXD与单片机的TXD连接,烧录工具的TXD与单片机的RXD连接。因为两个引脚一个是发送数据,一个是接收数据,转换工具发送数据(TXD),单片机自然是接收数据(RXD),反之同理。另外,烧录程序还需用到软件STC-ISP,这是专门用于STC系列单片机的烧录软件。 存储器选通:单片机的31脚是存储器选通EA,单片机内部存储空间很小,如果需要扩展空间,就需要用到这个功能。当EA置于高电平,单片机从内部存储器开始执行程序;当EA置于低电平,单片机则从外部存储器开始执行程序。对初学者来说,我们使用内部存储器就足够了,所以可以直接将EA接VCC。 同样,第30脚ALE为地址锁存信号,也是在有外部存储器是使用,不用时将其悬空即可;29脚PSEN为外部存储器读选通信号,同样将其悬空。另外的40脚、20脚分别接电源正极、负极(地)不用多说了。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1561 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1501 浏览 1 评论
933 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
665 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1555 浏览 2 评论
1850浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
613浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
506浏览 3评论
510浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
491浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 18:49 , Processed in 2.707802 second(s), Total 47, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号