51单片机最小系统的制作

51单片机最小系统的制作本文将介绍如何自制一个51单片机最小系统及一些附加模块。最终制成的系统将具有烧录程序,运行程序等功能。先放两张张最终成品如下 ​                                        (正面)                  (反面–锡接走线法)提醒读者,下载口的布局有点

大家好,又见面了,我是你们的朋友全栈君。

本文将介绍如何自制一个51单片机最小系统及一些附加模块。最终制成的系统将具有烧录程序,运行程序等功能。


先放两张张最终成品如下


51单片机最小系统的制作 ​
                                                            (正面)


51单片机最小系统的制作
                            (反面–锡接走线法)


提醒读者,下载口的布局有点不合理,请调至第五部的测试下载模块处查看!!!!!


好了,接下来正式进入制作环节:


第一步:仿真


在win7下采用Proteus 7 Professional绘制仿真原理图,具体绘制操作参考:用proteus绘画51单片机最小系统


为了测试所需,再绘制测试模块,如下:
51单片机最小系统的制作
电阻左端分别接单片机的21、22脚,即P2.0、P2.1端口


绘制完成后,为了仿真,再采用Keil uVision4编写测试代码并生成hex文件。具体操作参考文件:
单片机类型015STC90C516RD+A9T15528的代码编写,烧录



测试代码如下:
  1. #include <REGX52.H>      //预处理命令
  2. void main(void)     
  3. {

  4.     unsigned int a;     
  5.     while(1)
  6.    {        
  7.        P2_0 = 0;      //设P2.0口为低电平,点亮LED
  8.        for (a=0; a<50000; a++);  //这是一个循环,起延时作用
  9.        P2_0 = 1;      //设P2.0口为高电平,熄灭LED
  10.        for (a=0; a<50000; a++);
  11.            P2_1 = 0;      //设P2.1口为低电平,点亮LED
  12.        for (a=0; a<50000; a++);
  13.        P2_1 = 1;      //设P2.1口为高电平,熄灭LED
  14.        for (a=0; a<50000; a++);
  15.    }
  16. }

复制代码

准备工作做完了,接下开始仿真,整个仿真原理图如下:

51单片机最小系统的制作


双击单片机,出现如下界面:
51单片机最小系统的制作


单击上图中Program File栏的文件夹图标 51单片机最小系统的制作 ,进行选择测试代码hex文件,找到需要烧录单片机的hex文件,打开。51单片机最小系统的制作



为了更好的查看线路中电流的流向,建议在Proteus中点击system——set Animation options——在对话框的Animation options 区域选择第三和第四项。


接下来就是查看下仿真结果了,


单击图片中第一个按钮开始仿真 51单片机最小系统的制作 单击图片中第四个按钮结束仿真。
仿真结果为,两个LED,一个亮、灭,另一个亮灭,如此循环;同时可以看见电流流向的箭头。


第二步:准备元器件
51单片机最小系统的制作


第三步:绘制焊接图
原理图和实物焊接图管脚布局不一样,所以需要先布好局,元器件布局如下图:


51单片机最小系统的制作


走线图(未画出单片机底座与附近排针接通)如下:


51单片机最小系统的制作



第四步:焊接
绘制好焊接图后,照着图一部分一部分焊接,就可以了。下图是我采用锡接走线法焊接好后的反面图:


切记不要焊短路了!!
第五步:实物测试
1.测试电源模块


给DC插座上电,反复按自锁开关,查看自锁开关附近的LED以及下载口附近的两个LED是否亮灭。


若此处发现故障,则应立即排除故障再进行下一步。


2.测试下载模块


用杜邦线连接USB_TTL的GND、RXD、TXD、5V0,如下图:


51单片机最小系统的制作


杜邦线的另一端连接下载口的顺序从上往下为5V0、TXD、RXD、GND(连接过程中线不会有交叉),如下图:


51单片机最小系统的制作


打开烧录软件,进行烧录。具体操作参考:单片机类型015STC90C516RD+A9T15528的代码编写,烧录


拔出USB_TTL,给DC插座上电,即可看到接P2.0和P2.1口的LED,P2.0亮-灭-P2.1亮-灭,如此循环。


若此处发现故障,则应立即排除故障再进行下一步。


注:下载模块的+-布局有点不合理,下载的时候不接GND,效果更好!!!!


3.测试复位模块


在上一步程序烧录成功后运行程序,待P2.1亮时,按下按钮,可看见P2.0立即亮起。


若此处发现故障,则应立即排除故障。



结语:第一次制作单片机最小系统,查阅了很多零散资料,最终才做出了自己的第一块51单片机最小系统。
这次经历是值得写下来的,毕竟做这个东西做了好几天,写出来供其他人参考参考。
感谢那些资料的贡献者。


51单片机最小系统的制作 
下载:
51单片机最小系统的制作 51单片机最小系统制作.zip (1.95 MB, 下载次数: 36) 


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/152228.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 字符串全排列cpp_输出字符串的全排列

    字符串全排列cpp_输出字符串的全排列String对象描述字符串是JavaScript的一种基本的数据类型String类定义了大量操作字符串的方法,例如从字符串中提取字符或子串,或者检索字符或子串。需要注意的是:JavaScript的字符串是不可变的(immutable),String类定义的方法都不能改变字符串的内容。像String.toUpperCase()这样的方法,返回的是全新的字符串,而不是修改原始字符串。String对象属性属性描述constructor对创建该对象的函数的引用

    2022年10月30日
  • 用递归实现数组求和的函数_JAVA数组递归排序

    用递归实现数组求和的函数_JAVA数组递归排序题目:给定一个len长度的数组,用递归的方法求数组和C代码实现:#include#includeintgetSum(inta[],intlen){ if(len==0)//要考虑空数组的情况 { return0; } else { intn=len-1; if(n==0) { returna[n

  • linux进程间通信方式最常用_linux进程调度

    linux进程间通信方式最常用_linux进程调度进程间的通信方式:   1.管道(pipe)及有名管道(namedpipe):     管道可用于具有亲缘关系进程间的通信,有名管道除了具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。 2.信号(signal):     信号是在软件层次上对中断机制的一种模拟,它是比较复杂的通信方式,用于通知进程有某事件发生,一个进程收到一个信号与处理器收到一个中断请求效

    2022年10月11日
  • Java线上问题排查神器Arthas快速上手与原理浅谈

    Java线上问题排查神器Arthas快速上手与原理浅谈前言当你兴冲冲地开始运行自己的Java项目时,你是否遇到过如下问题:程序在稳定运行了,可是实现的功能点了没反应。为了修复Bug而上线的新版本,上线后发现Bug依然在,却想不通哪里有问题?想到可能出现问题的地方,却发现那里没打日志,没法在运行中看到问题,只能加了日志输出重新打包——部署——上线程序功能正常了,可是为啥响应时间这么慢,在哪里出现了问题?程序不但稳定运行,而且功能完美,但…

  • oracle insert 将一张表数据插入另外表中[通俗易懂]

    oracle insert 将一张表数据插入另外表中[通俗易懂]将一张表的数据插入两外张表以表B的数据插入表A,表B有多少符合条件的数据,表A就插入多少条数据如表B符合条件有10条数据,表A也会添加10条数据case1两张表的结构完全一样insertintotableAselect*fromtableBcase2,两张表的结构不一样,只获取表B中符合条件的一些列的数据insertintot

  • 利用opacity属性写过渡效果

    利用opacity属性写过渡效果opacity的意思是不透明性,opacity取值范围为0-1;opacity:0;表示完全透明,opacity:1;表示完全不透明。opacity:0于overflow:hidden不同,overflow:hidden会完全消除空间,opacity:0只是视觉上看不到,但是实际上会占用空间,这点我们常用来于:hover一起使用。&lt;!DOCTYPEhtml&gt;&lt;htmll…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号