用以下模板例程可以加快调试速度,原因是一开始就配置PLL为50MHz<br /><br /><br />// 包含必要的头文件<br />#include <hw_types.h><br />#include <hw_memmap.h><br />#include <hw_sysctl.h><br />#include <hw_gpio.h><br />#include <sysctl.h><br />#include <gpio.h><br /><br />// 将较长的标识符定义成较短的形式<br />#define SysCtlPeriEnable SysCtlPeripheralEnable<br />#define SysCtlPeriDisable SysCtlPeripheralDisable<br />#define GPIOPinTypeIn GPIOPinTypeGPIOInput<br />#define GPIOPinTypeOut GPIOPinTypeGPIOOutput<br />#define GPIOPinTypeOD GPIOPinTypeGPIOOutputOD<br /><br />// 定义KEY<br />#define KEY_PERIPH SYSCTL_PERIPH_GPIOB<br />#define KEY_PORT GPIO_PORTB_BASE<br />#define KEY_PIN GPIO_PIN_5<br /><br />// 防止JTAG失效<br />void JTAG_Wait(void)<br />{<br /> SysCtlPeriEnable(KEY_PERIPH); // 使能KEY所在的GPIO端口<br /> GPIOPinTypeIn(KEY_PORT , KEY_PIN); // 设置KEY所在管脚为输入<br /><br /> if ( GPIOPinRead(KEY_PORT , KEY_PIN) == 0x00 ) // 如果复位时按下KEY,则进入<br /> {<br /> for (;;); // 死循环,以等待JTAG连接<br /> }<br /><br /> SysCtlPeriDisable(KEY_PERIPH); // 禁止KEY所在的GPIO端口<br />}<br /><br />// 系统初始化<br />void ClockInit(void)<br />{<br />/*<br /> SysCtlLDOSet(SYSCTL_LDO_2_50V); // 设置LDO输出电压<br /><br /> SysCtlClockSet(SYSCTL_USE_OSC | // 系统时钟设置,采用主振荡器<br /> SYSCTL_OSC_MAIN |<br /> SYSCTL_XTAL_6MHZ |<br /> SYSCTL_SYSDIV_1);<br />*/<br /><br /> SysCtlLDOSet(SYSCTL_LDO_2_75V); // 配置PLL前须将LDO电压设置为2.75V<br /><br /> SysCtlClockSet(SYSCTL_USE_PLL | // 系统时钟设置,采用PLL<br /> SYSCTL_OSC_MAIN | // 主振荡器<br /> SYSCTL_XTAL_6MHZ | // 外接6MHz晶振<br /> SYSCTL_SYSDIV_4); // 分频结果为50MHz<br />}<br /><br />// 主函数(程序入口)<br />int main(void)<br />{<br /> ClockInit(); // 系统初始化<br /> JTAG_Wait(); // 防止JTAG失效,重要!<br /><br /> for (;;)<br /> {<br /> }<br />}<br />
|