/****************************************/
/* Copyright (c) 2004, 通信工程学院戴佳 */
/* All rights reserved. */
/* 作 者:戴佳 */
/****************************************/
/* 4位8段数码管分别动态显示“1234”, */
#include "7LEDShow.h"
void main()
{
DIGPORT = 0; // 关闭显示
TMOD = 0x01; // T0工作方式1
/* 2ms 定时设置 */
time0_tmp = 65536-time0*fosc/12;
TH0 = (time0_tmp/256);
TL0 = (time0_tmp%256);
TR0 = 1;
ET0 = 1;
EA = 1;
digbit = 0x01; // 从第一位数码管开始
wordbuf[3] = 4;
wordbuf[2] = 3;
wordbuf[1] = 2;
wordbuf[0] = 1;
while(1);
}
/* 定时器0中断服务子程序,定时动态扫描显示 */
void time0_int(void) interrupt 1
{
TH0 = (time0_tmp/256);
TL0 = (time0_tmp%256);
display();
}
/* 根据共阴极字型编码表获取0~9,A~B字型代码 */
uchar getcode(uchar i)
{
uchar p;
switch (i)
{
case 0: p=0x3f; break; /* 0 */
case 1: p=0x06; break; /* 1 */
case 2: p=0x5B; break; /* 2 */
case 3: p=0x4F; break; /* 3 */
case 4: p=0x66; break; /* 4 */
case 5: p=0x6D; break; /* 5 */
case 6: p=0x7D; break; /* 6 */
case 7: p=0x07; break; /* 7 */
case 8: p=0x7F; break; /* 8 */
case 9: p=0x67; break; /* 9 */
case 10: p=0x77; break; /* A */
case 11: p=0x7C; break; /* B */
case 12: p=0x39; break; /* C */
case 13: p=0x5E; break; /* D */
case 14: p=0x79; break; /* E */
case 15: p=0x71; break; /* F */
default: break;
}
return(p);
}
/* 显示函数 */
void display(void)
{
uchar i;
switch (digbit)
{
case 1: i=0;break;
case 2: i=1;break;
case 4: i=2;break;
case 8: i=3;break;
default: break;
}
DIGPORT = 0; // 关闭显示
WORDPORT = getcode(wordbuf[i]); // 送字型码
DIGPORT = digbit; // 送字位码
if (digbit<0x08)
digbit = digbit*2;
else
digbit = 0x01;
}
c语言实例精华 --7ledshow
需积分: 9 41 浏览量
2009-01-06
12:54:34
上传
评论
收藏 21KB RAR 举报
midysky
- 粉丝: 1
- 资源: 16
最新资源
- week6.1.7z
- 移动机器人自主路径规划之RRTStar算法MATLAB实现代码
- 基于Python+OpenCV+FFmpeg实现自动识别电影剪辑+分析剪辑主题颜色+源码+文档(毕业设计&课程设计&项目开发)
- 基于python的二手商品交易平台 python+django开发的供需平台
- 微信小程序源码 侧滑布局小程序 (源码下载 +内附使用说明)
- heima-JUC-资料
- coreg_FSL.sh
- ROS+YOLOV8+SLAM智能小车导航实战(四、激光雷达+SLAM建图)
- 什么是决策树,有哪些适用场景?
- 基于python开发的口红色号识别程序+源码+开发文档+源码解析(毕业设计&课程设计&项目开发)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈