【Telink-泰凌微电子 B91通用开发套件】点灯篇
泰凌微电子
1639 人阅读
|
0 人回复
|
2022-11-03
TA的每日心情 | 开心 2025-8-15 21:04 |
|---|
签到天数: 730 天 连续签到: 1 天 [LV.9]以坛为家II
翰林
- 积分
- 23626
|
本帖最后由 meiyao 于 2022-11-3 23:32 编辑
玩灯我是认真的:
先上原理图,灯与MCU的连接方式。
LED灯1 2 3 4是通过J34这个座子,19P 21P 23P 25P通过跳帽连接到MCU的PB4 5 6 7,也就是MCU的11脚-14脚。
怕看不清楚,后面来了一张稍微清楚点的。
这里点亮灯的代码:
static inline void gpio_set_high_level(gpio_pin_e pin)
{
unsigned char bit = pin & 0xff;
BM_SET(reg_gpio_out(pin), bit);
}
下面灯脚位的定义:
#if(MCU_CORE_B91)
#define LED1 GPIO_PB4
#define LED2 GPIO_PB5
#define LED3 GPIO_PB6
#define LED4 GPIO_PB7
下面的是启用GPIO:
static inline void gpio_function_en(gpio_pin_e pin)
{
unsigned char bit = pin & 0xff;
BM_SET(reg_gpio_func(pin), bit);
}
引脚输出:
static inline void gpio_output_en(gpio_pin_e pin)
{
unsigned char bit = pin & 0xff;
BM_CLR(reg_gpio_oen(pin), bit);
}
下面来个点亮LED2,太多了效果不好看,只点一个。
gpio_set_high_level(LED2);
再来一个流水灯:
gpio_toggle(LED1);
delay_ms(500);
gpio_toggle(LED2);
delay_ms(500);
gpio_toggle(LED3);
delay_ms(500);
gpio_toggle(LED4);
delay_ms(500);
这个TOGGLE是翻转。
今天晚上就到这,明天继续。。。。。。。。。。。
|
|
|
|
|
|
|
|
|