watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQva290ZWlfODhfbHVsdWNfNjY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

上面是电路图,J16和J15相连。J6的321相应P2^0--P2^2。这样连有利于节省单片机的资源。当中P1^0和LE相连,段选(决定数码管显示什么东东)。位选(哪一个数码管亮)由138译码器决定。

我们先敲代码吧:

#include<reg51.h>

#define uint unsigned int
#define uchar unsigned char
//加上code表示将这个存放在ROM其中。否则存放在RAM其中
//RAM存储空间非常小,51的仅仅有128Byte
uchar code table_smg[8] = {0x3f, 0x06, 0x5b, 0x4f, 0x66,0x6d, 0x7d, 0x07};
uchar temp;
uchar flag = 0;
void initTimer0();
void main()
{
int i;
initTimer0();
P1 = 0x01;
temp = 0x00;
while(1)
{
for(i = 0; i < 8; i++)
{
while(flag != 1);
if(flag == 1)
{
flag = 0;
if(temp == 0x08)
{
temp = 0x00;
}
P2 = temp;
P0 = table_smg[i];
temp = temp + 0x01;
}
}
}
} void initTimer0()
{
TMOD = 0x01;
TH0 = (65536-5000)/256;
TL0 = (65536-5000)%256;
ET0 = 1;
EA = 1;
TR0 = 1;
} void timer0() interrupt 1
{
TH0 = (65536-5000)/256;
TL0 = (65536-5000)%256;
flag++;
}

要注意锁存器和138译码器的使用。及其定时器中断。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

SCM文章4教训:定时器共阴极LED动态显示屏的更多相关文章

  1. 单片机与控制实验(2)——LED点阵显示屏

    一.实验目的和要求 了解LED点阵显示的基本原理和实现方法.掌握点阵汉字库的编码和从标准字库中提取汉字编码的方法. 二.实验设备 单片机测控实验系统 LED点阵显示器实验模块 Keil开发环境 STC ...

  2. SCM文章10课时:定时器中断

    JP3遇见P0口. #include<reg51.h> #define uchar unsigned char uchar flag,num; uchar code smg[10] = { ...

  3. Arduino 操作共阴极RGB LED

    一.原理图 注:电阻选用1k的 二. 实物图 三.完整事例代码,三种颜色不停的交替闪烁 实验结果自己运行观察

  4. STM32F030, 使用嘀嗒定时器Systick实现LED闪烁

    本文主要解决两个问题 1 STM32的IO口要反转,怎么实现? 2 嘀嗒定时器systick的配置 解答1: 单片机的口,反转非常easy.sbit led = P1 ^6;  led = ~led; ...

  5. SCM文章9类:外部中断示例程序

    JP3遇见P0口,JP5遇见P3口,P1接受该发光二极管,什么时候P1所有的都是高时,,全亮度发光二极管.因为外部中断0和1用同样的方法.这里只是外部中断0计划. #include<reg51. ...

  6. JS setInterval 循环定时器的使用 以及动态倒计时展示

    例: var setTime = setInterval(function () { ff(); //每秒调用的方法函数 }, 1000); //1000毫秒为1秒 //可使用 clearInterv ...

  7. 手机版LED弹幕显示屏

    这是一款可以自制超大滚动字幕的LED显示屏APP.可以随你喜欢, 演唱会,电竞比赛,晚会,接机,寻人! 随时随地输入文字, 传达讯息,酒吧夜店疯狂打Call工具!蹦迪必备!超帅!下载地址:https: ...

  8. 硬件原理系列之LED数码管(一)

    LED数码管也叫数码显示器,由8段(7段,8多一位小数点)发光二极管组成,控制不同组合,就可以显示不同字符 dp示小数点,COM为公共端,根据连接方式的不同,分为共阴极和共阳极 工作原理:若选用共阴极 ...

  9. 「雕爷学编程」Arduino动手做(22)——8X8 LED点阵MAX7219屏

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

随机推荐

  1. linux设备驱动程序第四部分:从如何定位oops对代码的调试方法,驱动线

    在一个我们谈到了如何编写一个简单的字符设备驱动程序,我们不是神,编写肯定会失败的代码,在这个过程中,我们需要继续写代码调试.在普通c应用.我们经常使用printf输出信息.或者使用gdb要调试程序,然 ...

  2. uva 571 素数的性质

    给定 两个杯子,容量分别分Ca,Cb, 要我们用这两个瓶子倒来倒去,得到某个瓶子里装有N的水 而且给的数据保证  Cb > N,且Ca,Cb互质 那么我们肯定可以在容量为Cb的杯子里得到N的水 ...

  3. poj1185炮兵阵地

    #include <iostream> #include <cstdio> #include <cmath> #include <algorithm> ...

  4. oracle12c(oracle12.1.0.1.0)安装指南--实测OEL5.9(RH5)

    [root@oel ora12c]# uname -a Linux oel 2.6.39-300.26.1.el5uek #1 SMP Thu Jan 3 18:31:38 PST 2013 x86_ ...

  5. 最小路径覆盖 hdu 1151 hdu 3335

    Air Raid Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total S ...

  6. Android SVN开发实战的文件夹结构呈现

    svn有一个非常标准的文件夹结构,这是. 例如,该项目是proj.svn地址svn://proj/,然后该标准svn布局是 svn://proj/ | +-trunk +-branches +-tag ...

  7. lua5.1 和 5.2 关于 sequence 的定义变化,对#table取值的影响

    引子 环境 lua 5.2 a = {}   for i=1,2 do a[i] = i*3 end   a[4] = 11;   print(a[#a])   ---print 11 ------- ...

  8. DV工作流

  9. Swing-email(转)

    项目结构: 运行效果: 如果你感兴趣,请不要那我的邮箱做测试!!!! ========================================================== 下面是代码部 ...

  10. IMP-00013 目前只有 DBA 其他导入能力 DBA 导出的文件

    --实例演示 ---system用户导出 C:\Users\ZML>exp system/zml file='D:\zml.dmp' log = 'D:\zml.log' tables = (z ...