DIY自制STC单片机开发板

提示:本文属于技术的交流,如有抄袭请联系删除。


开始之前

提示:本文要记录的大概内容:

  入手一款开发板,入手后点亮第一个LED小灯,非常的开心,之后就不再玩了,这是大部分学习单片机的学习状态。所以买来的开发板就变成了一件废板子,不仅费钱而且买来的需要自己静下心来才能慢慢学会。学习单片机不仅仅只是学会编程,还需要学习看原理图、时序图、分析硬件电路,这样才能弄清楚单片机的工作原理、更加的能够利用自己所学应用在日后的工作中。

  作为电子信息的行业从业者,软硬都会是DIY电子产品的基础,软件上开发51单片机以及STM32单片机都是以Keil 软件来编程,当然了STM32还可以使用IAR软件进行程序设计,但大多开发者使用的还是Keil。而硬件上大多都还不太清楚电路板是怎么设计的,因此当自己成功设计一款单片机之后,这就不仅仅只是一款开发板了,还是自己第一个亲手设计的代表的意思是不一样的,新的开发板是没有程序的,因此就可以自己动手去设计自己开发板的程序而不像买来的开发板有现成的代码自己只能跟着写已经编好的再写一遍。

  因此本文基于最简单的51单片机来设计一款组合式单片机,为什么是组合式的呢,理由是有些模板可以不用设计在开发板上,而是通过模块接口来插在设计的板子上,减少焊接的工作量以及原理图的设计量。设计软件为Altium Designer 09版本,需要软件安装的可以在文章末尾处获取。软件安装步骤可以参考这篇文章


提示:以下是本篇文章正文内容,下面案例可供参考

一、单片机硬件选择以及原理图绘制

  设计开始之前需要考虑板子的功能,其实就是组合式模块的选择。只有利用选择好的模块才能规划好板子的大小以及后期的元器件的放置。

1.MCU

  MCU选择我们最熟悉的STC89C52RC芯片,本次采用的是STC89C52RC是44管脚的正方形,芯片体积小,可以减少板子的占用的面积,其图如下:
在这里插入图片描述
  电路图如下:
在这里插入图片描述

2.LED点阵

  点阵的学习是及其重要的,在生活中处处都有着点阵的存在,例如街上的广告牌、人民政府上的电子屏等等,本次选择的LED点阵采用MAX7291驱动器,8*8的点阵可以显示出一些简单的文字、数字以及字母等,用于基本的学习足够了,点阵如下图所示:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

3.蜂鸣器

  蜂鸣器的应用同样广泛,主要是用于报警的功能。蜂鸣器分为有源蜂鸣器和无源蜂鸣器,两者区别主要是有无震荡源,有源蜂鸣器内部带震荡源,所以只要一通电就会叫,而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。价格不同,有源蜂鸣器要比无源蜂鸣器贵,贵在里面多了震荡源。优点不同,无源蜂鸣器的优点是:便宜,声音频率可控,可以做出多来米发索拉西的效果,在一些特例中,可以和LED复用一个控制口。有源蜂鸣器的优点是:程序控制方便。蜂鸣器如下图:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

4.光强度、烟雾浓度

  传感器的使用对于单片机开发者来说是一个必经之路,没有传感器的单片机开发是不算入门单片机学习的。本次采用AD读取数据的传感器光强度和烟雾浓度传感器,光强度传感器配合LED小灯可以实现日常生活中的夜晚灯,白天不亮,天黑后小灯自动点亮。烟雾浓度传感器配合蜂鸣器可以实现火灾报警的功能,根据烟雾浓度判断是起火。实物图如下:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

5.温湿度

  生活环境中温湿度决定了家中是否开空调,开几度,而现在的智能家居中智能空调则是通过监测空气中的温湿度来判断是否需要开空调,温湿度传感器结合下面的电机可以模拟出智能电风扇的功能。DHT11是一款有已校准数字信号输出的温湿度传感器。DHT11 与单片机之间能采用简单的单总线进行通信,仅仅需要一个 I/O 口。传感器内部湿度和温度数据 40Bit 的数据一次性传给单片机,数据采用校验和方式进行校验,有效的保证数据传输的准确性。实物图如下:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

6.超声波

  蝙蝠之所以能够在黑夜中辨别方向,采用的就是声波来判断的,另外现在的雷达设备同样也是采用声波设计的,本次采用的超声波传感器配合电机可以模拟智能小车的效果。本次采用的超声波传感器为HC-SR04,测量范围为2cm~4m,测量角度为15度,距离计算公式为S=(高电平时间*声速(340M/S))/2。实物图如下:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

7.MP3

  音乐播放器MP3可以通过单片机的串口控制播放,MP3模块配合LCD显示器和按键可以实现经典的MP3播放器,进而可以学习串口知识。本次MP3模块采用LX-MP3模块,模块自带SD卡槽、耳机接口、喇叭端口以及micro-usb口可作为U盘使用,SD卡支持最大16G内存。实物图如下:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

8.数码管、按键及流水灯

  本次采用TM1638模块,该模块集成了8个按键和8个LED流水灯以及8位数码管,只需要在开发板上开辟适当的位置和接口就可以将模块放置上面,模块采用SPI的通讯方式进行不同的地址就可以锁定某一项功能。其中数码管搭配RTC时钟模块可以实现电子钟功能,外加上MP3或蜂鸣器就能够设计更高级的音乐电子闹钟。实物图如下:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

9.IRED

  电视机的控制器是红外线传输的,采用红外线传感器搭配按键可以模拟实现遥控器的功能,除此之外还可以利用红外线控制电机转动、音乐播放等。接口电路图如下:
在这里插入图片描述

10.PS2摇杆

  现在的游戏手柄都有摇杆设备,控制PS2摇杆可以实现舵机的旋转角度,进而可以用于编程双足机器人的设置,如果再加上或外发送器的话就可以实现远端控制机器人了。实物图如下:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

11.TFT-LCD

  一般的51单片机开发板都只是搭配了LCD1602以及LCD12864液晶显示模块,本次加入了TFT-LCD显示屏大大的增加了液晶显示的能力,结合红外线、RTC时钟等,可以实现只能让手表。LCD液晶显示屏采用ST7735控制芯片,1.8寸的显示器是128x160彩色像素的。不像低价的诺基亚6110或者类似的LCD显示器,它们都是CSTN类型的因此画质劣质与刷新率低。如果需要了解更多1.8寸TFTF_LCD使用可以参考TFT-LCD 1.8寸显示屏使用,实物图如下:
在这里插入图片描述
  接口电路图如下:
在这里插入图片描述

12.舵机、电机

  舵机和电机采用接口式,舵机由摇杆控制、电机由PCF8591PWM控制,后期加入PID后就能够更深层次的学习控制。舵机和电机的区别主要在于电机主要靠伺服控制电路来控制电机的转速,通过传感器来控制转动位置。所以位置控制十分精确。而转速也是可变的。而舵机的主要组成部分为伺服电机。其中包含伺服电机控制电路+减速齿轮组。接口电路图如下:
在这里插入图片描述

13.DS1302时钟

  RTC时钟提供时钟信号,用于制作时钟的功能,结合LCD可以设计出特别的时钟界面,闹钟也可以采用手机一样的定时功能等。DS1302是由美国DALLAS公司推出的具有涓细电流充电能力的低功耗实时时钟芯片。它可以对年、月、日、周、时、分、秒进行计时,且具有闰年补偿等多种功能。接口电路图如下:
在这里插入图片描述


二、整理原理图

1、下载电路

  使用CH340芯片(可以用CH340G,它引脚间距大很容易焊接),不推荐使用PL2303。因为PL2303便宜所以山寨的较多,这会导致下载电路不稳定,甚至无法正常下载。并且PL2303的外围电路比较复杂,这也给硬件电路的调试增加了难度。电路图如下:
在这里插入图片描述

2、总体原理图

  结合综上的电路图,将其汇总可以得到一下完整的原理图如下,接下来需要为所选模块进行封装选择,由于很多都是模块,因此需要自己动手画封装,利用尺子测量出外观大小以及焊接孔的位置就可以画出封装,再将设计的封装匹配到对应原理图中,点击导入PCB中就可以进行硬件设计了。
总体原理图


三、PCB设计

1、PCB设计

  PCB设计主要要点如下:
  1.元件封装的准备。 尽量调用标准封装库中的文件; 严密按照所选期间的datasheet上的规范制作封装,不能忽略累积误差; 注意二极管、三极管等极性元件以及一些非对称元件的引脚定义不能搞错.。
  2.合理布局。 尽量按照参考板的模式进行布局; 模块化布局; 要求模拟电路与数字电路分开; 输入模块和输出模块隔离; 去耦电容尽量靠近元件的电源/地; 电源等发热单元要考虑散热,主发热元件靠近出风口,大体积元件的放置避开风路; 元件分布均匀,避免电流过于密集; 板上的跳线或按键考虑易操作性; 元器件的排列尽量整齐美观; 考虑机械尺寸,不要超过结构所允许的范围。
  3.PCB分层 如果有参考板,按照参考板进行分层; 多层板安排:顶层和底层为元件面,第二层为地平面,倒数第2层为power layer; 在不影响性能的情况下,减少PCB层数,降低成本。  
  4.电源考虑。系统电源入口做高频和低频滤波处理; 功率较高的器件配备大容量电容去除低频干扰; 每个器件配备0.1uF电容过滤高频干扰; 高频器件电源管脚和电容之间串连磁珠达到更好的效果; 去耦电容的引线不能过长,特别是高频旁路电路不能带引线。  
  5.时钟考虑。时钟电路要尽量靠近芯片; 晶体下方不要走线; 晶体外壳接地,增加抗电磁干扰能力; 频率大于200MHz的时钟信号有地线护送; 时钟线宽大于10mil; 时钟输出端串连22~220欧的阻尼电阻。  
  6.高速信号。采用手工布线; 高速总线走线尽量等长,并且在靠近数据输出端串联22~300欧的阻力电阻; 高速信号远离时钟芯片和晶体; 高速信号远离外部输入输出端口,或地线隔离。  
  7.差分信号。差分信号线要平行等长; 信号之间不能走其他信号线; 信号要求在同一层上。  
  8.走线规范。不同层的信号垂直走线; 地线和电源层不要走线,否则要保证平面的完整性; 导线宽度不要突变; 导线变向时倒角要大于90度; 定位孔周围0.5mm范围不要走线。 另外必须要完全通过PCB规则的DRC检查。

2、2D展示图

  本次所采用的电源线宽为45mil,其余线宽为15mil,而控制MCU上的走线大小为10mil,设计层板为双面板,设计2D图如下:
在这里插入图片描述

3、3D展示图

  按下数字键3后,转换为3D也就是实际打样出来的实物,画完之后就可以发出去打样了,打样PCB可以去立创商城上打样,如果PCB的尺寸没超过100平方cm的话,一个月可以免费打样两次,若超过这个范围则需要支付相应的费用,当然也可以去捷配上领取免费打样卷,超过100平方cm大尺寸但超过的量不大的话也还是可以免费打样的,本次设计的固然超过了10*10尺寸,因此如果想要这款开发板则不能够免费打样。3D展示如下:
在这里插入图片描述


四、STC15W408AS开发板

1、STC15 16管脚单片机

  除了以上设计的开发板,我还设计了两款STC15W408AS开发板,第一款为16管脚的开发板,板子功能有流水灯LED、OLED接口、1个8位数码管、RS232串口通讯、mini-MP3播放功能。

(1)原理图

  开发板原理图如下:
在这里插入图片描述

(2)2D、3D展示图

  2D图如下:
在这里插入图片描述
  3D图如下:
在这里插入图片描述

2、STC15 28管脚单片机

  第二款为28管脚的控制芯片,开发板主要功能相比于之前的16管脚功能要多一些,主要功能增加了DS1602时钟、LCD1602接口、DHT11温湿度传感器接口、板载TM1638模块。

(1)原理图

  原理图如下:
在这里插入图片描述

(2)2D、3D展示图

  2D图如下:
在这里插入图片描述
  3D图如下:
在这里插入图片描述
  以上就是本次设计的主要内容。


总结

  本次主要分享了如何设计一款属于自己的单片机开发板,设计首先要学会AD9软件的使用,能够基本了解PCB的基础绘制能力,值得一提的是想要学会AD9软件的使用最好的是使用一个实际的项目进行训练,当项目做完后就基本能够熟练使用AD9软件了,开发板设计完成后,接下来发出去打样后就可以去网上买元器件进行贴片了,焊接技术也是电子信息学生的一门必须掌握的技术,从焊接中可以发现不仅只要设计,设计的板子是否好焊接也是一个日后工作的老板必须看的能力之一,美观且好焊接是设计的最大目标。焊接好开发板后,就可以学习开发板的程序编写,这样就可以参考网上的例程进行自己的 开发板程序设计了,从此就走上了软硬都会的道路。
1、设计软件连接:
  链接:https://pan.baidu.com/s/1tAijOr1cMAMWofH-EntM-A
  提取码:j1ud
2、开发板连接:
  链接:https://pan.baidu.com/s/1YQ2pTAB5iBm7sz836HZ9jg
  提取码:ela0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宅博士yc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值