谈静态数码管
这里首先要说明一下138译码器,这是一个我成为3输入8输出的芯片
A B C端为输入端,那么 当A B
#include<reg52.h> typedef unsigned int u16; typedef unsigned char u8; sbit LSA = P2^0; sbit LSB = P2^1; sbit LSC = P2^2; //位定义 u8 code smgduan [] = {0x3f, 0x06, 0x5b ,0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71}; //0-9十六进制表示 void main() { LSA = 0; LSB = 0; LSC = 0; //A、B、C输出低电平,LED1输出低电平 P0 = smgduan[0];
C都输入0(低电平)时,Y0输出低电平,所以数码管上的第一个灯就会被点亮。
此时将控制数码管段的十六进制表示数用一个数组表示出来。 例如0x3f表示“0”,那么程序设计完成后数码管上第一个灯就会显示0.
每一个不堪回首的现在,都有一个不够努力的曾经