⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hardware.h

📁 飞思卡尔智能汽车控制程序框架
💻 H
字号:
//锁相环初始化
//------------------------------------------------------------------------------ 
void crg_init(void)
{  SYNR = 0X02;
   REFDV = 0X01;
  while((CRGFLG & 0x08)==0 );    // wait for PLL clock stabilization
  CLKSEL|=0x80;           // select PLL clock.
}
//PWM 初始化
//------------------------------------------------------------------------------ 
void pwm_init (void) 
{ 
   PWME = 0Xa8;       //通道45、23、67 输出
   PWMCTL = 0Xe8;    //45、23、67级联且冻结模式下计数器停止
   PWMPOL = 0Xfc;     //45、23、67输出高电平 
   PWMCLK = 0X30;     //45、23选择时钟SA,67选择时钟SB
   PWMPRCLK = 0X11;    //A、B时钟都选24/2=12M
   PWMSCLA = 0X01;    //SA、SB都选时钟6M
   PWMSCLB = 0X01;
   PWMCNT45 = 0X00;   //计数寄存器设置
   PWMCNT23 = 0X00;
   PWMCNT67 = 0X00; 
   PWMCAE = 0X00;     //波形左对齐输出
   PWMPER67 = 10000;  //F=6M*1000=600hz
   PWMPER23 = 10000; 
   PWMPER45 = 60000;  //T=(1/6M)*60000=10ms 
    
}
//---------------------------atd 初始化--------------------------------------- 
void atd_init(void)
{  
  ATD0CTL2=0xC0; 
  ATD1CTL2=0xC0; 
  ATD0CTL3=0x02; 
  ATD1CTL3=0x02; 
  ATD0CTL4=0x8a;  
  ATD1CTL4=0x8a; 
  ATD0CTL5=0xB0; 
  ATD1CTL5=0xB0; 

}

//-------ect初始化-------------------------------------------
void ect_init(void)          //记数初始化
{
   MCCTL=0xCF;      //16位模数计数器控制寄存器 16分频 
   MCFLG=0x80;      // 模数计数器溢出中断标志                                        
   MCCNT=30000;     //load the value for timer 模减计数器清零
   TCTL4=0x01;    //定时器控制寄存器的设定 捕捉上升沿
   TIOS_IOS0=0;  //0通道为输入捕捉
   PBCTL=0x40;    //16位脉冲累加器B控制寄存器 脉冲累加器B允许  
   PACN10=0;   //
}
//------------------------------------------------------------------------------ 
void system_init() 
{
   crg_init();
   atd_init();
   pwm_init();
   ect_init();
   PWMDTY67 = 0; 
   PWMDTY23 = 0;
   PWMDTY45 = 13000;
}
//------------------------------------------------------------------------------ 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -