#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/gpio.h"
#define uchar unsigned char
#define uint unsigned int
uint8_t ui8PinData=2;
void delay_Nms(uint n)
{
uint i = 0;
for(i = n;i > 0;i--)
SysCtlDelay(SysCtlClockGet() / 3000);
}
int main(void)
{
SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN);
//5分頻,使用PLL,外部晶振16M,system時鐘源選擇 main osc。系統(tǒng)時鐘40MHZ
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);//使能GPIO外設
GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3);
//GPIO掛APB總線;輸出1,2,3引腳
while(1)
{
GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3, ui8PinData);
//GPIO1,2,3位寫入2
delay_Nms(100);//延時
//delay_Nnop(1);
GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3, 0x00);
//GPIO1,2,3位寫入0
delay_Nms(1000);
//delay_Nnop(1);
if(ui8PinData==8) {ui8PinData=2;} else {ui8PinData=ui8PinData*2;}
//3種顏色循壞亮滅,2紅,4藍,8綠,代表三種顏色
//三燈同時點亮,白光
}
}
|