« 上一篇下一篇 »

单片机最小系统及部分外围模块电路的设计

终于有时间来写写啦。

前面一段时间应老师所托,做一个单片机的最小系统加部分外围模块,于是就做了一些工作,在几天前完成了,还算过得去吧。在这个过程,有些微的感想,来和大家分享一下。

系统的要求:

1、设计单片机的最小系统(复位、时钟),另外加一些外围模块(蜂鸣器、数码管——用三极管来进行控制、按键及温度传感器)。

2、串口下载,供电通过其他的电源线。

先看下原理图:

          

       

         画这个图也花了蛮多时间,虽然我知道这个图蛮简单,但是因为之前没好好学,硬件部分差了太远, 问了学长蛮多,也和老师讨论了蛮多,最近在做出PCB之后还修改了一些,才有了现在这个图,相对来说是比较正确的。

        接下来就来详细的介绍一下每个模块的设计思想:

        首先是MCU部分,显示用的是共阳极的数码管,没有用芯片来进行驱动,而是换成了三极管(9012),利用了它的开关性质,即B极置0时导通,数码管的位选便为高电平,从而选通。这里的基极加了1K的限流电阻,是为了防止基极电流过大,驱动电路无法承受,但是这里的具体计算我却不会(唉,只怪自己以前不用心学。)然后数码管的段线到P0口,也接了限流电阻,这里还上拉了,看了一些资料,共阳极的数码管的话是不需要接上拉电阻的,只要限流就可以了,但是共阴极的数码管就要接上拉电阻来增强驱动能力,所以,这里的排阻不需要接电源。

        限流电阻的计算:5V - 0.2V(PNPce压降) - 1.8V(数码管压降) = 3V左右;3mA * 8段 = 24mA ,所以 3V / 3mA = 1 K,24个mA的电流P0口是可以承受的,而且只有在显示8时才会有这么大的电流。接下来是按键,P2^2/3/4口直接接一个按键到GND,然后为了使用中断(主要为跳沿触发),我这里把这三个按键接到P3^2(INT0)了,用了三个二极管接电阻到VCC,在没有按键按下时,P32是为1的,然后有键按下就会置0,产生一个下降沿,触发中断,这里的电阻也是限流。然后P26就是一个LED,灌电流驱动,以提高它的驱动能力。

        电源开关/指示灯那一块可能会有点问题,因为这个没有做实际电路的,是后来加上去的。因为用的是STC的单片机,所以下载时必须断电,在开始的设计中没考虑到这一点,于是在调试的时候只能傻傻的用夹子来控制它的电源关断。开关应该没问题,但是电源指示灯就不太敢保证,可以试试看。这里的开关为6引脚自锁开关,它的连接可参照本站点之前的博文。

        接下来是晶振与复位电路。晶振那里就不说了,这个电路随便拿本书就能找到。复位电路的那个极性极性电容记得要正极朝向电源。蜂鸣器也是用的9012来进行驱动。在调试电路的时候没有蜂鸣器,加了个发光二极管,发现用9013的话亮度比较低,但是换成9012亮度就大了蛮多,这应该和它们的放大倍数有关系(没去细究),所以后来就换成了9012。

        DS18b20为单总线(1-Wire)的温度传感器,它的电路很容易,地接地,电源接电源,然后IO口接上拉电阻到VCC。关于4K7电阻的计算:18B20工作电流约为1mA,VCC= 5V,so,R = 5V / 1mA = 5K,而市面上与5K相近的只有5K1、4K7,所以就近选4K7。

        MAX232。这个地方稍微有点麻烦,先说9针串口,一定要记得接地,它的第5脚为信号地,5脚要是没接地的话就无法完成下载。然后要记得接它的电源与地,电源这里就是接一个10uF的极性电容并联一个104到地。

        好了,电路就到这里了。其实蛮简单的一个电路。下面来说一些其他问题。


1、布线:我用是Altium Designer 6.9,简称AD6.9,这里说一下布线时线宽的设置:

信号线 ——  一般大于15mil

VCC    ——  40mil足够了

GND   ——  网上说法是地线应该大于电源线,可是我看到有些布线地线还细一点,这里建议与电源线一样,40mil

这里的线宽设置主要是在我们实验室的设备基础上设定的,如果是发工厂的话可以做得更细,一般线宽与间隙大于6mil就可以了,这个软件的默认间隙是10mil,具体的工艺可参考此链接。http://www.sz-jlc.com/home/technology.jsp


2、快捷键(AD6.9)

T+S : 锁定原理图中选中的元件在PCB中的位置

: 打开层面设置,比如说,我想只显示飞线,我就在PCB中按“L”键,然后把这个地方的勾去掉就可以了


3、数码管的摆放

        数码管正对着自己,最左边的即为第1脚,所以在PCB中记得要把第1脚放在左下角,不然就上下颠倒了


注意事项

 

19针串口(母头)的5脚为信号地,必须接地。不接地无法完成下载。

2PCB排版:9针串口(母头)应该朝外摆放(即只有4个脚的一边朝向外边),方便接线。

3、原来驱动蜂鸣器的9013改换成9012,若在实际情况中有问题,可换回9013

4、共阳数码管的封装与库中封装有差异,建议先自己测量数码管实际尺寸,再与提供的库中封装比对,不同则需要自己画。

5、注意单片机的原理图库的引脚,建议查阅51官方资料,如有差别自己稍做修改。

69012PNP)与9013NPN)用作开关的区别:

         NPNB给高电平导通

         PNPB给低电平导通

7、三极管极性的判断方法:

http://wenku.baidu.com/link?url=YvU03Ae376c1_EByk3iaEyVBBHYFvF2Wv36E-Sd68l-Omz7d64ubqQzkFetud8qSeBzZfhWwa_-F203fhxSQt3XUUfOSsORLKo7ro6q5YxK


元件清单

     


        附实物图


      

(本博文系原创,转载请注明出处,谢谢!)

本博文系原创,转载请注明出处,谢谢!