//-------------------------------------------------------------------------------------------------
// 主循环
//-------------------------------------------------------------------------------------------------
int main(void)
{
printf("\r\nmain() function.\r\n");
ls1x_drv_init(); /* Initialize device drivers */
ls1b_set_gpio_regs();
key_init();int i=0;
/*
* 裸机主循环
*/
for (;;)
{
if(gpio_read(KEY)==0)
{
delay_ms(10);
if(gpio_read(KEY)==0)
{
while(gpio_read(KEY)==0);
gpio_write(2, i=!i);
}
}
#if 0
{
tickcount = get_clock_ticks();
printf("tick count = %i\r\n", tickcount);
delay_ms(500);
}
#endif
}
/*
* Never goto here!
*/
return 0;
}
/*
* key.h
*
* created: 2022/6/7
* author:
*/
#ifndef _KEY_H
#define _KEY_H
#include "ls1b_gpio.h"
#define KEY 3
void key_init(void);
void ls1b_set_gpio_regs(void);
#endif // _KEY_H
/*
* key.c
*
* created: 2022/6/7
* author:
*/
#include "key.h"
#include "ls1b_gpio.h"
void ls1b_set_gpio_regs(void)
{
gpio_enable(2, DIR_OUT); // Pin: PWM2
gpio_write(2, 0);
}
void key_init(void)
{
gpio_enable(3, DIR_IN); // Pin: PWM2
}
本文详细介绍了如何在龙芯1B200嵌入式硬件上通过按键控制LED灯的工作原理与实现步骤,涵盖了硬件接口连接、驱动编写及实际操作过程。
2206

被折叠的 条评论
为什么被折叠?



