去评论
距米网-精简版

单片机学习:如何利用单片机设计一个简单产品

迪高
2019/07/28 23:36:10
前期几天的一篇推文为《如何利用单片机(one-board computer)设计产品》(详情点击这里),文中以设计一款密码锁为例讲了单片机(one-board computer)的开发流程,那今天就要实践一下,具体讲解设计过程,希望对初学者起到入门帮助作用,同时也希望大神能给多多指正。
因为本设计只用了12个IO口,所以我又重新选了一款STC的51单片机(one-board computer):STC15W404AS,该单片机(one-board computer)总共16个引脚,其中有14个IO,所以完全够用。

0最小系统
先看单片机(one-board computer)的最小系统电路:

1. 单片机(one-board computer)最小系统

1晶振电路
该款单片机(one-board computer)有内部晶振,所以在该设计中使用内部晶振。

2复位电路
该款单片机(one-board computer)虽然有复位引脚但是不需要复位电路,在其手册上有说明,可以把复位引脚当做IO口来用。
晶振情况和复位引脚情况见下图:

2. 使用内部晶振
在现在程序时勾选“使用内部IRC时钟”就可以选择内部时钟了,并且时钟频率从5.5296M-33.1776M可选;勾选“复位脚用作I/O口”可以把复位引脚当做IO口来用。

3电源电路
电源电路选择5V供电,使用DC三脚插座,再加一个开关控制电源的通断。

3. 电源电路

4下载电路
使用ISP下载方式,USB/TTL的电平转换芯片选择CH340G。

4. 单片机(one-board computer)串口下载电路
由于STC单片机(one-board computer)在下载程序时需要给单片机(one-board computer)断电再重新上电,所以在单片机(one-board computer)的供电引脚加了一个跳线,以实现单片机(one-board computer)的断电功能。所以就不用买下载器了。

5蜂鸣器电路

5. 单片机(one-board computer)驱动蜂鸣器
采用NPN三极管驱动蜂鸣器,三极管作为开关来用时要将负载接在集电极上,即所谓的射极跟随,这样可以提高驱动能力(三极管用作开关详情点这里)。图中的10K电阻起到下拉的作用,即将基极电位拉倒低电平防止误动作(上下拉电阻详情点这里)。

6 继电器电路

6. 单片机(one-board computer)驱动继电器
继电器也采用NPN三极管来驱动,一定要注意的是,线圈上的续流二极管一定不要忘记(三极管驱动继电器详情点这里)。

7 按键检测电路

7. 按键检测电路
按键采用四腿机械式按键,图中的电阻是上拉电阻,在无按键发生时该电阻可以将单片机(one-board computer)的IO口上拉倒高电平,当按键按下时单片机(one-board computer)的IO口为低电平。
8 LED电路

用了5个IO口驱动了5个LED,采用的是灌电流的方式,单片机(one-board computer)有拉电流和灌电流之分,通常灌电流要大于拉电流(单片机(one-board computer)的灌电流和拉电流详情点这里)。
9 数码管电路

本设计中要使用4位数码管,为了节省IO口,使用了两片74HC595,74HC595是8位的移位寄存器带锁存功能,只需要三个IO口即可。