单片机程序源代码(43 页)Good is good, but better carries it.精益求精,善益求善。第二章任务一:闪耀广告灯的设计利用 89c51 单片机的端口控制两个 LED(D0 和 D1),编写程序,实现两个LED 互闪。 #include #define uint unsigned int #define uchar unsigned char sbit LED1=P0^0; sbit LED2=P0^1; void delayms(uint ms) { uint i;while(ms--){for(i=0;i<120;i++);} } void main() { while(1){LED1=0;LED2=1;delayms(500);LED1=1;LED2=0;delayms(500);} }任务二:流水广告灯的设计利用 89c51 单片机的端口控制 8 个 LED(D0~D7)循环点亮,刚开始时 D0 点亮,延时片刻后,接着 D1 点亮,然后依次点亮 D2->D3->D4->D5 ->D6->D7 ,然后再点亮 D7->D6->D5->D4 ->D3->D2->D1->D0,重复循环。#include#include #define uint unsigned int#define uchar unsigned charuint i;uchar temp;uint a[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};void delayms(uint ms){ while(ms--) {uint j; for(j=0;j<120;j++); }}void main(){ while(1) { P0=0xfe; while(P0!=0x7f) { //P1=temp; //delayms(500); P0=_crol_(P0,1); delayms(250); } temp=0x7f; while(P0!=0xfe) { P0=temp; delayms(500); temp=_cror_(temp,1); } }}任务三:拉幕式与闭幕式广告灯的设计利用 89c51 单片机的 P0 端口实现 8 个 LED D0~D7 的拉幕式与闭幕式广告灯设计。拉幕式: 开始 D0~D7 全灭,延时片刻后首先 D3 和 D4 亮,其次是 D2 和 D5亮,再是 D1 和 D6 亮,最后是 D0 和 D7 亮。闭幕式:开始 D0~D7 全亮,延时片刻后首先 D0 和 D7 灭,其次是 D1 和 D6灭,再是 D2 和 D5 灭,最后是 D3 和 D4 灭。#include#define uint unsigned int#define uchar unsigned charuchar code table[]={0xe7,0xc3,0x81,0x00};void delay(uint x){uint i,j;for(i=x;i>0;i--)for(j=120;j>0;j--);}void main(){uint i;while(1){P1=0xff;delay(500);for(i=0;i<4;i++){P1=table[i];delay(500);}for(i=3;i>0;i--){P1=table[i-1];delay(500);}}}任务四:复杂广告灯的设计利用 89c51 单片机的端口实现 8 个 LED(D0~D7)复杂广告灯的控制,要求显示规律为:正向流水->反向流水->隔灯闪耀 3 次->高四...