51单片机电子钟 是如何做成的(2)---分析例程结构

什么是单片机呢(写给小白)

嗯嗯,也不好怎么描述
来自360百科:单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的*处理 器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。
有关单片机:上方内容详情点此进入
有关51单片机:360百科链接

吃瓜群众:说人话

额…接下来,我将用人听得懂和话(微笑脸)诉说一下什么是51单片机:51单片机长什么样子呢,是一个大东西吗比如电视电脑,不是的,它只是一块芯片,在我上一篇博客中那块电路板中间那一小块黑色的芯片,仅仅是他,他叫做51单片机,也就是我学习的,他有40个引脚,旁边的辣么多东西都是他的“外围电路”
通过把自己的程序写入单片机(芯片),可以控制其中大部分引脚的高低电压,这些高地(信号)电压再由外围电路处理可以实现某些功能,可以控制大部分引脚的高地电压,以及他们高低电压的时间,当然,如果我“强行”给某些引脚高地电压,它也可以读取那个引脚的高地电压以及持续的时间

比如,我要做一个声控灯,我喊一声,某个“外围电路”因为声音产生了一个高电压,到达1号引脚,1号引脚检测到了这个高电压,然后2号引脚单片机就会产生一个高电压,这一个高电压再通过“外围电路”让一个灯点亮,这就是一个声控灯(文字黄色部分是单片机要做的事,这是通过下载进去的程序控制的)

例程电子钟成品的大致思路与使用方法

经过我千辛万苦的努力,今天晚上,我的例程终于写(抄)完了,真的是很辛苦啊
先讲讲书上的例程吧,作为我自己的电子钟的基础,模板
我用的开发板,是金沙滩51开发板,这里附上电路原理图
51单片机电子钟 是如何做成的(2)---分析例程结构
图中黄色部分就是这个例程电子钟用到的电路,还是蛮多的,刚开始看看需要把这么多模块组合成一个程序,还是挺吓人,但是现在抄完程序后,有一个清晰的结构流程了,还是觉得没有刚开始想象的那么难
51单片机电子钟 是如何做成的(2)---分析例程结构
这就是这个电子钟的原文件,一共8个C文件

  1. Lcd1602.c 液晶的底层程序,显示字符,清屏,打开关闭光标,都在这个里面
  2. LedBuzzer.c 使用T2中断,扫描数码管,点阵与流水灯的显示
  3. DS1302.c 时钟模块,初始化时间,获取与设定时间
  4. keyboard.c T0中断进行按键扫描
  5. Irfrared.c T1计数,初始化红外,接收数据
  6. DS18B20.c 启动温度转换,读取温度

以上都是底层程序,下面的两个就是操作等功能,由于太过复杂,于是,就有了下面这一个流程图
51单片机电子钟 是如何做成的(2)---分析例程结构
PS:有没有觉得这个流程图不错啊,自己需不需要用到这类工具呢,在这里,我就推荐一下这个流程图网站吧,点此进入另一博客了解详细

先初始化各种底层元件,然后第一次显示时间,日期,闹钟,温度。此后
先进行按键与红外的扫描,没有的话
每200ms要做的事:刷新流水灯,读取时间若变化则刷新,监控闹钟时间是否到,刷新日期
每2s要做的事:刷新温度(因为温度的读取与转换需要更长的时间)

如果按键与红外有动作呢
就可以介绍一下使用流程了
通常情况下,是显示各项信息的,如下图
51单片机电子钟 是如何做成的(2)---分析例程结构
按下回车,进入设置时间模式
51单片机电子钟 是如何做成的(2)---分析例程结构
此时光标闪烁,上方数码管时间继续走动,左右键移动光标,数字键设置数字,设置完成后,按下回车51单片机电子钟 是如何做成的(2)---分析例程结构
数码管时间刷新为设定值,进入闹钟设定模式,和设定时间方法相同,再按确定,回到最初,或期间任意时刻按退出键,也可以回到主页
这就是例程简单的电子钟的使用方法,接下来,就可以策划自己想做的电子钟需要些什么功能,与它的操作方式了

这是一条富强*文明和谐*平等公正法制爱国敬业诚信友善的的分割线(2019.4.27)D3

感谢你能看到结尾
便捷目录(粗体为目前位置):
51单片机电子钟 是如何做成的(1)—写在前面
51单片机电子钟 是如何做成的(2)—分析例程结构
51单片机电子钟 是如何做成的(3)—电子钟总体结构与操作
51单片机电子钟 是如何做成的(4)—试验电路的 原理图 元件清单绘制
51单片机电子钟 是如何做成的(5)—试验电路 的电路板制作(热转印法)

以上目录更新于(2019.5.29)D35