单片机教学实验内容答案.doc

单片机教学实验内容答案.doc

ID:61996220

大小:148.00 KB

页数:10页

时间:2021-04-09

单片机教学实验内容答案.doc_第1页
单片机教学实验内容答案.doc_第2页
单片机教学实验内容答案.doc_第3页
单片机教学实验内容答案.doc_第4页
单片机教学实验内容答案.doc_第5页
资源描述:

《单片机教学实验内容答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.1.数据传送实验要求:将片从30H开始连续7个单元的容送入从40H开始的地址单元中。(先在30H~36H中送初值)#includevoidmain(){unsignedchardatai,*d1,*d2;d1=0x30;d2=0x40;{*d1=0x10;*(d1+1)=0x11;*(d1+2)=0x22;*(d1+3)=0x45;*(d1+4)=0x30;*(d1+5)=0x32;*(d1+6)=0x21;}for(i=0;i<7;i++){*(d2+i)=*(d1+i);}}.2.排序实验要

2、求:将片从30H单元开始的10个无符号数,按由小到大的顺序排列。(先在30H~39H中送排序初值)#includevoidmain(){unsignedchardata*p,i,j,d;p=0x30;*(p+0)=0x21;*(p+1)=0x11;*(p+2)=0x31;*(p+3)=0x02;*(p+4)=0x22;*(p+5)=0x42;*(p+6)=0x32;*(p+7)=0x41;*(p+8)=0x05;*(p+9)=0x22;for(i=0;i<9;i++)for(j=0;j<9-i;j

3、++)if(*(p+j)>*(p+j+1)){d=*(p+j);*(p+j)=*(p+j+1);*(p+j+1)=d;}}.3.并行接口实验要求:使用P1口控制LED1~LED8进行花样显示。显示顺序规律为:(1)8个LED依次左移单个点亮。(2)8个LED依次左移逐个点亮。(3)8个LED依次左移逐个熄灭,然后再从(1)进行循环,中间延迟时间1s。#include#defineucharunsignedchar//在程序中用uchar替代unsignedchar//目的在于减少代码输入量#def

4、ineuintunsignedintvoiddelay(uint);//定义延时函数voidLeftMovLED(void);//定义向左移运点亮LED的函数//*******主函数********voidmain(void){while(1)//死循环{LeftMovLED();//调用LeftMovLED实现左移点亮LED功能}}.voidLeftMovLED(void){uchari,temp;//定义两个变量temp=0x01;//temp赋初值for(i=0;i<8;i++)//下面的代码循环8次{P1=

5、temp;//将temp的值赋给PORTD点亮LEDtemp=temp<<1&0xfe;//将temp左移一位后将最后一位清零。delay(1000);//调用延时函数,延时时间大约1S}temp=0x01;//temp赋初值for(i=0;i<8;i++)//下面的代码循环8次{P1=temp;//将temp的值赋给PORTD点亮LEDtemp=temp<<1&0xfe;//将temp左移一位后将最后一位清零。temp++;delay(1000);//调用延时函数,延时时间大约1S}for(i=0;i<8;i++

6、)//下面的代码循环8次{P1=temp;//将temp的值赋给PORTD点亮LEDtemp=temp<<1&0xfe;//将temp左移一位后将最后一位清零。delay(1000);//调用延时函数,延时时间大约1S}}//*******延时函数*******voiddelay(uintx){uchari;//定义一个循环变量while(x--)//循环执行在下代码x次,x在呼叫此函数处赋值。for(i=0;i<165;i++)//循环执行以下代码165次(大约1ms)continue;}.4.定时器/计数器实验

7、要求:使用定时/计数器作为延时控制,在两灯P0.0和P0.1之间按1s互相闪烁。#include#defineucharunsignedcharsbitLED=P0^0;sbitLED1=P0^1;uchartime;voidInitTimer0(void){LED=1;.LED1=0;TMOD=0x01;//定时器0,工作方式1TH0=0x3c;TL0=0xb0;//50ms中断一次EA=1;ET0=1;TR0=1;}voidmain(void){InitTimer0();while(1);//

8、分号,表示在此一直循环执行,等待中断。相当于汇编的AJMP$}voidTimer0Interrupt(void)interrupt1{TH0=0x3c;TL0=0xb0;time++;if(time==20)//中断20次,1s{time=0;LED=!LED;//P1.0上的LED1s亮灭一次LED1=!LED1;}}..6.LED显示器要求:设计一个59

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。