板上有给用户按键,这个地球人都知道,于是我就想按一下打印一个按了的字符串。
经查原理图,按键在第29脚,P6.2
于是我就照例程,定义了BOTTOM 为GET(6,2)
但我用判断语句 if(BOTTOM == 0)确并不好用,这个闷了很长时间,一 次偶然的机会,发现应读一下管脚,
于是就好用了,我用C时经常这么做,也好用。但这里不是这样。到哪里得符合哪里的规矩。
程序如下:
#include <rtthread.h>
#include <rtdevice.h>
#include "drv_gpio.h"
#define LED_PIN GET_PIN(0, 0)
#define BOTTOM GET_PIN(6,2)
int main(void)
{
rt_pin_mode(BOTTOM,PIN_MODE_INPUT_PULLUP);
rt_pin_mode(LED_PIN, PIN_MODE_OUTPUT);
rt_kprintf("Hello eeworld!!!");
for (;;)
{
rt_pin_write(LED_PIN, PIN_HIGH);
rt_thread_mdelay(500);
rt_pin_write(LED_PIN, PIN_LOW);
rt_thread_mdelay(500);
if(rt_pin_read(BOTTOM) == 0)
{
rt_kprintf("pressing....");
while(rt_pin_read(BOTTOM));
}
}
}
但我实际跑起来不太灵敏,我觉得是延时没有调好。