12MHZ定时器定时50毫秒的时间常数是多少
时间: 2024-06-07 13:07:23 浏览: 5
首先,我们需要计算出定时器的计数周期。对于一个12MHz的时钟,每个时钟周期为1/12MHz=0.0833us。因此,定时器的计数周期为:
50ms / 0.0833us = 600,120
因为定时器通常是16位的,所以最大计数值为65535。因此,我们需要将计数周期分成多个计数器周期,直到能够适应65535的最大计数值。计算方法如下:
600,120 / 65535 = 9... 30
因此,我们需要将定时器分为10个计数器周期,每个计数器周期包含65535个计数值,最后一个计数器周期包含30个计数值。因此,时间常数为:
10 * 65535 + 30 = 655,830
因此,如果将12MHz定时器定时50ms的时间常数设置为655,830,那么定时器将在50ms后溢出。
相关问题
12MHZ定时器定时50毫秒的时间常数
如果使用一个12MHz的时钟来实现一个定时器,那么定时50毫秒的时间常数可以通过以下步骤计算得出:
1. 计算时钟周期时间: $T_{clk}=\frac{1}{f_{clk}}=\frac{1}{12MHz}=83.33ns$
2. 计算定时器计数器初始值: $N=\frac{T_{delay}}{T_{clk}}=\frac{50ms}{83.33ns}=600,120$
3. 由于计数器是一个16位的寄存器,所以需要将初始值分解为高8位和低8位:
- 高8位:$N_{hi}=\lfloor \frac{N}{256} \rfloor=\lfloor \frac{600,120}{256} \rfloor=2,344$
- 低8位:$N_{lo}=N \mod 256=600,120 \mod 256=120$
4. 将计数器的初始值写入寄存器,启动计数器即可开始计时。
c51定时器设置五十毫秒
以下是设置C51定时器为50毫秒的示例代码:
```assembly
ORG 0H
MOV TMOD, #01H ; 设置定时器0为模式1
MOV TH0, #0FDH ; 设置定时器0的高8位为0xFD
MOV TL0, #0X20H ; 设置定时器0的低8位为0x20
SETB TR0 ; 启动定时器0
JMP $
ORG 0BH
CLR TR0 ; 关闭定时器0
SJMP $
```
上述代码中,使用了定时器0,并将其设置为模式1。同时,将定时器0的高8位设置为0xFD,低8位设置为0x20,这样定时器0的初值为0xFD20,转换为十进制即为64704。由于C51的时钟频率为12MHz,因此定时器0的计数速度为12MHz/12=1MHz,即每秒钟计数1百万次。因此,当定时器0计数到64704时,经过的时间为64704/1000000=0.064704秒,即64.704毫秒。因此,为了实现50毫秒的延时,需要调整定时器0的初值,使其计数到50毫秒对应的计数值。经过计算,50毫秒对应的计数值为60000,即0xEA60。因此,将定时器0的高8位设置为0xEA,低8位设置为0x60即可实现50毫秒的延时。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)