《数码管动态显示.doc》由会员分享,可在线阅读,更多相关《数码管动态显示.doc(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、四.数码管动态显示实验任务P0端口接动态数码管的字形码笔段,P2端口接动态数码管的数位选择端,动态显示“1234”字样;硬件电路注意:a接P0.0;b接P0.1;c接P0.3注意:4H接P2.4;3H接P2.5;2H接P2.6;1H接P2.7实验原理 七段LED显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的极管的接线形式,可分成共阴极型和共阳极型。LED 数码管的 a-dp 七个发光二极管因以不同亮暗的组合就能形成不同的字形,这种组合称之为字形码。下面给出共阴极的字形码:TKVZ,0 1 2 3 4 5 6 7 8 9 a b c d e f 0 0x79,0x24,0x
2、30,0x19,0x12,0x02,0x78,0x00,0x10,0x08,0x03,0x46,0x21,0x06,0x0e 1 2 3 4 5 6 7 8 9 a b c d e f C语言源程序#include code unsigned char seg7code10= 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; /显示段码 数码管字跟:/0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x40,/ 0 1 2 3 4
3、5 6 7 8 9 a b c d e f 0 /0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x08,0x03,0x46,0x21,0x06,0x0e/ 1 2 3 4 5 6 7 8 9 a b c d e fDelay(unsigned int tc) /延时程序while( tc != 0 ) /如果tc 为0 则终止延时unsigned int i; /局部正整数变量 ifor(i=0; i100; i+); /执行400 次将耗时1毫秒tc-; /tc计数减一void Led(int date) /显示函数P2=P2&0x7f; /P2
4、.7 输出低电平,选通千位数P0=seg7codedate/1000; /取出千位数,查表,输出。Delay(8); /延时P2=P2|0xf0; /销隐P2=P2&0xbf; /P2.6 输出低电平,选通百位数P0=seg7codedate%1000/100; /取出百位数,查表,输出。Delay(8); /延时P2=P2|0xf0; /销隐P2=P2&0xdf; /P2.5 输出低电平,选通十位数P0=seg7codedate%100/10; /取出十位数,查表,输出。Delay(8); /延时P2=P2|0xf0; /销隐P2=P2&0xef;P0=seg7codedate%10; /取出个位数,查表,输出。Delay(8);P2=P2|0xf0;main()int display_date=1234; /定义并赋值要显示的数据while(1)Led(display_date);/调用显示函数显示数据display_date