8051系统中,已知振荡频率为12MHz,用定时/计数器T1,实现从P1.1产生高电平宽度为10ms,低电平宽度为20ms的

8051系统中,已知振荡频率为12MHz,用定时/计数器T1,实现从P1.1产生高电平宽度为10ms,低电平宽度为20ms的矩形波,要求用汇编语言或者C语言编程

易算出10ms需要10000个机器周期,即2710H,20ms需要20000个机器周期,即4E20H
#include
void
T1ISR()
interrupt
3
{
static
bit
out;
out=!out;
if(out){
P1_1=1;
TH1=(0x10000-0x2710)/0x100;
TL1=(0x10000-0x2710)%0x100;
}else{
TH1=(0x10000-0x4e20)/0x100;
TL1=(0x10000-0x4e20)%0x100;
}
}
void
main()
{
TMOD=0x10;
TH1=(0x10000-0x2710)/0x100;
TL1=(0x10000-0x2710)%0x100;
EA=ET1=TR1=1;
while(1);
}
温馨提示:内容为网友见解,仅供参考
无其他回答

已知8051单片机的fosc=12MHz,用T1 定时,试编程由P1.2 和P1.3 引脚分别...
代码如下:第一个代码程序:ORG 0000H LJMP MAIN ORG 001BH JMP T1_INT ORG 0030HMAIN:MOV TMOD, #20HMOV TH1, #6MOV TL1, #6MOV IE, #88HSETB TR1MOV R7, #4SJMP $T1_INT:CPL P1.3DJNZ R7, T1_ENDCPL P1.2MOV R7, #4T1_END:RETI END 第二个500us程序:include <reg51.h...

单片机:若系统晶振频率是12MHZ,利用定时器\/计数器1定时1ms,在方式0下...
在单片机系统中,当晶振频率设定为12MHz时,理解定时器\/计数器1定时1毫秒(1ms)的设置至关重要。首先,我们来计算基本的机器周期:12MHz等于12000000赫兹,因此每个机器周期为12\/12MHz,即1微秒(us)。1毫秒等于1000个微秒,要让定时器\/计数器1定时1ms,我们需要确保计数在1000个机器周期后溢出以触发...

在8051的P1.0引脚上产生灯泡循环亮灭,使用定时器或计数器使用中断,系 ...
8051是12分频的单片机,一个机器周期就是1uS。定时器\/计数器数值每加1以就是一个机器周期(这里是1uS)。定时\/计数器T0或T1产生周期为10ms的方波,则定时器\/计数器T0定时时间为5mS。由于5mS = 5000uS 若T0或T1选择工作方式1(方式1的最大计数值为65536)则定时器初值为 T = 65536 - 5000 = ...

设振荡频率12MHz,如果用定时器\/计数器T0产生周期为100ms的方波,可以...
1、振荡频率12MHz,对于标准51单片机,指令周期为1MH。2、最好使用中断来实现这个功能,周期100ms,也即每50ms对输出引脚进行一次取反操作,初值可赋值为65536-50000=15536=3CB0H

单片机系统的晶振频率为12mhz,分别用软件延时方法和定时器\/计数器t1实...
参考吴鉴鹰吧里面的一篇文章:延时的使用方法,讲得比较详细

若8051的晶振频率为12MHZ,定时器\/计数器T0工作方式2(8位自动重新装载定 ...
1\/12×10的6次方=1us 方式2 ,1×2的8次方=256 计算初值设为x (256-x)×1×10的-6次方=100×10的-6次方 最后得x=9c 所以TH0=00 TH1=9C

已知时钟频率为12MHz,用定时计数器T0,工作方式1从P1.7输出周期为1ms连...
设初值为X 2^16-X=500us (因为周期为1ms) X=65036=FE0C(H)ORG 0000H SJMP MAIN ORG 0013H SJMP IPT0 MAIN: MOV SP,#60H MOV TL0,#0CH MOV TH0,#0FEH SET EA SET ET0 SET TR0 (不好意思这句我记不清了,你学过应该知道,开启中断三条语句,)HERE : SJM...

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

如果系统的晶振频率为12mhz,定时器\/计数器Tx(x=1)工作方式0,1,2时...
是8位自动重装初值计数器,最大计数值 =2^8 =256d, 最大延时时间 =256μs 晶振的频率为12MHz,机器周期 =12\/Fosc = 12\/(6x10^6Hz) =2μs 定时器\/计数器工作方式1,最大延时时间 =65536x2μs =131072μs 定时器\/计数器工作方式2,最大延时时间 =256x2μs =512μs ...

假定某单片机系统的晶振频率是12mhz,定时\/计数器1工作于定时方式1...
方式一的最大计数是2^16=65536;M=A-计数值=65536-40000=25536=63C0;所以TH1=63H,TL1=C0H.

相似回答