网页制作与网站设计论文,wordpress文章字体大小插件,北京网站托管,cad软件摘要#xff1a;本文介绍如何仿真红绿灯 今天来做一个红绿灯仿真的程序#xff0c;这个程序主要包括一下这些功能#xff1a;
模拟的路口为十字交叉路口#xff0c;假设东西和南北方向都是双向行驶#xff0c;因此需要设置4组红绿灯和4个倒计时显示屏。倒计时时间最长为9…摘要本文介绍如何仿真红绿灯 今天来做一个红绿灯仿真的程序这个程序主要包括一下这些功能
模拟的路口为十字交叉路口假设东西和南北方向都是双向行驶因此需要设置4组红绿灯和4个倒计时显示屏。倒计时时间最长为99秒可以使用2位数码管。用按键可以单独调整东西和南北方向的绿灯时间。黄灯的时长默认为3秒。红灯的倒计时时间为另一方向的绿灯时间加上黄灯的时间。
下面就来做一个简单的仿真程序。在进行方案设计之前先来了解一下数码管的基本知识机器使用方法。
数码管是一种利用LED的显示器件其原理就是在内部集成了一系列的LED每个LED对应显示一段通过控制不同的LED点亮来组成不同的字符。根据不同的显示段数也就是内部LED的数量常见的有7段式、8段式、14段式和16段式数码管。如下图所示 数码管内部是一系列的LED二极管根据这些LED的接法不同可以将数码管分成共阳极数码管和共阴极数码管。所谓的共阳极就是将LED的阳极都连接到一起这样在使用的时候将这个公共端连接到电源正极那么另一端为低电平的时候该LED就会被点亮。如果是共阴极数码管那么就是将所有LED的阴极连接到了一起然后再将这个公共点接地那么将来另一端为高电平时可以驱动这个LED点亮。电路原理图如下图所示 由于数码管的内部就是LED二极管因此在驱动其点亮的时候不能直接一端接5V一端接地必须要有限流电阻。通常限流电阻的大小为100欧~330欧都可以。
利用单片机驱动数码管本质上就是通过单片机的引脚控制LED的两灭通过不同的组合显示出来我们想要的字符。下面就以上图中的8段式数码管为例将其连接到单片机的某一组的8个引脚上看显示不同的字符所对应的引脚的输出值。 数码管内部连接 共阳 共阴 小数点接单片机 最高位 最低位 最高位 最低位 点亮 熄灭 点亮 熄灭 点亮 熄灭 点亮 熄灭 0 0x40 0xC0 0x02 0x03 0xBF 0x3F 0xFD 0xFC 1 0x79 0xF9 0x9E 0x9F 0x86 0x06 0x61 0x60 2 0x24 0xA4 0x24 0x25 0xDB 0x5B 0xDB 0xDA 3 0x30 0xB0 0x0C 0x0D 0xCF 0x4F 0xF3 0xF2 4 0x19 0x99 0x98 0x99 0xE6 0x66 0x67 0x66 5 0x12 0x92 0x48 0x49 0xED 0x6D 0xB7 0xB6 6 0x02 0x82 0x40 0x41 0xFD 0x7D 0xBF 0xBE 7 0x78 0xF8 0x1E 0x1F 0x87 0x07 0xE1 0xE0 8 0x00 0x80 0x00 0x01 0xFF 0x7F 0xFF 0xFE 9 0x10 0x90 0x08 0x09 0xEF 0x6F 0xF7 0xF6
在程序的开发中可以按照接法将相应一列的数值存储到一个数组中这样使用的时候直接通过索引访问数组中的数值就可以了。这个在后面的程序中会有例子。
数码管的驱动显示方法有两种一种是静态显示一种是动态显示。静态显示就是利用单片机的一组GPIO口连接一个数码管模块然后让各个引脚保持上面表中相应的状态来显示数据的方法。
具体使用方法如下图所示 这时只要设置P00x40就可以让数码管一直显示“0”。这种静态驱动数码管的好处显而易见就是驱动程序非常的简单但缺点也是显而易见的每个数码管都要占用一组GPIO端口如果数码管多了引脚肯定会不够用的。因此多个数码管的时候就要使用动态显示。
所谓的动态显示就是依次向每位数码管送出字形码的同时控制公共端的电平每一位数码管之间利用延时程序进行延时当延时程序非常短时由于发光管的余辉和人眼视觉暂留作用此时我们人眼就分别不出位于位之间时有延迟存在并且是交替显示的此时的感觉是所有的数码管都在同时显示。
所谓视觉暂留现象即视觉暂停现象(Persistenceofvision Visualstayingphenomenon, durationofvision)又称“余晖效应”1824年由英国伦敦大学教授皮特·马克·罗葛特在他的研究报告《移动物体的视觉暂留现象》中最先提出人眼在观察景物时光信号传入大脑神经需经过一段短暂的时间光的作用结束后视觉形象并不立即消失这种残留的视觉称“后像”视觉的这一现象则被称为“视觉暂留”。
动态显示的原理如下图所示 动态显示的程序在这里就不举例了这个红绿灯仿真的程序使用的就是动态显示的方法。具体实现方法请参照下篇文章中的介绍。