1. 11.0592mhz晶振定时1ms初值
频率是12M时,需计数的脉冲个数是1000因此定时器初值是(65536-1000)其中高8位代表的是有多少个256,低8位是不足256部分因此TH0=(65536-1000)/256=64536/256=252=0xFCTL0=(65536-1000)%256=64536%256=24=0x18如果晶振频率是11·0592M,可算出,计数脉冲个数是921个TH0=(65536-921)/256=252=0xFCTL0=(65536-921)%256=103=0x67知道原理就行,实际运用时,一可以用软件计算,二是可以直接写计算公式
2. 晶振频率6MHZ定时值10MS
初值 = 最大定时时间 - 定时时间
实例1
已知单片机的晶振是6Mhz,定时0.5ms,计算T0在方式1和方式2的初值。
(2)计算初值:计数值 = 定时时间/机器周期 = 500us/2us = 250
方式1初值 = 最大计数长 - 计数值 = 2^16 - 250 = 65286 = 0ff06H(TH0= 0ffH,TL0= 06H)
方式2初值 = 最大计数长 - 计数值 = 2^8 - 250 = 6 = 06H (TH0=TL0=06H)
3. 11.0592mhz晶振定时50ms
32MHz的这个晶振跟普通单片机的,比如说8051上用的11.0592Mhz晶振的作用是一样的,比如说提供时钟,提供晶振周期等。要运行CC2430是必须的。 32KHz这个晶振主要是在CC2430芯片,节点休眠时候起作用的。事实上你,你没有这个晶振,芯片也能正常工作。 如果楼主研究z-stack会发现,里面有一个配置文件,可以让芯片内部提供32kHz这个晶振的频率,而不需要外部焊接32KHz晶振,但是精度上肯定没有外接的高。
4. 11.0592m晶振定时10ms是多少
标准的51单片机晶振是1.2M-12M,一般由于一个机器周期是12个时钟周期,所以先12M时,一个机器周期是1US,好计算,而且速度相对是最高的(当然现在也有更高频率的单片机)。11.0592M是因为在进行通信时,12M频率进行串行通信不容易实现标准的波特率,比如9600,4800,而11.0592M计算时正好可以得到,因此在有通信接口的单片机中,一般选11.0592M。
5. 采用6mhz的晶振,定时1ms
不过大体来说,一条for循环大概8个机器周期,在12M晶振下,通常用以下代码实现1ms的延时:
void delayms(unsigned int ms){unsigned char i;
while(ms--){for(i = 0; i < 120; i++);}}大概算一下,120*8*1us=1ms,如果需要精确的定时,还是得用定时器。
6. 11.0592m晶振的时钟周期
如果是不涉及到时钟或者整个系统只有一个频率的话,一般这两种不同的晶振在一定场合能替换着用,感觉不出来
7. 12M晶振,定时30ms的定时器初值是多少?
(2^16—计数初值)╳晶振周期╳12=定时时间
(2^16—计数初值)╳1/(12╳10^6)╳12=10Ms=10*10^(-3)S
计数初值=2^16—10^4=55536=D8F0H
TH0=D8
TL0=F0
8. 11.0592m晶振定时1ms是多少
1、系统晶振频率是12M,则机器周期=12/12=1us;
2、定时1ms=1*1000=1000us;
3、工作在方式0下:最大计数值是2^13=8192;
4、定时初值=8192-(1*1000)=7192;
5、换算成十六进制数为:定时初值=1C18H。
定时器中断是由单片机中的定时器溢出引起的中断,51单片机中有两个定时器t0和t1。
定时/计数器t0和t1由两个8位专用寄存器组成,即定时/计数器t0由th0和tl0组成,t1由th1和tl1组成。
此外,还有两个8位特殊功能寄存器tmod和tcon。tmod负责控制和确定t0和t1的功能和工作模式。tcon用于控制t0和t1的开始或停止计数,以及定时/计数器的状态。
9. 采用12mhz的晶振,定时1ms
void delay(unsigned int x) //延时 x ms
{
unsigned int i,j;
for(i=x;i>0;i--)
for(j=110;j>0;j--);
}
延时1ms 即为使x=1;
这程序延时约1ms(x=1时用keil测出来约 0.96831272ms,近似1ms),用C语言很难做到准确的1ms。注意晶振为11.0592MHZ的时候用~ 晶振为12MHZ时 把 i=120 近似值1ms