底层驱动
init.c
倍频 + 三个级联PWM(moto1 moto2 steer) + 串口中断 + 脉冲计数 + 外部中断(下降沿)
#include "All_includes.h"
/*
锁相环总线倍频至80MHz
fPLLCLK = 2 * fOSCCLK * (SYNR + 1) / (REFDV + 1)
*/
void initPLL(void){
SYNR = 0X09;
SYNR |= 0XC0;
REFDV = 0X01;
REFDV |= 0X80;
POSTDIV = 0X00;
asm nop;
asm nop;
asm nop;
while((CRGFLG & 0X08) ==0);
CLKSEL &= 0X7F;
CLKSEL |= 0X80;
}
//IO初始化 数据采集 拨码开关
void initIO(void) {
DDRA_DDRA0 = 1; //trigH
PORTA_PA0 = 0;
DDRA_DDRA1 = 1; //trigT
PORTA_PA1 = 0;
//设置H口0位的中断 //EchoH
DDRP_DDRP0 = 0; //P口0位:开关量输入 读数据!
PERP_PERP0 = 0; //P口0位