-
- #include <stdio.h>
- #include "NUC1xx.h"
- #include "DrvGPIO.h"
- #include "DrvSYS.h"
- void Sys_Init()
- {
- UNLOCKREG();
- SYSCLK->WRCON.XTL12M_EN = 1;//设定12M外部晶振
- DrvSYS_Delay(5000);//等待时钟就绪
- }
- int main (void)
- {
- int i=2;
- Sys_Init();
- DrvGPIO_Open(E_GPA,2, E_IO_OUTPUT);
- DrvGPIO_Open(E_GPA,3, E_IO_OUTPUT);
- DrvGPIO_Open(E_GPA,4, E_IO_OUTPUT);
- DrvGPIO_Open(E_GPA,5, E_IO_OUTPUT);
- DrvGPIO_Open(E_GPB,14,E_IO_INPUT);
- DrvGPIO_Open(E_GPB,14,E_IO_INPUT);
- while(1)
- {
- if(DrvGPIO_GetBit(E_GPB,14)==0|DrvGPIO_GetBit(E_GPB,15)==0)
- {
- if(DrvGPIO_GetBit(E_GPB,14)==0)
- {
- DrvSYS_Delay(10000);
- if(DrvGPIO_GetBit(E_GPB,14)==1)
- {
- i++;
- DrvGPIO_SetBit(E_GPA,i-1);
- if(i>5) i=2;
- DrvGPIO_ClrBit(E_GPA,i);
- }
- }
- if(DrvGPIO_GetBit(E_GPB,15)==0)
- {
- DrvSYS_Delay(10000);
- if(DrvGPIO_GetBit(E_GPB,15)==1)
- {
- i--;
- DrvGPIO_SetBit(E_GPA,i+1);
- if(i<2) i=5;
- DrvGPIO_ClrBit(E_GPA,i);
- }
- }
- }
- }
- }