原创 【动手做个移动电源】3、51单片机简介

2012-11-25 22:43 4052 11 11 分类: 电源/新能源 文集: 移动电源-电霸

好的,前面大概阐述了一整个的设计思路,下面就分系统开始介绍一下器件选型的思路吧,简单介绍一下选型需求,为什么选这样的器件。

20121118232901408.jpg

这小节主要介绍一下MCU,虽然各路英雄都不只一次的说过,但我还是唠叨一下吧。对于移动电源这样的消费电子产品来说,首先要实现的是功能,然后是成本,功能上为了实现电池的充放电,充电时需要判断电池电压和温度以保证电池不会过充和过温,这是最基本的安全功能,必须满足,放电的时候要保证电池不过放、电流不超过电池的放电速率,同时保证电池温度不超过安全温度(前面说的是50度针对的是新工艺的一些电池,现在市面上其实大部分都是标定的45度安全温度,并不是说超过45度就一定会有问题,只是在超过这个温度后电池的充放电特性会产生较大改变……)所以,需要有AD功能,同时能提供基本的数字逻辑。

综上,其实这个系统不需要加这么多东西,一个最普通的充电芯片+一个比较电路+一些逻辑电路就OK了,但是考虑到设计的方便性,以及做这个东西的初衷,还是采用入门级最通用的51单片机来实现,以达到最多的功能。

(1)关于51单片机

说到单片机,最开始上学的时候接触到这个东西,一直就这个概念纠结了很久,也没见什么书上开篇就讲的很透彻的。一段时间之后,自己的理解就是:其实就是一个集成的数字芯片,芯片里把CPU、内存、外存以及其他一些常有的数字逻辑电路集成在了一起,方便小系统拥有的一个逻辑控制系统,MCU就可以理解为单片机。

一般在ARM7以上架构的系统不叫单片机,主要的原因是因为在那样的速度上,很少有器件会内部集成匹配这样速度的内外存器件。

单片机和电脑对应:电脑有CPU,单片机里面集成了CPU核完成指令调度管理;电脑要加内存条,单片机里面会集成一定容量的RAM(比如普通51里面有512个字节的空间),这个内存是用于程序运行过程中的变量缓存的,比如你做一个算法,CPU在读程序的时候发现你定义了一个变量,这个变量的值就回占用RAM空间来做中间暂存和处理的;电脑有硬件,我们装系统都是装在硬盘里的,同理,单片机有内部EEPROM或者Flash这样的外存空间,就是用于烧写程序的……

以上是对什么是单片机的一些自己的理解,有误之处请见谅,个人能力,呵呵。还有个要说的就是,很多初学者在图书管买书的时候都发现有很多芯片的型号,都是51单片机,不太理解。实际上,不管是51430ARM架构等等,这个名字都是针对的硬件系统的架构来的,每个公司在定义了一个新的架构时会取一个名字,比如ARM公司针对CPU定义的M3M0ARM7ARM9A15等等,51单片机也是如此,最早时某公司(我也不太记得哪个公司了)开发了一个MCU的架构取了个名字叫51,后来好多家公司都做这个芯片,不同的型号,比如AT89C51,大家看到最多的一个名字。实际上,随着芯片技术的发展,这种老的器件早就被淘汰了,当然,可能有些小公司还一直在坚持着用,但是实际上,这个器件已经没有任何优势了。

目前国内说51单片机,最多的指的是STC51系统单片机,国内的一家公司(生产供应不明,研发不明,各种不明的一家个人主义及其浓烈的xx公司,我不好评价)。这些芯片基本上功能都差不多,用法也差不多,没次我和大家提到这个,首要阐述的观点就是:不会的先查器件资料,看全了器件资料你就会了。所以,大家学习的话可以直接到官网上去down个器件资料好好看看,看着看着再辅助其他一些资料就会明白的。

这里出于成本和功能的考虑,直接用国内这个STCSTC12LE5A60S2,当然,大家可以随便用的,功能都能实现的。

(2)关于STC系列的我准备用的这个器件

用一个器件,首先需要看器件资料。所以,我们先到官网上去down一个器件资料吧。说到官网,我就啰嗦一下,STC系列的器件在百度里搜索宏晶就可以了,第一个连接就是,叫宏晶科技,点进去之后,看到那个非常土鳖的页面,大家也别惊讶,不要以为进错了,http://www.mcu-memory.com/没有错的,我不得不吐槽一下这家公司的烂主页,我第一次打开的时候,一度以为自己进错了或者浏览器异常,这尼玛再没钱也不用整成这个样子吧,一家公司的官网烂到这种程度深刻的让人怀疑他们的专业水准啊!找个学生,给了几千块钱做的也比这个好。这个网站实在是烂到可以,当然,唯一的优点是因为基本都是文本html,打开速度比较快。

在这里也不是说要给这个企业抹上污点,实在是这个网站做的太烂了一点,存文本啊,摆的格式啊……希望我支持了这么多年的国产单片机能稍微给点力,降成本怎么会降到这种地步啊~~~

(3)关于最小系统

很多时候,都有人说单片机的最小系统,我的理解就是:CPU正常加载程序需要的最小单元。前面我们提到,MCU可以类似对应为一个主板上放了CPU+内存+硬盘,那么,这么让这个CPU正常加载程序呢(假设硬盘里已经有了程序,外面外面接了一个显示器看log标志)?

a) 供电

不用说大家肯定也清楚,最重要的条件之一是电源。正确的电压+足够的供流能力,这样,CPU才能正常起机;

b) 时钟

CPU等等都是从晶体管发展起来的数字电路,数字电路最最重要的一个特点就是需要时钟源提供数字逻辑的跳变等等,我们通常所说的CPU的频率,其实就是通过主板上的一个晶体接入一个倍频系统提供时钟的,51单片机这样的低速单片机中需要采用xxMHz的晶振。这就是数字系统的核心——时钟;

c) 正常的复位时序

因单片机系统中存在的一些逻辑顺序等等,正常的复位时序是不可少的

(4)51单片机的最小系统

我们进入宏晶的官网,找到这次制作需要用到的STC12LE5A60S2的资料下载下来,里面的最小系统如下:

20121118232937536.jpg

后续在原理图部分详细讲解!这里的7805就不要用了,实在是效率太低了,T_T只是给个示意哈~等每个部分都大概介绍了一下后再详细讲吧~

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
11
关闭 站长推荐上一条 /3 下一条