MC9S12G128 内部flash与eeprom的读写配置

MC9S12G128  的IOC有两种模式,

第一种是使用定时器累加的方式对捕获输入(只有ioc7可以实现这个功能),

第二种是对应引脚一有捕获就立即产生中断手动记数(所有的ioc引脚都可以实现这个功能)


第一种 自动累加(只有ioc7可以实现这个功能)

static void IOC_Init(void)
{   
    PACTL=0X50;// 使能累加器让
    TCTL3=0x80;TCTL4=0x00;//设定引脚捕捉何种类型的情况,有上升沿下降沿,还有一起。
    TIE_C7I  =0;//禁止ioc7中断
    TIOS_IOS7 =0;//设定ioc7为输入捕获
    TSCR1_TEN=1;//打开定时器模块 

设定完毕后只要去读取PACNT寄存器就可以得到累加器里面的值。

第二种 中断手动记数(所有的ioc引脚都可以实现这个功能)

void IOC_Init(void)
{  
  TSCR1_TEN=0;//关闭定时器模块
  TIOS_IOS6 =0;//设置ioc6为输入
  TCTL3_EDG6A = 0;//设置ioc6为输入捕获
  TCTL3_EDG6B = 1;//设置ioc6为输入捕获  
  TIE_C6I=1;///使能中断
  TSCR1_TEN=1;//打开定时器模块  
}  


#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt VectorNumber_Vtimch6 OSC_ISR(void)
{
   DisableInterrupts; 
  
     TFLG1_C6F=1;//清除中断标志位。
    
    
    EnableInterrupts;
}
#pragma CODE_SEG DEFAULT

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值