EVB_MX+ TencentOS tiny物联网开发板上手脱坑指南(二、点灯智慧路灯)

 建议点灯前先完成 EVB_MX+ TencentOS tiny物联网开发板上手脱坑指南(一、设备上报数据/下发控制指令)开发


一、添加函数,配置引脚

打开TencentOS-tiny-master\board\TencentOS_tiny_EVB_MX_Plus\BSP\Hardware文件夹,新建一个E53_SC1文件夹

 二、在文件夹中添加E53_SC1.c及E53_SC1.h

E53_SC1.c参考代码

#include "E53_SC1.h"
#include "stm32l4xx.h"
#include "stm32l4xx_it.h"
#include "main.h"


/***************************************************************
* 函数名称: Init_LED
* 说    明: 初始化E53_SC1的LED灯
* 参    数: 无
* 返 回 值: 无
***************************************************************/
void Init_LED(void)
{
	GPIO_InitTypeDef GPIO_InitStruct;

	/* GPIO Ports Clock Enable */
	SC1_LED_GPIO_CLK_ENABLE();

	/*Configure GPIO pin Output Level */
	HAL_GPIO_WritePin(SC1_LED_GPIO_Port, SC1_LED_Pin, GPIO_PIN_RESET);

	/*Configure GPIO pin : PtPin */
	GPIO_InitStruct.Pin = SC1_LED_Pin;
	GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
	GPIO_InitStruct.Pull = GPIO_NOPULL;
	GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
	HAL_GPIO_Init(SC1_LED_GPIO_Port, &GPIO_InitStruct);
}

E53_SC1.h参考代码

#ifndef __E53_SC1_H__
#define __E53_SC1_H__

/* 包含头文件 ----------------------------------------------------------------*/
#include "stm32l4xx_hal.h"

/* 控制设备IO口定义 ------------------------------------------------------------*/
#define SC1_LED_Pin GPIO_PIN_9
#define SC1_LED_GPIO_Port GPIOB
#define SC1_LED_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE()

void Init_LED(void);

#endif

三、在Keil工程Hardware文件夹中添加E53_SC1.c

四、添加路径

五、在board_init函数中进行引脚初始化

六、添加开关灯函数

HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_SET);

HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_RESET);

 七、编译下载测试

成功点灯智慧路灯,亮瞎#眼。

如有错误,欢迎指出,谢谢!

发布了18 篇原创文章 · 获赞 8 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_38053385/article/details/104072618
今日推荐