假设单片机的晶体振荡器的频率是12MHz,利用定时器1采用方式1定时20ms,计算出初值并写出整个

假设单片机的晶体振荡器的频率是12MHz,利用定时器1采用方式1定时20ms,计算出初值并写出整个定时器初始化程序,同时写出在P1.7脚上输出0.2秒的方波的完整程序(求... 假设单片机的晶体振荡器的频率是12MHz,利用定时器1采用方式1定时20ms,计算出初值并写出整个定时器初始化程序,同时写出在P1.7脚上输出0.2秒的方波的完整程序(求答案) 展开
 我来答
百度网友7247a56
2016-01-20 · TA获得超过4616个赞
知道大有可为答主
回答量:1422
采纳率:92%
帮助的人:487万
展开全部

定时器的初值的计算如下:
在定时器模式下,计数器的计数脉冲来自于晶振脉冲的12分频信号,即对机器周期进行计数。若选择12M晶振,则定时器的计数频率为1MHZ。假设定时时间为T,机器周期为T1,即12/晶振频率。X为定时器初值。则 X=2^n-T/T1。方式0,n=13,方式1时,n=16,方式2和方式3,n=8

本题技术初值计算如下:

X=2^16-20*10^(-3)/(12/12*10^6)

   =65536-20000=45536=B1E0H

   

T1INTCOUNT DATA 30H;中断次数累加
ORG 0000H
    LJMP START
    ORG 001BH
    LJMP Timer1Interrupt
START:
    MOV SP,#60H
    LCALL InitTimer1
    MOV T1INTCOUNT,#0;
LOOP:
     LJMP LOOP
InitTimer1:
   MOV TMOD,#10H;控制字
    MOV TH1,#0B1H;初值高位
    MOV TL1,#0E0H;初值低位
    SETB EA
    SETB ET1
    SETB TR1
    RET
Timer1Interrupt:
    PUSH DPH
    PUSH DPL
    PUSH ACC
    MOV TH1,#0B1H
    MOV TL1,#0E0H
    INC T1INTCOUNT
    MOV A,T1INTCOUNT 
    CJNE A,#5, Timer1Interrupt_EXIT
    MOV T1INTCOUNT,#0
    CPL P1.7;在P1.7脚上输出周期为0.2秒的方波(高低电平各100ms)
Timer1Interrupt_EXIT:    
    POP ACC
    POP DPL
    POP DPH
    RETI
END

   

更多追问追答
追问
我要C语言
麻烦你了
朴蝶盈琬
2019-03-18 · TA获得超过3.5万个赞
知道小有建树答主
回答量:1.4万
采纳率:34%
帮助的人:984万
展开全部
1.全局中断没有开启,所有中断响应将不被执行!
2.定时器/计数器0设置定时时间20000us,却没有被使能!
*****************************************************/
#include
void
main(void)
{
P0=0x00;
P1=0x80;
P2=0x00;
P3=0x00;
TCON=0x40;
TMOD=0x11;
TH0=0xB1;
TL0=0xE0;
TH1=0xB1;
TL1=0xE0;
T2CON=0x00;
RCAP2H=0x00;
RCAP2L=0x00;
IP=0x00;
IE=0x08;
PCON=0x00;
SCON=0x00;
while(1)
{
//添加你的代码
}
}
void
T1Isr(void)
interrupt
3
{
static
unsigned
char
i=0;
TH1=0xB1;
TL1=0xE0;
i++;
if(i==10)
{
i=0;
P1=~P1;
}
//添加你的代码
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2016-01-20 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
51 单片机?
编程,用 C 语言,还是汇编语言?
更多追问追答
追问
C
帮我做下这题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式