单片机最小系统开发实例

2019-05-27 07:26:00 来源:互联网
标签:
一、确定任务
 
开发单片机最小系统
 
二、任务分析:
 
该系统具有的功能:
 
(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(三节电池)的电源,可以调试本系统,如果没有错误就可以正常工作了。
 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
关停转让,王冬雷已无心恋战?

夕阳西下,在德豪润达珠海总部顶楼,55岁的公司董事长王冬雷从自己的办公室步入带假山亭子的露台。“公司的注册地很快就会从这里搬回到我的家乡蚌埠。”他不无惋惜地说。

即使在低输入电压下,同步升压型转换器也能为大电流LED供电

高功率LED在现代照明系统中的应用数量不断激增,涵盖汽车前照灯、工业/商业标识、建筑照明以及各种消费电子等应用。行业之所以转向LED技术,是因为固态照明与传统光源相比具有明显的优势:电能转换为光输出不仅效率高,而且使用寿命长。

三安光电 H1 财报:营收净利分别下降 18.82% 、 52.34%、开盘再暴跌,这家龙头企业经历了什么?

与非网8月22日讯,三安光电发布了半年报,公司上半年营收为33.88亿元,同比下降18.82%;净利为8.83亿元,同比下降52.34%。营收和净利润的大幅下滑,让这家LED芯片龙头星光暗淡不少。

用MCU的PWM产生负电压的教程
用MCU的PWM产生负电压的教程

我们应该知道,有一种开关电源是通过PWM波来实现的,但你知道通过PWM波也能输出负电压吗?

27 家 LED 相关企业半年报分析:究竟谁才是赚的最多的?

近日,三安光电、木林森、利亚德、厦门信达、国星光电、雷士照明等27家LED相关企业公布半年报。它们在2019上半年业绩如何呢?是否达到预期?下半年又有哪些发展规划?那就随OFweek半导体照明网小编一起看看吧!

更多资讯
AMD 超越摩尔定律之路

现代数据中心和 HPC 环境的快速变化要求技术行业提供更强大的算力,而该行业在提供算力容量方面遇到重大障碍。或许很少有人比AMD总裁兼首席执行官苏姿丰更了解这一事实。

华为AI芯片是从什么时候发展起来的?一文读懂华为AI芯片发展史

众所周知,数据、算力和算法,驱动着人工智能的第三次浪潮。面对AI算力需求的爆发式增长,这几年华为在做些什么?看似高深的人工智能(AI)技术,其实已经“润物细无声”地深入大众生活,仅你手中一部华为Mate20手机,就可以实现人脸识别、物体识别、物体检测、图像分割、智能翻译等AI功能

华为AI处理器虽然用了Arm架构,但徐直军表示完全不慌?

与非网8月23日讯,自华为遭受到美国的禁令已经过去了九十多天,但似乎华为并未受到太大的影响,反而是美国帮助华为打了个响亮的广告,就在今天,华为又发布了AI处理器,还表示根本不慌。

将Power指令集开源,IBM 是如何咸鱼翻身的?

这是一个漫长的过程,如果在十年前就这样做,情况可能会更好。但是,随着收购Red Hat后大量注入开源精神,IBM终于迈出了下一步,将其Power系列处理器的指令集体系结构开源。

快速掌握MIPI开发攻略,对接百度人工智能计算卡EdgeBoard

MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写,是MIPI联盟发起的为移动应⽤处理器制定的开放标准。