1、单片机上机操作测验题部分答案单片机上机操作测验题部分答案 作者: 日期: 1. 使得个发光二极管循环点亮,采用定时器方式0使得每个发光二极管点亮的时间为0.5s。#nclde#incudinri.h#define ucr nsgnd auchrT_cot=0;/定时中断oid oProc() intrp TH0=(8192-500)32; /恢复初值 TL0=(89-500)%2;if(+Tont=00)/0.5s移动一位 P0=_crol_(P,1); Tcou=0;/主函数void man() TMD0; H0=(892500)/32; /5ms定时 T0=(192500)%32; EA=
2、1; ET01; TR=;P0=0xfe; wile(1);2.完成下面电路所示的功能,K1,K2对应两个开关按键。P1口对应发光二极管的状态P10P.1P1.2P.3P1.1.51P.7K=,=010,=1K1=1,K2=1=1,2=1#nclude#dfine uint unsigned intdein ucar unsigned carik=P32;sit k2P33;/延时voi day(unt x) uchr i; whi(-x)for(0;i120;i+);/主函数oid main()while() if((k1=0)&(k2=0)) /K1、K2同时按下 P1=x0;del(0)
3、; elseif(k1=0)&(k=1)) /K按下,K不按 P1=0xcc; dlay(10); else if((1=1)&(k2=0) /K2按下,K1不按 P=0f; dly(10); else 1=0ff; deay(10); 3.在一个数码管上循环显示“H”“E” “” “L” “O” ,循环的时间为1。#includereg.h#defe uchunigned crefine unt unsgne tuhar odeab=xf6,0xf9,0xb,0xb8,xb;char _oun=;ucha i=1;void t0rc()interupt 1 H0=03c; TL0=0b0;
4、f(+T_cont=)P0=tai; i(i+1)%5; T_cut0; voi min()TMOD=; T=0x3c;TL0=0xb0; A=1; R0=; ET=1; P0tab0; 初始化P口wi(1);.在个数码管上分别显示自己学号的后六位数字。#lude#includ#defie uhar unsignedch#dfine u uigned ituchar odetb;/学号自己设置/延时voiddelay(unt x)char;wil(x-) fr(i=0;i100;i+);/主函数v main()uca ;hwi=0x1; 0tab;P2=0x0; eay(000); hile(
5、1) for(=1;6;+) we=we1; P0tak;/发送数字段码 P2=we;/发送位码 ly(0);5.做一个简易30的倒计时秒表,秒表的显示通过个发光二极管显示出来。#inudereg1.h#efin car nsige charviday1()uchr i; for(i=0;i10;+) TH1=03; L0b; T=; /启动T1 wile(!TF1); /判断T有无请求 TF10;oid min()uchar i; uchr t;TMO0x10;/选择1计时 hil(1) fr(i0;i0;i-) t(i/10)#define uint unie in#deine ucha
6、uninedcuchr cde tabcc,x30;sbit k1=P32;/延时oiddelay(uinx)uchr i; whe(-x) for(;i10;i+); oii0Proc() intrupt 0 1=0f0;/主函数vid ain() uchar j; A1; EX0=1;I0=1; hie() if(k1=1) /未按下 for(j=0;j2;+) P1=abj; del(50); 8.采用定时器方式使得个发光二极管按如下方式点亮,循环的时间为2sP.0P1.P1.2P.31.4.5P1.6P17#cude#defneucha unin har#dfin ntunsig in
7、ucr cdetb=0x0f,xf0,0xcc,0x0;ar _coun=0;cha i=1;void Prc() nterrupTH00x3; TL0=0b0; if(+T_cont=) P=tai;i=(+)%4; ount=; vi mai() TMO=1; T0=3c;TL=0b0; A1;TR0=;ET1;P0tab; /初始化0口 h();在一个数码管上循环显示“0” “1” “5” 3个数字,循环的时间为1。#icle#defineuhar unsignc#define it unsiged intuhar cde tabxb,0x8,0xe;uchar T_un0;uh i=1
8、;od intProc() iterpt 1 H0=0x3c;L0=0x;i(Tcout=10) P0=tai; i=(i+)%3; T_count0; void ai() TMOD1;T0=0x3c;TLxb0; E=1;TR0=;T0=1;P=t0; /初始化口hile(1);1.在个数码管上稳定显示出“” “C” “E” “P” 四个字符。incldeefie ha usigd char#defieuntunignd intvod delay(uitx)uhi;wie(x-) for(i=0;i#eine nt nsigne int#defne ucharnsgned charchar b=03f,0x6,0x5b,4f,0x6,6d,0x7,0x07,0x7f,0x6f;sit k1=32;bi=P3;uha T_count;uchar =;vid ay(it x)ucar i; wle(x-) or(i0;100;i);void tProc()nterrpt 1
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1