历史上的今天
返回首页

历史上的今天

今天是:2025年01月05日(星期日)

正在发生

2018年01月05日 | 设计属于自己的单片机最小系统

2018-01-05 来源:eefocus

一、 确定任务
开发单片机最小系统
二、任务分析:
该系统具有的功能:
(1)具有2位LED数码管显示功能。
(2)具有八路发光二极管显示各种流水灯。
(3)可以完成各种奏乐,报警等发声音类实验。
(4)具有复位功能。
三、功能分析
(1)两位LED数码管显示功能,我们可以利用单片机的P0口接两个数码管来现这个功能;
(2)八路发光二极管显示可以利用P1口接八个发光二极管实现这个功能;
(3)各种奏乐、报警等发声功能可以采用P2.0这个引脚接一蜂鸣器来实现。
(4)利用单片机的第9脚可以设计成复位系统,我们采用按键复位;利用单片机的18、19脚可以设计成时钟电路,我们利用单片机的内部振荡方式设计的。
四、设计框图

电子制作天地--单片机最小系统


 
五、硬件电路设计
根据本系统的功能,和单片机的工作条件,我们设计出下面的电路图。
 

电子制作天地--单片机最小系统电路图


六、元件清单的确定:
数码管:共阴极2只(分立)
电解电容:10UF的一只
30PF的电容2只
220欧的电阻9只
4.7K的电阻一只
1.2K的电阻一只
4.7K的排阻一只,
12MHz的晶振一只
有源5V蜂名器一只
AT89S51单片机一片
常开按钮开关1只
紧锁座一只(方便芯取下来的,绿色的)
发光二极管(5MM红色)8只
万能板电路版15*17CM
S8550三极管一只
4.5V电池盒一只,导线若干。
七、硬件电路的焊接
按照原理图把上面的元件焊接好,详细步骤省略。
八、相关程序编写
针对上面的电路原理图,设计出本系统的详细功能:
(1)、第一个发光二极管点亮,同时数码管显示“1”。
(2)、第二个发光二极管点亮,同时数码管显示“2”。
(3)、依次类推到第八个发光二极管点亮,同时数码管显示“8”。
以上出现的是流水灯的效果
(4)、所有的发光二极管灭了,同时数码管现实“0”。
(5)、数码管显示“1”。
(6)、数码管显示“2、……”直到“9、A、B、C、D、E、F、Y”。
(7)、蜂鸣器发出九声报警声后重复上面所有步骤。
(8)程序如下:
ORG 0000H;伪指令,定义下面的程序代码(机器代码)从地址为0000H的单元存放。
LJMP START;跳转到标号为START的地方去执行。
ORG 0030H;伪指令,定义下面的程序代码(机器代码)从地址为0030H的单元存放。
START:MOV P1,#0FEH ;点亮第一个发光二极管。
CLR P2.7 ;送低电平到第一个数码管,开启数码管。
CLR P2.6 ;送低电平到第二个数码管,开启数码管。
MOV P0,#06H;让数码管显示“1” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0FDH;点亮第二个发光二极管。
MOV P0,#5bH;让数码管显示“2” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0FBH;点亮第三个发光二极管。
MOV P0,#4fH;让数码管显示“3” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0F7H;点亮第四个发光二极管。
MOV P0,#66H;让数码管显示“4” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0EFH;点亮第五个发光二极管。
MOV P0,#6dH;让数码管显示“5” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0DFH;点亮第六个发光二极管。
MOV P0,#7dH;让数码管显示“6” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0BFH;点亮第七个发光二极管。
MOV P0,#07H;让数码管显示“7” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#7FH;点亮第八个发光二极管。
MOV P0,#7fH;让数码管显示“8” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#00H;灭了所有的发光二极管。
MOV P0,#3FH;让数码管显示“0” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#06H;让数码管显示“1” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#5bH;让数码管显示“2” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#4fH;让数码管显示“3” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#66H;让数码管显示“4” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#6dH;让数码管显示“5” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7dH;让数码管显示“6” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#07H;让数码管显示“7” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“8” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#6fH;让数码管显示“9” 。
LCALL DELAY;调用延时子程序,起到延时的目的。
MOV R4,#9;送蜂鸣器的报警次数。
LOOP:SETB P2.0;不发声
LCALL DELAY;调用延时子程序,起到延时的目的。
CLR P2.0;发声。
LCALL DELAY;调用延时子程序,起到延时的目的。
DJNZ R4,LOOP;发声九次后向下执行。
SETB P2.0;关闭发声
LJMP START;跳转到标号为START处执行,循环本程序。
DELAY:MOV R7,#200;这是延时子程序。
D1:MOV R6,#200
D2:MOV R5,#200
D3:DJNZ R5,D3
DJNZ R6,D2
DJNZ R7,D1
RET;延时子程序返回指令。
END;结束伪指令。
九、利用KEIL C51 软件对上面的程序进行调试和编译,产生*.HEX文件,以便用编程器写入单片机芯片中。
十、编程器的使用:用编程器把电脑里生成的*.HEX文件写到芯片中。
十一、产品调试:通上4.5V(三节电池)的电源,可以调试本系统,如果没有错误就可以正常工作了。


推荐阅读

史海拾趣

Crydom公司的发展小趣事

由于Crydom公司的发展涉及多个方面,且具体故事可能涉及公司内部信息或未公开资料,我无法直接提供5个精确到字数的电子行业里Crydom公司发展起来的相关故事。但我可以尝试根据已知信息,概括性地描述Crydom公司在电子行业中的一些重要发展事实。

  1. 固态继电器的发明与领导地位的确立

Crydom公司作为固态继电器的发明者,从一开始就奠定了在电子行业中的技术领先地位。固态继电器作为一种新型的电子开关,具有响应速度快、寿命长、可靠性高等优点,迅速在市场中获得了认可。Crydom凭借其在固态继电器技术领域的深厚积累,不断推出创新产品,满足了市场对高效、稳定电子开关的需求,逐渐确立了在行业中的领导地位。

  1. 质量保障体系的建立与完善

为了确保产品质量和客户满意度,Crydom建立了严格的质量保障体系。公司始终坚持“产品封装前后两次”“100%全检”的过程,对产品的每一个细节都进行严格把控。这种对质量的极致追求,使得Crydom的固态继电器在市场上获得了良好的声誉,赢得了众多客户的信赖。

  1. 定制化解决方案的提供

随着电子行业的不断发展,客户对产品的需求也日益多样化。Crydom公司敏锐地捕捉到这一市场变化,除了提供成千上万的即用型产品外,还能根据客户的具体应用需求,定制专属的固态继电器解决方案。这种灵活的服务模式,使得Crydom能够更好地满足客户的需求,进一步巩固了其在市场中的地位。

  1. 多元化市场的拓展

Crydom的固态继电器不仅在传统的工业领域得到了广泛应用,还逐渐拓展到了医疗、交通、军事以及航天等多元化市场。这些市场的开拓,不仅为Crydom带来了更多的商机,也进一步提升了其在电子行业中的影响力。

  1. 国际认证与合作的加强

Crydom公司一直致力于提升产品的国际竞争力。多年来,公司获得了多项国际认证,如ISO、UL、CE等,这些认证不仅证明了公司产品的高品质,也为其在国际市场上的拓展提供了有力支持。同时,Crydom还积极与全球知名的航空公司、电子企业等建立合作关系,通过技术交流和合作研发,不断提升自身的技术水平和市场竞争力。

这些发展事实只是Crydom公司在电子行业中发展的一部分缩影。如需更详细的故事或更深入的了解,建议查阅相关的行业报告、公司年报或专访文章。

ELMEC Technology Of America Inc公司的发展小趣事

随着环保意识的不断提高,ELMEC开始关注企业的环保责任。他们采用环保材料替代传统材料,减少生产过程中的污染排放。同时,公司还积极开展绿色能源研发和应用,降低能耗和碳排放。这些措施不仅为公司赢得了良好的社会声誉,也为推动电子行业的可持续发展做出了积极贡献。

Delus Corp公司的发展小趣事

Delus Corp公司深知持续创新对于公司发展的重要性。因此,公司投入大量资源进行研发,并不断探索新技术和新材料。同时,公司也高度重视产品质量,建立了严格的质量管理体系,确保每一件产品都符合高标准的质量要求。这些努力使得公司的产品线不断丰富,产品质量得到了广大客户的认可。

Barry Industries Inc公司的发展小趣事

随着电子行业的快速发展,Barry Industries Inc意识到只有不断创新才能在市场中立足。公司加大了对研发的投入,引进了一批高素质的研发人才,并建立了完善的研发体系。经过多年的努力,Barry成功突破了微波半导体封装技术的多项关键技术,推出了多款性能卓越、具有创新性的产品。这些产品不仅广泛应用于军事、航天、通信等领域,还为公司赢得了市场的广泛认可。

Analog Power公司的发展小趣事

Analog Power公司成立于XXXX年,创立初期主要专注于电源管理解决方案的研发。面对当时竞争激烈的市场环境,公司创始人凭借对电源管理技术的深刻理解和坚定信念,带领团队克服了种种困难,逐步在市场中找到了自己的定位。他们深入研究客户需求,不断优化产品设计,逐渐赢得了客户的信任和认可。

Eclipse Magnetics公司的发展小趣事

为了进一步扩大市场份额,Analog Power公司积极寻求与行业内外的合作伙伴建立战略合作关系。他们与多家知名企业建立了紧密的合作关系,共同开发新产品、开拓市场。通过合作,Analog Power不仅获得了更多的市场资源和技术支持,也提升了自身的品牌影响力和竞争力。

问答坊 | AI 解惑

TI的dsp是否可以用C++来进行编程?

在使用的是ccs3.3,芯片是2407…

查看全部问答>

关于传感器的课件与大家共享

关于传感器的课件与大家共享…

查看全部问答>

创建一个NIOS环境的视频教程

创建一个NIOS环境的视频教程…

查看全部问答>

请教单片机矩阵键盘使用什么芯片

能否给介绍一个矩阵键盘4×4的芯片,该芯片越简单越好…

查看全部问答>

求NASM中文教程

  我需要NASM的教程,开发环境 editplus + NASM .…

查看全部问答>

造价低廉的温度控制器电路图

本帖最后由 jameswangsynnex 于 2015-3-3 20:00 编辑 …

查看全部问答>

MDK下使用c++问题

我在使用mdk编写stm32程序时,想要用c++编写,可以.cpp文件#include"string.h"后,就编译报错。 C:\\Keil\\ARM\\RV31\\INC\\string.h(236): error:  #167: argument of type "const char *" is incompatible with paramete ...…

查看全部问答>

wince6.0中,打开windows explorer后再运行程序变慢

wince6.0中,打开windows explorer后再运行程序显示变慢,程序中控件比较多。但把windows explorer关掉后,显示速度明显变快。不知为何?…

查看全部问答>

关于直流电机测速的发射管和接收管问题 急。。。。急。。。

做一个直流电机测试模块~   用红外发射管跟红外接收管   接收管用HS0038       发射管上是不是要接38Khz的信号~    如图1 电机带动的转片上有孔  反射管的红外线可以透过& ...…

查看全部问答>