助学板上的KEY2键在GPB的14脚,再查看原理图,接上拉电阻的,所以平时应是高电平。
这就好办那就查它何时低。低时点亮LED灯。高时再灭掉。
程序如下:
/*---------------------------------------------------------------------------------------------------------*/
/* */
/* Copyright(c) 2009 Nuvoton Technology Corp. All rights reserved. */
/* */
/*---------------------------------------------------------------------------------------------------------*/
#include <stdio.h>
#include "NUC1xx.h"
#include "DrvGPIO.h"
#include "DrvUART.h"
#include "DrvSYS.h"
int32_t ddd;
/*---------------------------------------------------------------------------------------------------------*/
/* MAIN function */
/*---------------------------------------------------------------------------------------------------------*/
int main (void)
{
UNLOCKREG();
SYSCLK->PWRCON.XTL12M_EN = 1;
DrvSYS_Delay(5000);
DrvGPIO_Open(E_GPB, 10, E_IO_OUTPUT); // 设置GPB10端口为输出模式
DrvGPIO_ClrBit(E_GPB, 10); // 清GPB10端口 蜂鸣器不叫唤
DrvGPIO_Open(E_GPB,14,E_IO_INPUT); //设置GPB14为输入,就是KEY2
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);
ddd = DrvGPIO_GetBit(E_GPB,14);
while(1)
{
ddd = DrvGPIO_GetBit(E_GPB,14);
if(!ddd)
{
DrvGPIO_SetPortBits(E_GPA,0xC3);
}
else
{
DrvGPIO_SetPortBits(E_GPA,0xFF);
}
}
}
工程如下:
NUC testGPIO.rar
(985.66 KB)
|