2 qq 33114231 qq_33114231 于 2016.01.17 20:25 提问

飞思卡尔K60中的PIT的链模式下CHN寄存器的使用

void PIT_ISR()//中断函数
{
static uint32_t i = 0;
GPIO_ToggleBit(HW_GPIOE,7);//小灯亮灭指示进入中断
printf("enter interrupt is %d\r\n",i++);//记录进入中断次数
PIT->CHANNEL[2].TFLG |= PIT_TFLG_TIF_MASK; //中断标志位清零
}

int main(void)
{
static uint32_t fac_us = 0;
DelayInit();
/* 初始化PE6端口推完输出 /
GPIO_InitTypeDef GPIO_InitStruct1;
GPIO_InitStruct1.instance = HW_GPIOE;
GPIO_InitStruct1.pinx = 6;
GPIO_InitStruct1.mode = kGPIO_Mode_OPP;
GPIO_Init(&GPIO_InitStruct1);
/
初始化PE7端口推完输出 /
GPIO_InitTypeDef GPIO_InitStruct2;
GPIO_InitStruct1.instance = HW_GPIOE;
GPIO_InitStruct1.pinx = 7;
GPIO_InitStruct1.mode = kGPIO_Mode_OPP;
GPIO_Init(&GPIO_InitStruct2);
/
初始化串口UART0 */
UART_InitTypeDef UART_InitStruct1;
UART_InitStruct1.baudrate = 115200;
UART_InitStruct1.bitPerChar = kUART_8BitsPerChar;
UART_InitStruct1.instance = HW_UART0;
UART_InitStruct1.parityMode = kUART_ParityDisabled;
UART_Init(&UART_InitStruct1);

PORT_PinMuxConfig(HW_GPIOD,6,kPinAlt3);
PORT_PinMuxConfig(HW_GPIOD,7,kPinAlt3);

printf(" UART0 is ok\r\n");

SIM->SCGC6 |= SIM_SCGC6_PIT_MASK;//打开模块时钟
PIT->MCR &= ~PIT_MCR_MDIS_MASK; //打开模块
PIT->CHANNEL[2].TCTRL = PIT_TCTRL_TIE_MASK;/*打开中断同时清零其余寄存器*/
PIT->CHANNEL[2].TCTRL |= PIT_TCTRL_TEN_MASK;//PIT2定时器使能
PIT->CHANNEL[2].TCTRL |= PIT_TCTRL_CHN_MASK;//寄存器链模式开启
fac_us = GetClock(kBusClock);//读取总线频率
fac_us /= 1000000;
PIT->CHANNEL[2].LDVAL = fac_us*1000*1000;//中断周期1S
NVIC_EnableIRQ(PIT2_IRQn);//打开中断优先级

PIT->CHANNEL[1].TCTRL |= PIT_TCTRL_TEN_MASK;//PIT1定时器使能
PIT->CHANNEL[1].LDVAL = fac_us*1000*2000;//中断周期2S

PIT_CallbackInstall(HW_PIT_CH2,PIT_ISR); //中断回调函数

while(1)
{
GPIO_ToggleBit(HW_GPIOE,6);//小灯亮灭指示系统运行
DelayMs(500);
}
}

请问为什么CHN没有起左右,PIT2和PIT1寄存器没有
连在一起,中断的周期时间没有变,还是PIT2的中断周期,求解答求解答

1个回答

devmiao
devmiao   Ds   Rxr 2016.01.19 04:25
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
飞思卡尔K60 FTM模块详…
原文地址:FTM模块详解【二】">飞思卡尔K60 FTM模块详解【二】作者:杨家二少1.5.3 FTM功能详解 1.         FTM模块的时钟 FTM模块的核心是一个16位计数器,该计数器的时钟来源可设置(由FTMx_SC寄存器中的CLKS设置),可来自总线时钟(CLKS=01),也可来自MCG模块的MCGFFCLK,对时钟源可进行分频(由FTMx_SC寄存器中的PS设置)。 FTM模
【手把手教你做智能车】第五节-PIT定时器(上)
飞思卡尔智能车系列教学视频教程 手把手教你做智能车:第五节-PIT定时器(上) 视频教程观看地址:http://v.youku.com/v_show/id_XNzkwNTYyODA0.html 资料下载地址:http://pan.baidu.com/share/link?shareid=696385443&uk=523541335  * 淘宝店铺
飞思卡尔Kinetis芯片中NVIC模块的中断寄存器的介绍及其应用举例
NVIC模块的中断寄存器简介 嵌套式向量中断控制器(NVIC)是Cortex内核不可分割的一部分,它与CPU紧密结合,可对系统异常和外设中断进行控制。如图1所示,NVIC右端连接到各个外围模块,负责对外设中断进行处理;左端连接到内核,负责对内核系统异常进行处理。本文重点介绍NVIC对外围模块的中断控制。通常,在配置某个外围模块的中断功能时,除了需要设置此模块本身的寄存器中的中断使
轻松玩转K60--飞思卡尔
第二章:牛刀小试: RORT模块简介: K60的PORT模块是引脚控制和中断模块 具体的功能都是由PORT输出的,由32位寄存器配置。 port可以复用为GPIO,UART,ADC,SPI,SDHC,I^2C等这些功能 port还可以配置内部上拉下拉电阻(阻值一般在700欧姆,外部上拉和下拉电阻一般在10k和1M之间,上拉就是将不确定的信号通过一个电阻钳位在高电平!电阻同时起限流作用。下拉
对MC9S12XS128MAL中TIM、PIT、RTI的一点理解
最近看了一下飞思卡尔的MC9S12XS128MAL单片机,对其定时器这一块感觉很麻烦不像STM32那样直观,可以选择多种配置方式,XS128的这三个模块功能相互有重复功能,但又各有特点。看了好多网友的观点,现将自己对这三个模块的理解总结一下。         PIT模块,与I/O口没有物理连接,核心是两个定时器装载值,我的理解就是8为的用来分频,16位的用来计数,功能就是周期定时产生中断
飞思卡尔k60从零开始之PLL
K60 PLL配置过程,经验分享
飞思卡尔(三)测速测正反转(K60 欧姆龙500线编码器DMA测速)
众所周知,DMA模块在嵌入式开发中的运用是极其广泛和实用的,学会并合理的利用DMA,无疑在比赛中会是一个助力。DMA模块在智能车中既可以采集图像,也可以用测速。本文就是介绍一下DMA和怎样使用DMA模块对编码器进行测速。 简单地说,DMA是直接内存读取(Direct Memory Access),是计算机科学中的一种内存访问技术,DMA模块可以不占用CPU资源传输数据,可以大大提高程序运行速度,从而在智能车竞赛中提高车子对赛道的反应能力。DMA的运用不仅仅局限于智能车竞赛,在很多地方都是有益无害的。
飞思卡尔单片机PIT汇编编程(一)
飞思卡尔单片机(XS128系列)单片机汇编编程(一) 本人就是一个菜鸟,从菜鸟学习汇编编程;汇编也没想象中的复杂和难懂,细细品味还是挺有意思的。就当刷着玩吧,就学起了汇编(这一直是我的一大心病),慢慢学吧,就当了却了我的一个愿望。作为我的第一个汇编程序,仔细缕缕编写的过程。好了,废话不说了,开始正题。 手头上的资料:飞思卡尔单片机,调试器以及手册(欧了,就这三样),对了,下一个飞思卡尔单片机的
K60 CAN 过滤设置
如何只接收特定ID的CAN帧呢? 设置CANx_RXIMRn, 这是一个31bit的寄存器, 格式按照这个设置。 0表示不care 1表示carevoid CAN_SetRxFilterMask(uint32_t instance, uint32_t mb, uint32_t mask) { CANBase[instance]->MCR |= (CAN_MCR_FRZ_MASK
如何在Keil uVision5建立飞思卡尔K60开发板的工程
2017年12月5日 19:51 长太息以掩涕兮,哀吾生之多艰。整整用了四个小时才用uversion完完整整的创建并编译了一个工程,途中遇到了好多问题==,接下来先过一下整体步骤和具体遇到的困难。 先project-->newuversion project创建一个项目 右击该项目-->manager project items 添加system_MK60D10.c和startup_MK