分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

ONENET读取与控制麒麟座开发上LED状态

发布时间:2023-09-06 02:09责任编辑:熊小新关键词:暂无标签

硬件

麒麟座MINI开发板V1.4

嵌入式软件

OneNET_Demo_ESP8266_EDP_Led

工程修改内容

  1. led.c文件修改

    • 函数LED_Init,mini开发板LED所在GPIO为PB6、PB7、PB8、PB9

    • 函数LED_GetValue,mini开发板LED状态与IO口状态相反

/**
 * @brief ?LED指示灯初始化函数
**/
void LED_Init(void)
{
   GPIO_InitTypeDef GPIO_InitStructure;
   //PB9--对应开发板红色指示灯;PB8--对应开发板绿色指示灯;
???//PB7--对应开发板黄色指示灯;PB6---对应开发板蓝色指示灯
   RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9;
   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
   GPIO_Init(GPIOB, &GPIO_InitStructure);
}
?
/**
 * @brief ?获取LED的当前状态值
**/
void LED_GetValue(void)
{
???????if(GPIO_ReadOutputDataBit(GPIOB, GPIO_Pin_9))
???????{
???????????????red_value=0;
???????}
???????else
???????{
???????????????red_value=1;
???????}
???????if(GPIO_ReadOutputDataBit(GPIOB, GPIO_Pin_6))
???????{
???????????????blue_value=0;
???????}
???????else
???????{
???????????????blue_value=1;
???????}
???????if(GPIO_ReadOutputDataBit(GPIOB, GPIO_Pin_8))
???????{
???????????????green_value=0;
???????}
???????else
???????{
???????????????green_value=1;
???????}
???????if(GPIO_ReadOutputDataBit(GPIOB, GPIO_Pin_7)) ??????????????????????????????
???????{
???????????????yellow_value=0;
???????}
???????else
???????{
???????????????yellow_value=1;
???????}
}
?
  1. led.h文件修改

#define ?LED_RED_OFF       GPIO_SetBits(GPIOB,GPIO_Pin_9)
#define ?LED_GREEN_OFF     GPIO_SetBits(GPIOB,GPIO_Pin_8)
#define ?LED_YELLOW_OFF   ?GPIO_SetBits(GPIOB,GPIO_Pin_7)
#define ?LED_BLUE_OFF     ?GPIO_SetBits(GPIOB,GPIO_Pin_6)
?
#define ?LED_RED_ON       ?GPIO_ResetBits(GPIOB,GPIO_Pin_9)
#define ?LED_GREEN_ON     ?GPIO_ResetBits(GPIOB,GPIO_Pin_8)
#define ?LED_YELLOW_ON     GPIO_ResetBits(GPIOB,GPIO_Pin_7)
#define ?LED_BLUE_ON       GPIO_ResetBits(GPIOB,GPIO_Pin_6)
  1. ESP8266.h文件修改

#define   DEVICEID   "xxxxxx"
#define   APIKEY     "xxxxxxxxxxxxxxxxxx"
#define   CWJAP       "AT+CWJAP=\"xxxxxxxx\",\"xxxxxxx\"\r\n"

前两个宏定义OneNET平台相关,最后一个WIFI的SSID名称以及密码,这三个宏根据自己的需要修改

OneNET平台操作

  1. 设置GPIO状态

上述命令实现点亮blue led

  1. 读取GPIO状态

目前显示BLUE点亮,其他三个LED熄灭

参考

1. https://github.com/cm-heclouds/OneNET_demo_code_kylin/tree/master/OneNET_Demo_ESP8266_EDP_Led

2. https://github.com/cm-heclouds/OneNET_demo_code_kylin/blob/master/OneNET_Demo_User_Guide.pdf

ONENET读取与控制麒麟座开发上LED状态

原文地址:https://www.cnblogs.com/tony2ty/p/9463014.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved