77范文网 - 专业文章范例文档资料分享平台

单片机期末考试编程题

来源:网络收集 时间:2019-06-11 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

/*************************************** 实验题目要求:

P23- P26口做输出口,接发光二极管,编写并调试程序,使其闪烁。

时间:2012年12月21日 程序撰写者:邹康

*****************************************/ #include

void delay(unsigned int t) //软延时大致时间为1ms { unsigned int a,b; for(a=0;a

void main() { while(1) { P2=~P2; delay(1000); //延时1s }

} /********************************************************* 实验题目要求:

P23- P26口做输出口,接发光二极管,编写并调试跑马灯程序。

时间:2012年12月21日

程序撰写者:邹康

***********************************************************/

#include

void delay(unsigned int t) //延时1ms左右 { unsigned int a,b; for(a=0;a

void main()

{ unsigned char i=0,m=0; while(1) { for(i=0;i<4;i++) //向左移动 { P2=~(0x08<>i); delay(1000); } }

}/********************************* 实验题目要求:

设计一个二进制减1计数器,按一次键,减1,并用4个LED显示计数结果,减至0时,重新从15开始计数。

时间:2012年12月21日 程序撰写者:邹康

**********************************/

#include

sbit key1=P2^0;

sbit LED0=P2^6; //单片机板子最右边的led灯 sbit LED1=P2^5; //右边数第二个灯 sbit LED2=P2^4; //右边数第三个灯 sbit LED3=P2^3; //右边数第四个灯

char number=15;

unsigned char num[4]; void key() //通过按键对NUMBER的数值进行减计数 { static unsigned char m=0; if(key1==0) { m++; if(m>=30)

{ number--; if(number<0) number=15; m=0; } } }

void number_change() //将十进制转换为二进制 { unsigned int n=0; unsigned char j=0; n=number; for(j=0;j<4;j++) { num[j]=n%2; n=n/2; } }

void show() //通过LED将二进制显示出来 { LED0=!num[0]; LED1=!num[1]; LED2=!num[2]; LED3=!num[3]; }

void main() { while(1) { key(); number_change(); show(); }

}/******************************************* 实验题目要求:

用1个按键控制LED的显示,要求显示3种以上的不同模式。

时间:2012年12月22日 程序撰写者:邹康

********************************************/ #include

sbit led0=P2^3; sbit led1=P2^4; sbit led2=P2^5; sbit led3=P2^6;

sbit mode_key=P2^0; char mode=0;

void delay(unsigned int t) { unsigned int a,b; for(a=0;a

void key() { static unsigned char m; if(mode_key==0) { m++; if(m>=30) { mode++; if(mode>=3) mode=0; m=0; } } }

void mode_1() 左右 { unsigned char i=0,c=0; for(i=0;i<4;i++) { P2|=0xf8; c=~(0x08<

//延时时间大约1ms //通过按键进行模式选择 //模式一 根据开发板,LED循环右移,时间间隔1s }

void mode_2() //模式二 根据开发板,LED一闪一灭,时间间隔1s左右 { led0=0; led1=0; led2=0; led3=0; delay(1000); led0=1; led1=1; led2=1; led3=1; delay(1000); }

void mode_3() //模式三 , 先循环右移,再循环左移,时间间隔1s左右 { unsigned char i=0,n=0,c=0; for(i=0;i<4;i++) { P2|=0xf8; P2&=~(0x08<>i); delay(1000); } }

void main() { while(1) { key(); switch(mode) { case 0 : mode_1();break; case 1 : mode_2();break; case 2 : mode_3();break; } }/*******************************************

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库单片机期末考试编程题在线全文阅读。

单片机期末考试编程题.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/656039.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: