最简单的程序了,虽然是修改光盘的测试代码,但是程序的基本架构已经清楚。
- #include "includes.h"
- void myDelay (INT32U ulTime)
- {
- INT32U i;
- i = 0;
- while (ulTime--) {
- for (i = 0; i < 5000; i++);
- }
- }
- int main (void)
- {
- SystemCoreClockUpdate();
- SIM_SCGC5 |= (SIM_SCGC5_PORTA_MASK
- | SIM_SCGC5_PORTB_MASK
- | SIM_SCGC5_PORTC_MASK
- | SIM_SCGC5_PORTD_MASK
- | SIM_SCGC5_PORTE_MASK );
- PORT_ENABLE_CLK(MKL_PORTB); /* ʹÄÜPORTʱÖÓ */
- PORT_ENABLE_CLK(MKL_PORTD);
- IO_FUN_SEL(MKL_PORTB,18,1); /* IO¹¦ÄÜÑ¡Ôñ */
- IO_FUN_SEL(MKL_PORTB,19,1);
- IO_FUN_SEL(MKL_PORTD,1,1);
- GPIO_DDR_OUTPUT(MKL_PORTB,18); /* IOÉèÖÃΪÊä³öģʽ */
- GPIO_DDR_OUTPUT(MKL_PORTB,19);
- GPIO_DDR_OUTPUT(MKL_PORTD,1);
- GPIO_SET(MKL_PORTB,18); /* IOÉèÖÃΪ¸ßµçƽ£¬LEDϨÃð */
- GPIO_SET(MKL_PORTB,19);
- GPIO_SET(MKL_PORTD,1);
- while(1){ /* ²»¶Ï·×ªIO£¬LEDÉÁ˸ */
- GPIO_TOGGLE(MKL_PORTD,1);
- myDelay(300);
- GPIO_TOGGLE(MKL_PORTB,19);
- myDelay(300);
- GPIO_TOGGLE(MKL_PORTB,18);
- myDelay(300);
- }
- }
程序就改了一下流水灯方向和闪烁时间。
|