#include <stdint.h>
#include <stdbool.h>
#include "inc/tm4c123gh6pm.h"
#include "inc/hw_memmap.h"
#include "inc/hw_types.h"
#include "driverlib/sysctl.h"
#include "driverlib/interrupt.h"
#include "driverlib/gpio.h"
#include "driverlib/timer.h"
void Timer0A_init(uint32_t fre);
void Timer0IntHandler(void);
void RGB_GPIO_Init(void);
uint16_t Timer0A_cnt = 0;
int main(void)
{
//5分频,使用PLL,外部晶振16M,system时钟源选择 main osc。系统时钟200/5 = 40 MHZ
SysCtlClockSet(SYSCTL_SYSDIV_5 | SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN);
RGB_GPIO_Init();
Timer0A_init(1000);
//让RGB led循环闪烁,1s转换一次
while(1)
{
if(Timer0A_cnt == 1000-1)
{
GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3, GPIO_PIN_1);
}
if(Timer0A_cnt == 2000-1)
{
GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3, GPIO_PIN_2);
}
if(Timer0A_cnt == 3000-1)