1, 用Keil uVision软件编一个让4位LED数码管显示数字的程序
#include#includesbit wei=P1^0;sbit duan=P1^1;int w[8]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f};int i,tt;int temp;void main(){TMOD=0X01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;tt=0;i=0;temp=0xfe;duan=1;P0=0xfe;duan=0;wei=1;P0=0x06;wei=0;while(1) {if(tt==20){ tt=0;i++;if(i==8)i=0;wei=1;P0=w[i];wei=0;duan=1;temp=_crol_(temp,1);P0=temp;duan=0;}}}void timer() interrupt 1{ TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt++;}这是我的protues电路图,你可以看看,由于可简化,我没画晶振和复位电路哈
很久没写过了,这是我当年的笔记,根据你自己板子的设计改一改应该能用;/******************************************************************************** 标题: 试验数码管上如何显示数字(共阳极) ** ** 连接方法:P0 与JP3 用8PIN排线连接 *********************************************************************************#include <reg51.h> #include <intrins.h>#define NOP() _nop_() /* 定义空指令 */void delay(unsigned int i); //函数声名// 此表为 LED 的字模 unsigned char code LED7Code[] = {~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~0x7D,~0x07,~0x7F,~0x6F,~0x77,~0x7C,~0x39,~0x5E,~0x79,~0x71};main(){ unsigned int LedNumVal=1 ,C ; //定义变量while(1){ if (++C>= 300) { LedNumVal++ ; //每隔300个扫描周期加一次C =0; //每隔300个扫描清零} // 将字模送到P0口显示 P0 = LED7Code[LedNumVal%10]&0x7f; //LED7 0x7f为小数点 共阴和共阳此处也是不一样;delay(150); //调用延时程序} }/****************************************************************** ** 延时程序 ** ******************************************************************/void delay(unsigned int i){char j;for(i; i > 0; i--)for(j = 200; j > 0; j--);}
名词解释
wei
中国内地新生代原创歌手魏一宁的首张个人创作专辑《WEI》
tt
Tizzy T(本名:谢锐韬,1993年2月22日-),中国内地男歌手、音乐制作人,出生于广东省潮州市。 2010年,获得华南地区“嘴上瘾”Beat Box大赛冠军,从而正式进入演艺圈;2017年,参加爱奇艺Hiphop音乐选秀节目《中国有嘻哈》,最终获得全国总决赛6强;同年,获得“工匠精神·青年榜样”颁奖典礼年度新锐音乐人青年榜样奖。