1 第一位隔一秒闪耀一次#include#define uint unsigned intsbit led1=P1^0;uint i;uint j;void main(){ while(1) { led1=0; for(i=1000;i>0;i--) for(j=110;j>0;j--); led1=1; for(i=1000;i>0;i--) for(j=110;j>0;j--); }}2 复杂广告灯#include#define uint unsigned int#define uchar unsigned charuchar discode[]={ 0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,//正向流水灯 0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,0xFF,//反向流水灯 0xAA,0x55,0xAA,0x55,0xAA,0x55,0xFF,//隔灯闪耀3 次 0xF0,0x0F,0xF0,0x0F,0xFF,//高四盏。低四盏闪耀 2次 0x33,0xCC,0x33,0xCC,0x33,0xCC,0xFF//隔两盏闪耀 3 次 };void delayms(uint ms) { uint i; while(ms--) { for(i=0;i<120;i++); } }void main(void) { uchar i; P0=0xFF; while(1) { for(i=0;i<35;i++) { P0=discode[i]; delayms(250); }}}3 拉幕式与闭幕式广告灯#include#define uint unsigned int#define uchar unsigned charuchar discode1[4]={0x18,0x24,0x42,0x81};uchar discode2[4]={0x7E,0x3C,0x18,0x00};void delayms(uint ms) { uint i; while(ms--) { for(i=0;i<120;i++); }}void main(void) { uchar i,j; P0=0xFF; while(1) { for(i=0;i<4;i++) { j=discode1[i]; P0=~j; delayms(500); } j=0xFF; P0=~j; delayms(500); for(i=0;i<4;i++) { j=discode2[i]; P0=~j; delayms(500); } } }4 流水灯跑马灯左移右移#include#define uint unsigned int#define uchar unsigned charvoid delay(uint s) { uint i; while(s--) { for(i=0;i<120;i++); } }void main(void) { uchar i,j; P0=0xFF; while(1) { j=0x01; for(i=0;i<8;i++) { P0=~j; delay(500); j=j<<1; } P0=0xFF; delay(1000); j=0x80; for(i=0;i<8;i++) { P0=~j; delay(500); j=j>>1; } }}5 千位静态显示数字#includesbit SMG_q = P1^0;//定义数码管阳级控制脚(千位)sbit SMG_b = P1^1;//定义数码管阳级控制脚(百位)sbit SMG_s = P1^2;//定义数码管阳级控制脚(十位)sbit SMG_g = P1^3;//定义数码管阳级控制脚(个位)void main(){ SMG_q=0; P0=0xF8; while(1); }6,4 位数码管同时静态显示#include#define u...