刚拿到板子准备调试的时候,发现没有丝毫的头绪,而且找不到K64F的数据手册(可以查看寄存器信息的那种,那位飞友能否给一份),只能找了一下以前论坛的程序。
但是发现程序的风格与KL26Z的几乎一模一样,只是少了许多库函数,所以在后面的学习中,我会借鉴以前调试KL26Z的经验来调试K64F。
下面是调试的第一个LED程序:- #include "MK64F12.h"
- #define LED0_ON GPIOB_PCOR |=(1<<21)
- #define LED0_OFF GPIOB_PSOR |=(1<<21)
- #define LED1_ON GPIOB_PCOR |=(1<<22)
- #define LED1_OFF GPIOB_PSOR |=(1<<22)
- #define LED2_ON GPIOE_PCOR |=(1<<26)
- #define LED2_OFF GPIOE_PSOR |=(1<<26)
- void Delay(void)
- {
- unsigned int i,j;
- for(j=2000;j>0;j--)
- for(i=1000;i>0;i--);
- }
- int main(void)
- {
- SIM_SCGC5 |= SIM_SCGC5_PORTB_MASK|SIM_SCGC5_PORTE_MASK;
- PORTB_PCR21 = PORT_PCR_MUX(1)| PORT_PCR_DSE_MASK;
- PORTB_PCR22 = PORT_PCR_MUX(1)| PORT_PCR_DSE_MASK;
- PORTE_PCR26 = PORT_PCR_MUX(1)| PORT_PCR_DSE_MASK;
- GPIOB_PDDR |= (1<<21);
- GPIOB_PDDR |= (1<<22);
- GPIOE_PDDR |= (1<<26);
- while(1)
- {
- LED0_ON;
- LED1_OFF;
- LED2_OFF;
- Delay();
- LED1_ON;
- LED2_OFF;
- LED0_OFF;
- Delay();
- LED2_ON;
- LED0_OFF;
- LED1_OFF;
- Delay();
- LED0_ON;
- LED1_ON;
- LED2_OFF;
- Delay();
- LED0_ON;
- LED1_OFF;
- LED2_ON;
- Delay();
- LED0_OFF;
- LED1_ON;
- LED2_ON;
- Delay();
- LED0_ON;
- LED1_ON;
- LED2_ON;
- Delay();
- }
- }
程序非常好理解,开启GPIO时钟,配置GPIO为输出,控制GPIO输出高低电平。

下面是实物:

|