单片机系列(二)
来源:互联网 发布:数据库的sql语句 编辑:程序博客网 时间:2024/06/09 06:13
这是七段数码管的动态显示,写起来还真感觉吃力,尤其是犯了个低级的错误,
就是在定义那个显示的字型码的时候少写了个分号,找了半天错误,还是功底不够
牢靠,得多加练习,かんばで!
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$//
// FileName: SegLed.c ||
// Function: 七段数码管动态显示 ||
// Author : Softstone ||
// Date : 2007/04/20 ||
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$//
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define SegCs P1
#define DisTem P0
void Delay();
void Del05s(void);
void Display(void);
sbit LedCs=P3^7;
code uchar DisBuf[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,//0-9
0x88,0x83,0xa7,0xa1,0x86,0x8e}; //Don't forget the ";",or you
//will got the unreasonable mistake!
void main()
{
LedCs=1;
while(1){Display();}
}
//***********************************//
// 显示子程序,每次显示四个数字 ||
// ||
//***********************************//
void Display()
{
uchar i,j,k,m,n;
uchar temp;
SegCs=0xff;
DisTem=0xff;
for(j=0;j<4;j++)
{
k=30;
while(k)
{
temp=0xfe;
for(i=0;i<4;i++)
{
SegCs=temp;
m=temp<<1;
n=temp>>7;
temp=m|n;
DisTem=DisBuf[4*j+i];
Delay();
Delay();
}
k--;
}
SegCs=0xff;
Del05s();
}
}
//********************************//
// The delay function ||
//********************************//
void Delay()
{unsigned int kk=0xff;
do{_nop_();kk--;}
while(kk!=0);
}
void Del05s()
{unsigned int kk=0xefff;
do{_nop_();kk--;}
while(kk!=0);
}
- 单片机系列(二)
- 51单片机开发系列二_1602字符液晶显示
- 单片机小白学步系列(二)爱上单片机的一万个理由
- 单片机系列(一)
- 单片机系列(三)
- 单片机系列(四)
- C8051F系列单片机相关
- 单片机系列的识别
- Microchip 单片机 PIC系列
- STC15F2K60S2系列单片机
- C8051F系列单片机相关
- 8051 系列单片机内部结构
- 上课不听讲下课来补习系列之-玩转单片机STM8(二)
- 单片机小白学步系列(二十) IO口原理
- 单片机小白学步系列(二十一) IO口:基本的LED和按键操作
- 【单片机笔记】STM8S系列单片机FLASH操作
- EMC单片机学习二
- 单片机实验二
- 单片机系列(一)
- 数组的定义与声明解析
- 1.检查guest账户是否开启
- 游戏引擎quake2简介
- 测试一下
- 单片机系列(二)
- 前言
- Ajax Using JSON
- 找师父
- 試用Google翻譯為簡體中文
- 利用注册表来修改桌面的ie图标
- Windows平台经典的开源/自由/共享软件
- 如何使用MAP文件找到程序崩溃的原因
- MFC程序的初始化过程