首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]采用PLL提速后,A/D转换时间是怎样变化的规律

[求助]采用PLL提速后,A/D转换时间是怎样变化的规律

有两个问题:
1、我采用MC9S12DG128B的片子,晶振是16M的,内部总线频率为8M。通过PLL内部总线频率提升到24M,请问A/D转换时间是否会变为以前的1/3,由于不知道片子上A/D的具体工作原理所以提此问题

2、说明书上写RTI中断可以在固定的周期产硬件中断,请问如果用定时器不是也可以达到此种目的么,为什么又出来个RTI?或者说RTI中断是为了看门狗服务的?请问RTI的主要作用是什么

第二个问题很愚蠢,望高手海涵
谢谢版主指教
版主说可以产生很长的定时周期,那么它最长能有多长呢?

#include /* common defines and macros */
#include /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"

static int i;
void DelayNS(int dly)
{ int i;
for(;dly>0;dly--)
for(i=0;i<100;i++);
}

void MCU_init(void)
{
DDRB = 0xFF;
PORTB = 0x0F;

CRGINT =0X00;
RTICTL = 0X7F;
CRGFLG = 0X80;
CRGINT = 0X80;
}


void main(void) {
/* put your own code here */

MCU_init();

EnableInterrupts;

for(;;) {} /* wait forever */
/* please make sure that you never leave this function */
}


#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 7 RTIs1_Interrupt(void)
{

PORTB=i;
i++;
CRGFLG = 0X80;; /* Reset interrupt request flag */
}


以上程序是我根据你的那个程序改的,其中RTICTL寄存器设的值为0x7f,按照说明书上的说明,应该是晶振的16*2^16分频,我采用的是16M晶振,我算了算,中断周期大概在65ms左右,请问版主这是不是最大的中断周期了?还能更大么?
谢谢版主,但还是有问题,下面是我的程序,我定义了一个变量i,每次进入到RTI中断子程序中都加1,并且在PORTB口输出(我用的是清华的开发工具,PORTB口连着8个LED灯,可以清楚地看到PORTB寄存器的状态);我掐着秒表看了看,当i从0一直累加到255大概是用了17秒,也就是说进入了255次中断有了17秒,平均下来RTI的中断周期也就是66ms左右,但是RTICTL寄存器我设的值为0X7F,已经是最大了,可是也没有达到67.108864s,这是为什么呢?


#include /* common defines and macros */
#include /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"

static int i;

void MCU_init(void)
{
DDRB = 0xFF;
PORTB = 0x0F;

CRGINT =0X00;
RTICTL = 0X7F;
CRGFLG = 0X80;
CRGINT = 0X80;
}


void main(void) {
/* put your own code here */

MCU_init();

EnableInterrupts;

for(;;) {} /* wait forever */
/* please make sure that you never leave this function */
}


#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 7 RTIs1_Interrupt(void)
{

PORTB=i;
i++;
CRGFLG = 0X80;; /* Reset interrupt request flag */
}
谢谢版主指教
没有版主无私的奉献就没有我们这些菜鸟的进步:)
我用的是BDM下载,板子买回来后就把监控程序给擦了,没用监控程序下过
相互学习,共同进步:)
返回列表