单片机编程各种实例 上百个例题(5)

2019-02-15 17:30

0xC3,0xE7,0x7E,0xBD,0xDB,0xE7,0xBD,0xDB}; //流水灯控制码

unsigned char p; //定义无符号字符型指针 p=Tab; //将数组首地址存入指针p while(1) { }

//实例29:用P0 、P1口显示整型函数返回值

#include

/ 函数功能:计算两个无符号整数的和

/ unsigned int sum(int a,int b) {

unsigned int s; s=a+b; return (s); }

/ 函数功能:主函数

/ void main(void) {

unsigned z; z=sum(2008,2009);

P1=z/256; //取得z的高8位 P0=z%6; //取得z的低8位

for(i=0;i<32;i++) //共32个流水灯控制码 }

{

P0= (p+i); // (p+i)的值等于a[i] }

delay150ms(); //调用150ms延时函数

}

while(1) ;

//实例30:用有参函数控制P0口8位LED流水速度

#include

/ 函数功能:延时一段时间

/ void delay(unsigned char x) {

unsigned char m,n; for(m=0;m

/ 函数功能:主函数

/ void main(void) {

unsigned char i;

unsigned char code Tab[ ]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};

//流水灯控制码

while(1) {

//快速流水点亮LED

for(i=0;i<8;i++) //共8个流水灯控制码

{

P0=Tab[i]; }

delay(100); //延时约60ms, (3 100 200=60 000μs)

;

//慢速流水点亮LED

for(i=0;i<8;i++) //共8个流水灯控制码

}

{ }

P0=Tab[i];

delay(250); //延时约150ms, (3 250 200=150 000μs)

}

//实例31:用数组作函数参数控制流水花样

#include

/ 函数功能:延时约150ms

/ void delay(void) {

unsigned char m,n; for(m=0;m<200;m++) for(n=0;n<250;n++) }

/ 函数功能:流水点亮P0口8位LED

/ void led_flow(unsigned char a[8]) {

unsigned char i; for(i=0;i<8;i++) }

/

{ P0=a[i]; delay(); } ;

函数功能:主函数

/ void main(void) {

unsigned char code Tab[ ]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F}; }

//实例32:用指针作函数参数控制P0口8位LED流水点亮

#include

/ 函数功能:延时约150ms

/ void delay(void) {

unsigned char m,n; for(m=0;m<200;m++) for(n=0;n<250;n++) }

/ 函数功能:流水点亮P0口8位LED

/ void led_flow(unsigned char p) //形参为无符号字符型指针 {

unsigned char i; while(1) {

i=0; //将i置为0,指向数组第一个元素 while( (p+i)!='\\0') //只要没有指向数组的结束标志 { ;

//流水灯控制码

led_flow(Tab);

P0= (p+i);// 取的指针所指变量(数组元素)的值,送P0口 }

/ 函数功能:主函数

/ void main(void) {

unsigned char code Tab[ ]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F, 0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,

0x18,0x0,0x81,0xC3,0xE7,0xFF,//流水灯控制码

0xFF,0xFE,0xFC,0xFB,0xF0,0xE0,0xC0,0x80, 0x00,0xE7,0xDB,0xBD,0x7E,0xFF,0xFF,0x3C, 0xFF,0x7E};

delay(); //调用延时函数 }

i++; //指向下一个数组元素 }

unsigned char pointer; pointer=Tab; led_flow(pointer); }

//实例33:用函数型指针控制P1口灯花样

#include //包含51单片机寄存器定义的头文件 unsigned char code Tab[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F}; //流水灯控制码,该数组被定义为全局变量

/


单片机编程各种实例 上百个例题(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:QFSN-330-2-20B发电机作业指导书

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: