/ void delay60ms(void) {
unsigned char m,n; for(m=0;m<100;m++) for(n=0;n<200;n++) ; }
/ 函数功能:主函数
/ void main(void) { do { }
P0=0xfe; //第一个LED亮
delay60ms(); delay60ms();
P0=0xfb; //第三个LED亮 delay60ms();
P0=0xf7; //第四个LED亮 delay60ms();
P0=0xef; //第五个LED亮 delay60ms();
P0=0xdf; //第六个LED亮 delay60ms(); delay60ms();
P0=0xbf; //第七个LED亮 delay60ms();
P0=0x7f; //第八个LED亮 P0=0xfd; //第二个LED亮
delay60ms();
}while(1); //无限循环,使8位LED循环流水点亮
//实例24:用字符型数组控制P0口8位LED流水点亮
#include
unsigned char m,n; for(m=0;m<100;m++) for(n=0;n<200;n++) ; }
/ 函数功能:主函数
/ void main(void) {
unsigned char i;
unsigned char code Tab[ ]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //定义无符号字符型数组 while(1) {
for(i=0;i<8;i++) {
P0=Tab[i];//依次引用数组元素,并将其送P0口显示 delay60ms();//调用延时函数 }
//实例25: 用P0口显示字符串常量
#include
} }
/ 函数功能:延时约150ms (3 200 250=150 000μs=150ms / void delay150ms(void) {
unsigned char m,n; for(m=0;m<200;m++) for(n=0;n<250;n++) }
/ 函数功能:主函数
/ void main(void) {
unsigned char str[]={\ //将字符串赋给字符型全部元素赋值
unsigned char i; while(1) {
i=0; //将i初始化为0,从第一个元素开始显示 }
//实例26:用P0 口显示指针运算结果
#include
while(str[i]!='\\0') //只要没有显示到结束标志'\\0' {
P0=str[i]; //将第i个字符送到P0口显示 delay150ms(); //调用150ms延时函数 i++; //指向下一个待显字符 } ;
}
unsigned char p1, p2; //定义无符号字符型指针变量p1,p2 unsigned char i,j; //定义无符号字符型数据 i=25; //给i赋初值25 j=15;
p1=&i; //使指针变量指向i ,对指针初始化 p2=&j; //使指针变量指向j ,对指针初始化
P0= p1+ p2; // p1+ p2相当于i+j,所以P0=25+15=40=0x28
//则P0=0010 1000B,结果P0.3、P0.5引脚LED熄灭,其余点亮 while(1)
; //无限循环,防止程序“跑飞” }
//实例27:用指针数组控制P0口8位LED流水点亮
#include
/ 函数功能:延时约150ms (3 200 250=150 000μs=150ms / void delay150ms(void) {
unsigned char m,n; for(m=0;m<200;m++) for(n=0;n<250;n++) }
/ 函数功能:主函数
/ void main(void) {
unsigned char code Tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned char p[ ]={&Tab[0],&Tab[1],&Tab[2],&Tab[3],&Tab[4],&Tab[5], &Tab[6],&Tab[7]};
;
unsigned char i; //定义无符号字符型数据 while(1) { }
//实例28:用数组的指针控制P0 口8 位LED流水点亮
#include
/ 函数功能:延时约150ms (3 200 250=150 000μs=150ms / void delay150ms(void) {
unsigned char m,n; for(m=0;m<200;m++) for(n=0;n<250;n++) }
/ 函数功能:主函数
/ void main(void) {
unsigned char i;
unsigned char Tab[ ]={0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF, 0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,
0xFE,0xFC,0xFB,0xF0,0xE0,0xC0,0x80,0x00, 0xE7,0xDB,0xBD,0x7E,0x3C,0x18,0x00,0x81,
;
for(i=0;i<8;i++) }
{
P0= p[i]; }
delay150ms();