数码管学习随记

来源:互联网 发布:windows xp 独木成林 编辑:程序博客网 时间:2024/05/20 03:41

共阳极数码管

顺       序: h  g  f  e  d  c  b  a
二  进  制:1  1  1  1  1  1  1  1
十六进制:0xFF


1   [0000 0110] 0x06   2   [0101 1011] 0x5B   
3   [0100 1111] 0x4F   4   [0110 0110] 0x66   
5   [0110 1101] 0x6D   6   [0111 1101] 0x7D
7   [0000 0111] 0x07    8   [0111 1111] 0x7F 
9   [0110 1111] 0x6F    0   [0011 1111] 0x3F  


注:以上数码管编码的推理过程

数码管学习难度在于对数码管的编码上,至于具体实际项目开发中显示什么就随便了,建议初学者,自己尝试着去将数字都统一编码一次,这样才能更好的理解。

单个数码管0到9的循环(51实例)

#include<reg52.h>#define uint  unsigned int;#define uchar unsigned char;uint code table[]={0x3F,0x06,0x5B, 0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};sbit wei=P1^1; sbit Line=P1^3;sbit led=P1^2;sbit duan=P1^0;//C语言中变量时需要事先申请声明,以便程序解析的时候先分配好空间uint i;uint a;void main (void){P0=0X00;Line=0;//关闭点阵(本开发板带有点阵)P0=0XFF;wei=0; //关闭全部数码管(初始化数码管)led=0; //关闭二极管wei=1;P0=0xfe;wei=0;while(1){for(i=0;i<10;i++){duan=1;P0=table[i];duan=0;a=50000;while(a--);}}}


0 0
原创粉丝点击