单片机重点作业题答案整理(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文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219