手机版

单片机重点作业题答案整理(15)

发布时间:2021-06-07   来源:未知    
字号:

SETB EA SETB ET0 SETB TR0 SJMP $ END

C语言程序:

#include <reg51.h> //包含特殊功能寄存器库 sbit P1_0=P1^0; void main() {

TMOD=0x01;

TH0=0xFC;TL0=0x18; EA=1;ET0=1; TR0=1; while(1); }

void time0_int(void) interrupt 1 //中断服务程序 {

TH0=0xFC;TL0=0x18; P1_0=!P1_0; }

19. 8051系统中,已知振荡频率为12MHz,用定时/计数器T1,实现从P1.1产生周期为2s的方波。要求分别用汇编语言和C语言进行编程。

解:从P1.1产生2s的方波,应产生500ms的周期性的定时,定时到对P1.1取反就可实现。由于定时时间较长,一个定时/计数器T1不能直接实现,采用定时/计数器T1产生周期性为10ms的定时,然后用一个寄存器R2对10ms计数100次来实现。系统时钟为12MHZ,定时/计数器T1定时10ms,计数值N为10000,只能选方式1,方式控制字为00010000B(10H),初值X:

X=65536-10000=55536=1101100011110000B 则TH1=11011000B=D8H,TL1=11110000B=F0H。 定时/计数器T1采用中断处理方式。 汇编程序:

ORG 0000H LJMP MAIN

ORG 001BH LJMP INTT1

ORG 0100H

MAIN: MOV TMOD,#10H

MOV TH1,#0D8H MOV TL1,#0F0H MOV R2,#00H SETB EA SETB ET1 SETB TR1 SJMP $

INTT1: MOV TH1,#0D8H

MOV TL1,#0F0H INC R2

CJNE R2,#64H,NEXT

单片机重点作业题答案整理(15).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)