#include <reg51.h> #define uint unsigned int #define uchar unsigned char sfr P0M0 = 0x94; sfr P0M1 = 0x93; sfr P2M0 = 0x96; sfr P2M1 = 0x95; uint count; uchar code leddata[] = { 0xC0, //"0" 0xF9, //"1" 0xA4, //"2" 0xB0, //"3" 0x99, //"4" 0x92, //"5" 0x82, //"6" 0xF8, //"7" 0x80, //"8" 0x90, //"9" 0x88, //"A" 0x83, //"B" 0xC6, //"C" 0xA1, //"D" 0x86, //"E" 0x8E, //"F" 0x89, //"H" 0xC7, //"L" 0xC8, //"n" 0xC1, //"u" 0x8C, //"P" 0xA3, //"o" 0xBF, //"-" 0xFF, }; uchar code weidata[] = { 0x01,0x02,0x04,0x08, 0x10,0x20,0x40,0x80, 0x01,0x02,0x04,0x08, 0x10,0x20,0x40,0x80 }; void delay(uint ms){ uint i,j; for(i = 0;i < ms;i++) for(j = 0;j < 121;j++); } void display(){ uint i; for(i = 0;i < 16;i++){ P0 = leddata[16]; P2 = ~weidata[i]; delay(1000); } } void main(){ P0M0 = 0x00; P0M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; while(1){ display(); } }