整理单片机实验三报告参考模板0526.docx
- 文档编号:4286902
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:22
- 大小:66.31KB
整理单片机实验三报告参考模板0526.docx
《整理单片机实验三报告参考模板0526.docx》由会员分享,可在线阅读,更多相关《整理单片机实验三报告参考模板0526.docx(22页珍藏版)》请在冰豆网上搜索。
整理单片机实验三报告参考模板0526
(6)环境影响评价结论的科学性。
1.法律
[例题-2006年真题]下列关于建设项目环境影响评价实行分类管理的表述,正确的是( )
以森林为例,木材、药品、休闲娱乐、植物基因、教育、人类住区等都是森林的直接使用价值。
第五章 环境影响评价与安全预评价
3)选择价值。
选择价值(OV)又称期权价值。
我们在利用环境资源的时候,并不希望它的功能很快消耗殆尽,也许会设想未来该资源的使用价值会更大。
环境敏感区,是指依法设立的各级各类自然、文化保护地,以及对建设项目的某类污染因子或者生态影响因子特别敏感的区域。
2)应用环境质量标准时,应结合环境功能区和环境保护目标进行分级。
发现规划环境影响报告书质量存在重大问题的,审查时应当提出对环境影响报告书进行修改并重新审查的意见。
1)按类型分。
环境标准按类型分为环境质量标准、污染物排放标准(或控制标准)、环境基础标准、环境检测方法标准、环境标准样品标准。
《单片机技术应用》实验报告
实验三:
单片机定时器与中断的应用
任务1、两个外部中断源的应用(结合独立式按键)
任务2、TC用做内部定时器的应用(结合LED、数码管、蜂鸣器等)
任务3、TC用做外部计数器的应用(外接信号源)
任务4、综合实现电子钟(用定时中断实现的电子钟)
班级:
12机电二班
姓名:
胡文强
学号:
1206210242
实验时间:
(一)任务1:
两个外部中断源的应用(结合独立式按键)
1、画出相应的驱动电路图;proteus仿真效果图,或者电路图功能实现后的拍照录像等附后;
2、实现的功能描述如下:
(1)功能1:
接到P3.2和P3.3的两个按键采用中断法实现数码管显示内容的+1和-1功能;
(2)功能2:
接到P3.2和P3.3的两个按键采用查询法实现数码管显示内容的+1和-1功能;
3、编写配套程序代码,并对关键语句有中文注释;
#include
sbitkey1=P3^2;
sbitkey2=P3^3;
#definewxP2
#definedxP0
unsignedcharcount=0;
unsignedcharcodeled_code[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xd8,0x80,0x90,0x40,0x79,0x24,0x30,0x19,0x12,0x02,
0x58,0x00,0x10};//0~9及其小数部分显示
voidkeyscan_0()interrupt0//外部中断0按键中断函数定义
{
{
while(key1==0);
count++;
if(count==10)count=0;
}
}
voidkeyscan_2()interrupt2//外部中断1按键中断函数定义
{
{
while(key2==0);
count--;
if(count==0xff)count=10;
}
}
voiddisp()
{
wx=0xfe;
dx=led_code[count];
}
voidmain()
{
P3=0xff;
IE=0X81;//允许int0中断,字节操作赋值语句
EA=1;EX0=1;//为操作赋值语句
EX1=1;
IP=0X01;//表示int0优先级为高级,字节操作赋值语句
PX0=1;//位操作赋值语句
PX1=1;
IT0=1;//表示下降沿触发,位操作赋值语句
IT1=1;
TCON=0X01;//字节操作赋值语句
while
(1)
{
disp();
}
}
4、画出每个源程序配套的流程图(好的流程图反映了编程的逻辑思路清晰);
5、思考与提高,相关补充关键的知识点归纳(自学收获小结,找出自己所学的知识点中不足的部分);
(二)任务2:
TC用做内部定时器的应用(结合LED、数码管、蜂鸣器等)
1、画出相应的驱动电路图;proteus仿真效果图,或者电路图功能实现后的拍照录像等附后;
2、实现的功能描述
(1)用T0方式1定时50ms中断编程实现P1.0的LED灯亮灭各0.5s交替循环变化。
(2)实现每隔1S的多花样流水灯(1S用定时器中断法编程);
(3)简易电子琴的设计(不同按键控制,令蜂鸣器发出DOREMIFASELAXI七个音频信号,同时数码管显示对应的音阶数字);
(4)实现1位数码管每隔1S循环0-9的显示变化(1S用定时器中断法编程);
(5)实现2位数码管每隔1S循环00-59的显示变化(1S用定时器中断法编程);
(6)实现8位数码管显示模拟时钟的“时-分-秒”(1S用定时器中断法编程);
3、编写配套程序代码,并对关键语句有中文注释;
#include
sbitmic=P1^0;//定义喇叭接口
bitflag;//定义标志位
unsignedchari;//定义变量
unsignedcharsong[]=
{
1,1,2,1,4,3,1,1,2,1,5,4,
1,1,8,6,4,3,2,2,7,7,6,4,5,4,15
};//定义生日歌歌谱
inttone[]=
{
1012,903,852,759,716,638,568,506,478,426,379
};//定义简谱音调
unsignedcharbeat[]=
{
60,10,40,40,40,80,60,10,40,40,40,80,
60,10,40,40,40,40,40,60,10,40,40,40,80
};//定义节拍
unsignedcharbeath=(65536-50000)/256;
unsignedcharbeatl=(65536-50000)%256;//定义节拍变量
unsignedchartime,j,k;
inttoneh,tonel;
voidmain()
{
mic=0;
i=0;
time=30;
TMOD=1;//定义计时器工作方式
EA=1;//开总中断
while(song[i]!
=15)
{
toneh=(65536-tone[song[i]])/256;
tonel=(65536-tone[song[i]])%256;
TH0=toneh;
TL0=tonel;
ET0=1;
ET1=1;
TR0=1;
time=beat[i];
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
flag=0;
TR1=1;
while(flag==0);
i++;
}
}
voidtime0()interrupt1
{
TH0=toneh;
TL0=tonel;
mic=~mic;
}
voidtime1()interrupt3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
if(--time==0)
{
flag=1;
TR1=0;
}
}
#include
unsignedintx,a,b,i=0;
unsignedchartab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//0-9数字显示
voiddisplay(unsignedintk)
{
P2=0xfd;//数码管位定义
P0=tab[(k%100)/10];
P2=0xfe;
P0=tab[k%10];
P2=0Xff;
}
voidmain()
{
unsignedchari;
x=0;
TR0=1;
ET0=1;
EA=1;
TMOD=0x01;
TL0=(65535-50000)%256;
TH0=(65535-50000)/256;
while
(1)
{
if(x==59)//计时到59然后清零
x=0;
if(0<=i<9)
{
display(x);//调用显示函数
x++;
}
if(i==10)
i=0;
if(a==20)
{
a=0;
i++;
}
}
}
voidexter()interrupt1
{
TL0=(65535-50000)%256;
TH0=(65535-50000)/256;
a++;
}
#include
#defineuintunsignedint
unsignedcharcodedy[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};
uintt=0,sec=0,fen=0,shi=0,a,b,c,d,e,f;
voiddelay()
{
unsignedintx,y;
for(x=3;x>0;x--)
for(y=110;y>0;y--);
}
voidsmsm()
{
P2=0XFB;
P0=0Xbf;
delay();
P2=0Xdf;
P0=0Xbf;
delay();
P2=0XFE;
P0=dy[b];
delay();
P2=0XFD;
P0=dy[a];
delay();
P2=0Xf7;
P0=dy[d];
delay();
P2=0Xef;
P0=dy[c];
delay();
P2=0Xbf;
P0=dy[f];
delay();
P2=0X7f;
P0=dy[e];
delay();
}
voidgd()
{
a=sec/10;
b=sec%10;
c=fen/10;
d=fen%10;
e=shi/10;
f=shi%10;
}
voidinit()
{
P0=0XFF;
TMOD=0X01;
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;
EA=1;
ET0=1;
TR0=1;
}
voidmain()
{
init();
while
(1)
{
gd();
smsm();
delay();
if(t==20)
{
t=0;
sec++;
if(sec==60)
{
sec=0;
fen++;
if(fen==60)
{
fen=0;
shi++;
if(shi==24)
shi=0;
}
}
}
}
}
voidet0()interrupt1
{
TR0=0;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
t++;
TR0=1;
}
4、画出每个源程序配套的流程图(好的流程图反映了编程的逻辑思路清晰);
5、思考与提高,相关补充关键的知识点归纳(自学收获小结,找出自己所学的知识点中不足的部分);
(三)任务3:
TC用做外部计数器的应用(外接信号源)
1、画出相应的驱动电路图;proteus仿真效果图,或者电路图功能实现后的拍照录像等附后;
2、实现的功能描述:
简易频率计设计,即:
测量周期方波信号的频率并数码管显示;
3、编写配套程序代码,并对关键语句有中文注释;
#include
#defineuintunsignedint
unsignedcharcodedy[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
uintt=0,a,b,c,d,e,f,g,h,tt;
sbitled=P1^0;
voiddelay(unsignedintz)//延时函数
{
unsignedintx,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
voidsmsm()//数码管显示函数
{
P2=0XFE;
P0=dy[a];
delay(3);
P2=0XFD;
P0=dy[b];
delay(3);
P2=0XFB;
P0=dy[c];
delay(3);
P2=0Xf7;
P0=dy[d];
delay(3);
P2=0Xef;
P0=dy[e];
delay(3);
P2=0Xdf;
P0=dy[f];
delay(3);
P2=0Xbf;
P0=dy[g];
delay(3);
P2=0X7f;
P0=dy[h];
delay(3);
}
voidgd()
{
a=t%10;
b=t/10%10;
c=t/100%10;
d=t/1000%10;
e=t/10000%10;
f=t/100000%10;
g=t/1000000%10;
h=t/10000000;
}
voidinit()//定时器函数
{
P0=0XFF;
TMOD=0X51;
TH0=(65536-1)/256;
TL0=(65536-1)%256;
EA=1;
ET1=1;
TR1=1;
ET0=1;
TR0=1;
}
voidmain()
{
init();
while
(1)
{
gd();
smsm();
}
}
voidet0()interrupt1
{
TR0=0;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
tt++;
if(tt==20)
{
tt=0;
t=TH1*256+TL1;
TH1=0;
TL1=0;
}
TR0=1;
}
4、画出每个源程序配套的流程图(好的流程图反映了编程的逻辑思路清晰);
5、思考与提高,相关补充关键的知识点归纳(自学收获小结,找出自己所学的知识点中不足的部分);
(四)任务4:
综合实现电子钟(用定时中断实现的电子钟)
1、画出相应的驱动电路图;proteus仿真效果图,或者电路图功能实现后的拍照录像等附后;
2、实现的功能描述:
(1)定时与中断综合应用实现可调时间的电子钟(按键中断+数码管),具体细节功能自定义;
(2)闹钟(有整点报时或者特定时间的闹铃),具体细节功能自定义;
(3)简易倒(正)计时器的设计,具体细节功能自定义;
3、编写配套程序代码,并对关键语句有中文注释;
#include
#definewxP2
#definedxP0
#defineLEDP1
sbitled=P3^7;
sbitkey1=P3^2;//调整
sbitkey2=P3^3;//+
sbitkey3=P3^4;//-
sbitkey4=P3^5;//启动
unsignedcharPMD[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsignedcharcodeseg_code[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xd8,0x80,0x90,0xbf};
unsignedcharcodewx_code[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsignedcharxshc[8]={0,0,10,0,0,10,0,0};
unsignedcharhour;
unsignedcharmin;
unsignedcharsec;
unsignedchara,i,count,addr;
unsignedinttt;
voiddelay(unsignedintxms)
{
unsignedintj,k;
for(k=0;k for(j=0;j<125;j++); } voidxianshi() { for(i=0;i<8;i++) { dx=seg_code[xshc[i]]; if(addr==i) { count++; if(count<5)wx=0xff; elseif(count<10)wx=wx_code[i]; elsecount=0; } elsewx=wx_code[i]; delay (2); wx=0xff; } } voidclock() { if(sec==60){sec=0;min++;} if(min==60){min=0;hour++;} if(hour==24)hour=0; xshc[0]=sec%10; xshc[1]=sec/10; xshc[3]=min%10; xshc[4]=min/10; xshc[6]=hour%10; xshc[7]=hour/10; } voidkeyscan() { if(key1==0) { while(key1==0)xianshi(); addr++; if(addr>=8){addr=0xff;LED=0xff;} } if(key2==0) { while(key2==0)xianshi(); switch(addr) { case0: sec++;if(sec==60)sec=0;break; case1: sec+=10;if(sec/10*10==60)sec=sec%10;break; case3: min++;if(min==60)min=0;break; case4: min+=10;if(min/10*10==60)min=min%10;break; case6: hour++;if(hour==24)hour=0;break; case7: hour+=10;if(hour/10==2&&hour%10>=4||hour/10==3)hour=hour%10;break; default: break; } } if(key3==0) { while(key3==0)xianshi(); switch(addr) { case0: sec--;if(sec==0xff)sec=59;break; case1: sec-=10;if(sec>=0xf0&&sec<=0xff)sec=50;break; case3: min--;if(min==0xff)min=59;break; case4: min-=0x0a;if(min>=0xf0&&sec<=0xff)min=50;break; case6: hour--;if(hour==0xff)hour=23;break; case7: hour--;if(hour>=252&&hour<=255)hour=23;break; default: break; } } if(key4==0) { while(~key4); TR0=~TR0; } } voidinit() { TMOD=0X01; EA=1; TH0=(65536-50000)/256; TL0=(65536-50000)%256; ET0=1; TR0=0; addr=0xff; } voidmain() { P0=0X00; P2=0XFF; init(); while (1) { keyscan(); clock(); xianshi(); } } voidet0()interrupt1 { TR0=0; TH0=(65536-50000)/256; TL0=(65536-50000)%256; tt++; if(tt==20) { tt=0; sec++; if(sec<=6&&sec>=0&&min==0) { led=~led; } } TR0=1; } 4、画出每个源程序配套的流程图(好的流程图反映了编程的逻辑思路清晰); 5、思考与提高,相关补充关键的知识点归纳(自学收获小结,找出自己所学的知识点中不足的部分);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 整理 单片机 实验 报告 参考 模板 0526
![提示](https://static.bdocx.com/images/bang_tan.gif)