微控制器作业答案.doc

上传人:wt****50 文档编号:32652949 上传时间:2018-02-12 格式:DOC 页数:13 大小:52.50KB
返回 下载 相关 举报
微控制器作业答案.doc_第1页
第1页 / 共13页
微控制器作业答案.doc_第2页
第2页 / 共13页
微控制器作业答案.doc_第3页
第3页 / 共13页
微控制器作业答案.doc_第4页
第4页 / 共13页
微控制器作业答案.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《微控制器作业答案.doc》由会员分享,可在线阅读,更多相关《微控制器作业答案.doc(13页珍藏版)》请在金锄头文库上搜索。

1、微控制器作业(第四章)4.5、试用 C51 语言编写将 0-9,A-F 转换成相应的 ASC2 码的程序。答:程序段如下:#include#include void main()unsigned char ch;scanf(%c, if(9=ch=0|F=ch=A)printf(%d.n,ch);return 0;4.11、用 C51 语言和汇编语 言混合编程的方法,使 单 片机的 P1.0 引脚产生占空比为 90%周期为 10ms 的方波。答:程序如下:C 程序文件:#include#define uchar unsigned charsbit P1_0=P11;extern delay1m

2、s(unchar x); /外部函数 delay1ms()声明,入口参数为 xmain()for(;)P1_0=1;delay1ms(9); /调用外部函数 delay1ms(9),参数 9 送入寄存器R7P1_0=0;delay1ms(1);void delay1ms()#pragma asmpublic_delay1ms /用 public 声明_delay1ms 为其他函数调用,以_开头 后跟函数名de segment code /定义 de 段在定义函数段rseg de /定义 de 为当前段_delay1ms:nopdela:mov r1,#0f8hlop1:nopnopdjnz r

3、1,lop1djnz r7,delaretend#pragma endasm微控制器作业(第六章)6.2、设计一个声光报警器,设备正常运行时,绿色指示灯亮,若设备非正常运行时,红灯闪烁、报警器持续发声报警。答:#include#includedefine red p10 /红灯输入define green p11 /绿灯 输入void delay(viod);main()IT0=0;/外中断 0 电平触发方式 EA=1;/开放 CPU 中断允许EX0=1;/设置外中断 0 中断允许PX0=0;/中断系统只有一个中断源, 设置为 低中断优先级while(1)bingbing=1;/蜂鸣器三极管截

4、止,不叫;green=0;/绿灯亮void delay1s()#pragma asmMOV R7,#1000DEL:MOV R6,#500DJNZ R6,$DJNZ R7.DEL#pragma endasmExtern () interrupt 0 bingbing=0;/使蜂鸣器持 续发声green=1;/绿灯灭red=0;/使红灯亮delay1s();red=1;/红灯灭Define bingbing p12 /蜂鸣器输入6.3、简述 AT89S 系列单片机内部中断源,并指出各中断源中断服务程序入口地址。答:特殊功能寄存器 TCON 中与中断相关的有, TF0 和 TF1 两位。TF0:定

5、 时/计数器 T0 计数溢出中断标志位。TF1:定 时/计数器 T1 计数溢出中断标志位。89S52 内部中断源除了 T0 和 T1 外,还有定时/计数器 T2 和串行口中断。定时/计数器 T2 中断:定时/计数器 T2 的计数溢出标志位 TF2 为“1” ,或者 T2 的外部中断标志位 EXF2 为“1”,作为有效中断请求,向 CPU 请求中断。串行口中断:串行口的接受中断标志 RI(SCON.0)和发送中断标志 TI(SCON.1)逻辑或以后作为内部的一个中断源。6.4、设计一个外部事件中断计数器,使用外中断 0 的边缘触发方式, 对外部发生的中断事件进行计数。答: #includeUns

6、igned char i=0;Main()IT0=1;/外中断 0 边沿触发方式EA=1;/开放 CPU 中断允许EX0=1;/设置外中断 0 中断允许PX0=0;/中断系统只有一个中断源, 设置为低中断 优先级Extern () interrupt 0 i+;6.6、单片机系统使用 12MHz 的晶振,使用定时/计 数器 T0 产生 250us 的定时,使 P3.4 输出周期 为 1s 的方波,试编写主程序和 T0 中断服务程序。答:计数初值为 65536-250=65286=FF06H;即计数器中 TL0 的初值为 06H。TH0的初值为 FFH。#includeSbit p3_4=p34

7、;Unsigned char a=2000;Main()TH0=0x06;TL0=0xFF;TMOD=0x01;/T0 工作在方式 1IE=0x81;/允 许 T0 向 CPU 申请中断TR0=1;/启动 T0 开始计数While(1);Timer () interrupt 1TH0=0x06;TL0=0xFF;/重赋计数初值a-;if(a=0)a=2000;p3_4= p3_4;6.10、单片机系统晶振为 11.0592MHz,串行口工作于方式 1,波特率为4800bit/s,从串行口 输出字符 “AT89S52 Micro Computer”。试分别用查询方式和中断方式编写程序。答:查询方

8、式:#include unsigned char a = “AT89S52 Micro Computer0”;unsigned char i = 0;main()TMOD = 0x20; /定时器 T1 工作于方式 2TH1 = 0xFA;TL0 = 0xFA; /波特率 4800SCON = 0x40; /串行口工作于 发送方式TR1 = 1;TI = 1; /便于实现循环发送数据while(ai != 0)while(TI = 0);TI = 0;SBUF = ai;i+;中断方式:#include unsigned char a = “AT89S52 Micro Computer0”;u

9、nsigned char i = 0;main()TMOD = 0x20; /定时器 T1 工作于方式 2TH1 = 0xFA;TL0 = 0xFA; /波特率 4800SCON = 0x40; /串行口工作于 发送方式EA = 1;ES = 1; /打开串口中断TR1 = 1;TI = 1; /便于实现循环发送数据while(1);uart() interrupt 4 using 1if(TI = 1) /确认是发送中断while(ai != 0)TI = 0;SBUF = ai;i+;6.11、0#单片机以波特率 1200bit/s,从串行口 发送内部 RAM20H30H 单元的数据块,晶

10、振为 11.0592MHz,1#单片机从串行口接收数据,并将数据保存于其内部存储器中,试着编写程序。答:0#单片机程序如下:ORG 0000HLJMP MIANMIAN: MOV TMOD, #20H ;T1 工作于方式 2,定时MOV TH1, #0FDH ;波特率 9600MOV TL1, #0FDHMOV SCON, #40H ;工作于发送方式SETB TR0SETB TIMOV R0, #20HMOV R7, #10HWAIT: JNB TI, WAIT ;是否发送完毕CLR TIMOV A, R0MOV SUBF, AINC R0DJNZ R7, WAIT ;R7 减一循环,直到 2

11、0H30H 的内容发送完毕SJMP $END1#单片机程序如下:ORG 0000HLJMP MIANMIAN: MOV TMOD, #20H ;T1 工作于方式 2,定时MOV TH1, #0FDH ;波特率 9600MOV TL1, #0FDHMOV SCON, #50H ;工作于接收方式SETB TR0SETB RIMOV R0, #20HMOV R7, #10HWAIT: JNB RI, WAIT ;是否接收完毕CLR RIMOV A, SUBFMOV R0, AINC R0 DJNZ R7, WAIT ;R7 减一循环,直到内容接收完毕,全部存储于20H30H 单元SJMP $END附

12、加作业1、(例题 62 用 C51 编写)编程使得蜂鸣器响铃 10 次,每次响铃发出 250Hz 的声音,维持时间为 0.5s,静音 1s,单片机使用 12MHz 的晶振。答: #includeSbit p1_0=p10;Void delay2ms();Void delay1s();Void main()Unsigned char i,j;for(i=0;iSbit p1_0=p10;Unsigned char a=9;Main()TH0=0xD8;TL0=0xF0;TMOD=0x01;/T0 工作在方式 1IE=0x81;/允 许 T0 向 CPU 申请中断TR0=1;/启动 T0 开始计数While(1);Timer () interrupt 1For(a=9;a0;a)TH0=0xD8;TL0=0xF0;/重赋计数初值P1_0=0;if(a=0)TH0=0xD8;TL0=0xF0;/重赋计数初值P1_0=1;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 无线电电子学/电信技术

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号