本文来源电子发烧友社区,作者:华仔stm32, 帖子地址:https://bbs.elecfans.com/jishu_2283601_1_1.html
【目的】学习控制GPIO电平的高低,点亮交通灯板上的三个灯。
1、新建工程:
在Hispark目录下新建一个文件夹,把HiHope_WiFi-IoT_Hi3861SPC024 SDK的所有文件复制到这个文件夹下:
2.打开 LiteOS Studio,点击文件->打开文件夹,选择 led_control_demo 文件夹,打开后,工程栏显示如下图所示。
3.在 led_control_demoappdemoinitapp_io_init.c 文件里,app_io_init(hi_void)函数里对 GPIO 10 、11、12进行初始化。GPIO 10 、11、12初始化如下图所:
4.初始化完成后,在 led_control_demoappdemosrc 目录下鼠标右键选择新建文件,新建app_demo_led_control.c 文件,文件如下:(我建议第一次写的同学,不要直接复制,最好自己录一遍,这样对liteos加深印象)。
复制代码
5、函数编写完成后,在程序入口 app_main.c 文件中 app_main 函数里调用 app_demo_led_control_task()函数。实现控制红色 LED 闪烁。具体代码实现如下:
复制代码
6、编译烧录编译前需要在 LiteOS Stduio->工程配置->组件配置->Third Party library 选项中勾选掉 MQTT support并点击确认。其他编译下载烧录步骤可以参考目录第 1.2.5 节运行第一个例程序 Hello world。配置界面如下图所示。
7、下载设置:
8、下载后成功后,重启开发板就可以看到交通灯交替闪烁了。
【目的】学习控制GPIO电平的高低,点亮交通灯板上的三个灯。
1、新建工程:
在Hispark目录下新建一个文件夹,把HiHope_WiFi-IoT_Hi3861SPC024 SDK的所有文件复制到这个文件夹下:
2.打开 LiteOS Studio,点击文件->打开文件夹,选择 led_control_demo 文件夹,打开后,工程栏显示如下图所示。
3.在 led_control_demoappdemoinitapp_io_init.c 文件里,app_io_init(hi_void)函数里对 GPIO 10 、11、12进行初始化。GPIO 10 、11、12初始化如下图所:
4.初始化完成后,在 led_control_demoappdemosrc 目录下鼠标右键选择新建文件,新建app_demo_led_control.c 文件,文件如下:(我建议第一次写的同学,不要直接复制,最好自己录一遍,这样对liteos加深印象)。
- #include
- #include
- #include
- #includetime.h>
- #include
- #include
- #define LED_LIGHT_DELAY_500MS (500*1000)
- #define hi_unuse_param(p)((p) = (p))
- #define LED_CONTROL_TASK_SLEEP_20MS (20)
- #define LED_CONTROL_TASK_SIZE (1024)
- #define LED_CONTROL_TASK_PRIO (28)
- hi_u32 g_led_control_id;
- hi_void led_control(hi_void)
- {
- hi_gpio_set_ouput_val(HI_GPIO_IDX_10, HI_GPIO_VALUE1);
- hi_udelay(LED_LIGHT_DELAY_500MS);
- hi_gpio_set_ouput_val(HI_GPIO_IDX_10, HI_GPIO_VALUE0);
- hi_udelay(LED_LIGHT_DELAY_500MS);
- hi_gpio_set_ouput_val(HI_GPIO_IDX_12, HI_GPIO_VALUE1);
- hi_udelay(LED_LIGHT_DELAY_500MS);
- hi_gpio_set_ouput_val(HI_GPIO_IDX_12, HI_GPIO_VALUE0);
- hi_udelay(LED_LIGHT_DELAY_500MS);
- hi_gpio_set_ouput_val(HI_GPIO_IDX_11, HI_GPIO_VALUE1);
- hi_udelay(LED_LIGHT_DELAY_500MS);
- hi_gpio_set_ouput_val(HI_GPIO_IDX_11, HI_GPIO_VALUE0);
- hi_udelay(LED_LIGHT_DELAY_500MS);
- }
- /* 方法一 */
- hi_void app_demo_led_control(hi_void)
- {
- hi_watchdog_disable();
- for(;;){
- led_control();
- }
- }
- hi_void *led_control_demo(hi_void *param)
- {
- hi_u32 ret;
- hi_unuse_param(param);
- for (;;)
- {
- led_control();
- /* 释放CPU资源给其他任务使用 */
- hi_sleep(LED_CONTROL_TASK_SLEEP_20MS);
- }
- ret = hi_task_delete(g_led_control_id);
- if(ret != HI_ERR_SUCCESS){
- printf("Faile to delete led control demo taskrn");
- return HI_ERR_FAILURE;
- }
- return HI_ERR_SUCCESS;
- }
- hi_u32 app_demo_led_control_task(hi_void)
- {
- hi_u32 ret;
- hi_task_attr led_control_attr = {0};
- led_control_attr.stack_size = LED_CONTROL_TASK_SIZE;
- led_control_attr.task_prio = LED_CONTROL_TASK_PRIO;
- led_control_attr.task_name = (hi_char*)"app demo led control";
- ret = hi_task_create(&g_led_control_id, &led_control_attr, led_control_demo, HI_NULL);
- if(ret != HI_ERR_SUCCESS){
- printf("Failed to create led control demorn");
- return HI_ERR_FAILURE;
- }
- printf("Succesed to create led control demorn");
- return HI_ERR_SUCCESS;
- }
- extern hi_u32 app_demo_led_control_task(hi_void);
- app_demo_led_control_task();
7、下载设置:
8、下载后成功后,重启开发板就可以看到交通灯交替闪烁了。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
wi-fi
+关注
关注
14文章
2107浏览量
124315 -
HarmonyOS
+关注
关注
79文章
1967浏览量
30006 -
HiSpark
+关注
关注
1文章
156浏览量
6901
发布评论请先 登录
相关推荐
Wi-Fi 8要来了!未来Wi-Fi技术演进方向揭秘
产品销售中,虽然Wi-Fi 7产品的销量份额快速从年初的个位数百分比增长至14%,但Wi-Fi 6产品的销量份额依然稳定在60%左右。如果从存量设备来看,那么Wi-Fi 7路由器的占比将远远小于这个数。 智能手机等终端设备已
Wi-Fi 7与Wi-Fi 6E有什么区别
也许很多人还在考虑是否要将使用的Wi-Fi设备升级到Wi-Fi 6或Wi-Fi 6E,而这些标准的继任者却已经开始“登堂入室”了。Wi-Fi 7是新一代
【星闪派物联网开发套件体验连载】智能交通灯
感谢电子发烧友,感谢润和软件,提供星闪派物联网开发套件试用。
本次试用计划:
用星闪派物联网开发套件,先实现本地交通灯项目,接入WiFi连上
发表于 10-05 13:00
未来的Wi-Fi路由器
转载自——钟林谈芯 没有创新就没有未来,Wi-Fi路由器也是如此。 进入2024年以后,Wi-Fi路由器市场变得更加艰难,利润大幅下滑,BOM成本价高于市场价,接不接订单,都陷入两难。 国内主芯片
DA16200 超低功耗 Wi-Fi 模块开发套件 Pro数据手册
电子发烧友网站提供《DA16200 超低功耗 Wi-Fi 模块开发套件 Pro数据手册.rar》资料免费下载
发表于 05-30 17:53
•1次下载
DA16200 超低功耗 Wi-Fi 模块开发套件数据手册
电子发烧友网站提供《DA16200 超低功耗 Wi-Fi 模块开发套件数据手册.rar》资料免费下载
发表于 05-30 17:13
•0次下载
验证物联网Wi-Fi HaLow用例的MM6108-EKH08开发套件来啦
验证物联网Wi-Fi HaLow用例的MM6108-EKH08开发套件来啦 MM6108-EKH08开发套件专为验证物联网Wi-Fi HaLow用例而设计。该
Wi-Fi的诞生与发展
短距离无线通信技术有Wi-Fi、ZigBee、蓝牙以及Z-Wave,今天我们先揭开Wi-Fi的神秘面纱。Chrent短距离无线通信技术——Wi-Fi过去的20多年,Wi-Fi靠着仅有的
Wi-Fi HaLow和传统Wi-Fi的区别
Wi-Fi HaLow和传统Wi-Fi的区别 Wi-Fi是一种无线网络技术,可以连接到互联网或局域网,为用户提供无线上网的便利。随着科技的发展和互联网的普及,Wi-Fi也在不断演进和
康普携手Wi-Fi联盟,RUCKUS Wi-Fi 7系列接入点成Wi-Fi
康普高级副总裁兼网络、智能蜂窝和安全解决方案总裁Bart Giordano对此表示: “我们非常荣幸能与Wi-Fi Alliance形成长期合作伙伴关系,将我们的RUCKUS Wi-Fi 7 接入点平台作为Wi-Fi CERT
BT Wi-Fi模式是否可以通过ModustoolBox对套件进行编程来实现?
想配置用于分析 CYW43439 的 CY8CPROTO-062S2-43439 原型开发套件。
浏览文档我无法弄清楚如何在不同的 Wi-Fi 和蓝牙模式(电源模式、连接模式等)下配置套件。
在
发表于 01-22 06:19
Wi-Fi 6和Wi-Fi 5之间有哪些区别呢?
Wi-Fi 6和Wi-Fi 5之间有哪些区别呢? Wi-Fi 6和Wi-Fi 5是无线局域网标准的两个版本,它们之间存在很多区别。Wi-Fi
什么是2.4 GHz Wi-Fi? 如何提升2.4 GHz Wi-Fi的性能?
什么是2.4 GHz Wi-Fi?2.4 GHz Wi-Fi的优势 2.4 GHz Wi-Fi的劣势 如何提升2.4 GHz Wi-Fi的性能?2.4 GHz和5 GHz
评论