- 开发者
- 小熊派
#小熊派#
- 一、multi_timer简介网红multi_timer是一个极其轻量的软件定时器,只要你的MCU容量够的情况下,就可以无限拓展成为N个定时器,这在一定程度上方便了定期器资源较少的MCU,但有经验的老工程师会说:"我可以只用一个定时器,用计数器+标志位的方式也可以COPY出N个定时器呀,资源少也阻挡不了我对它的充分利用"。是的没错,但multi_timer对比老工程师方法的优势在哪里呢?它可... 一、multi_timer简介网红multi_timer是一个极其轻量的软件定时器,只要你的MCU容量够的情况下,就可以无限拓展成为N个定时器,这在一定程度上方便了定期器资源较少的MCU,但有经验的老工程师会说:"我可以只用一个定时器,用计数器+标志位的方式也可以COPY出N个定时器呀,资源少也阻挡不了我对它的充分利用"。是的没错,但multi_timer对比老工程师方法的优势在哪里呢?它可...
- NB的老王,小熊派开源社区创始人,华为云TOP10技术专家,专注于IoT全栈开发,对于NB-IoT技术有深入研究,并对物联网领域开发有着自己独特的见解和开发经验~最近很多小熊派IoT开发者在后台留言,希望小熊派开发团队可以提供小熊派上云的视频教程,方便跟着动手实验,开发者的需求,一定满足,于是小编跑去找老大:我的天!老大当初录视频可是要害羞好久的,这下竟然要开直播!而且是每天晚上!佩服~接下... NB的老王,小熊派开源社区创始人,华为云TOP10技术专家,专注于IoT全栈开发,对于NB-IoT技术有深入研究,并对物联网领域开发有着自己独特的见解和开发经验~最近很多小熊派IoT开发者在后台留言,希望小熊派开发团队可以提供小熊派上云的视频教程,方便跟着动手实验,开发者的需求,一定满足,于是小编跑去找老大:我的天!老大当初录视频可是要害羞好久的,这下竟然要开直播!而且是每天晚上!佩服~接下...
- 本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件SDMMC外设读取SD卡数据。1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。Micro SD卡小熊派开发板板载 Micro SD 卡槽,最大支持 32 GB,需要提前自行准备一张 Micro SD卡,如图:2.生成MDK工程选择芯片型号打开STM32CubeMX,打开... 本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件SDMMC外设读取SD卡数据。1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。Micro SD卡小熊派开发板板载 Micro SD 卡槽,最大支持 32 GB,需要提前自行准备一张 Micro SD卡,如图:2.生成MDK工程选择芯片型号打开STM32CubeMX,打开...
- 1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。SPI Flash小熊派开发板板载一片SPI Flash,型号为 W25Q64,大小为 8 MB,最大支持 80 Mhz的操作频率。2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在... 1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。SPI Flash小熊派开发板板载一片SPI Flash,型号为 W25Q64,大小为 8 MB,最大支持 80 Mhz的操作频率。2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在...
- 本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件SPI外设与ST7789通信,驱动16bit TFT-LCD 屏幕。0. 前言学习 SPI 外设驱动LCD屏幕没有必要手写驱动,学习这部分代码的目的是为了了解TFT-LCD的工作原理,每个像素点是如何显示的,不要花过多的精力在弄明白每个命令的意思,建议基于本驱动,学习一下打点,画线算法,画圆算法,画多边形算法等... 本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件SPI外设与ST7789通信,驱动16bit TFT-LCD 屏幕。0. 前言学习 SPI 外设驱动LCD屏幕没有必要手写驱动,学习这部分代码的目的是为了了解TFT-LCD的工作原理,每个像素点是如何显示的,不要花过多的精力在弄明白每个命令的意思,建议基于本驱动,学习一下打点,画线算法,画圆算法,画多边形算法等...
- 本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的通用定时器外设,以中断的方式使LED闪烁。1. 准备工作硬件准备开发板首先需要准备一个开发板,这里我准备的是STM32L4的开发板(BearPi):测试LED这里我直接使用板载LED,原理图如下:2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配... 本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的通用定时器外设,以中断的方式使LED闪烁。1. 准备工作硬件准备开发板首先需要准备一个开发板,这里我准备的是STM32L4的开发板(BearPi):测试LED这里我直接使用板载LED,原理图如下:2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配...
- 本文详细的介绍了如何重定向printf输出到串口输出的多种方法,包括调用MDK微库(MicroLib)的方法,调用标准库的方法,以及适用于 GNUC 系列编译器的方法。1.printf与fputc对于 printf 函数相信大家都不陌生,第一个C语言程序就是使用 printf 函数在屏幕上的控制台打印出Hello World,之后使用 printf 函数输出各种类型的数据,使用格式控制输出各... 本文详细的介绍了如何重定向printf输出到串口输出的多种方法,包括调用MDK微库(MicroLib)的方法,调用标准库的方法,以及适用于 GNUC 系列编译器的方法。1.printf与fputc对于 printf 函数相信大家都不陌生,第一个C语言程序就是使用 printf 函数在屏幕上的控制台打印出Hello World,之后使用 printf 函数输出各种类型的数据,使用格式控制输出各...
- 1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;如果使用默认内部时钟(HSI),这一步可以略过;这里我都使用外部时钟:配置串口小熊派开发板板载S... 1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;如果使用默认内部时钟(HSI),这一步可以略过;这里我都使用外部时钟:配置串口小熊派开发板板载S...
- 本篇文章主要介绍如何使用STM32CubeMX初始化STM32L431RCT6的USART,并使用中断模式发送和接收数据。1. 准备工作硬件准备首先需要准备一个开发板,这里我准备的是STM32L4的开发板(BearPi):2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在... 本篇文章主要介绍如何使用STM32CubeMX初始化STM32L431RCT6的USART,并使用中断模式发送和接收数据。1. 准备工作硬件准备首先需要准备一个开发板,这里我准备的是STM32L4的开发板(BearPi):2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在...
- 1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;如果使用默认内部时钟(HSI),这一步可以略过;这里我都使用外部时钟:配置LED的GPIO引脚查... 1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;如果使用默认内部时钟(HSI),这一步可以略过;这里我都使用外部时钟:配置LED的GPIO引脚查...
- 本篇文章主要介绍如何使用STM32CubeMX初始化STM32L431RCT6的GPIO,并扫描检测按键。1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。软件准备需要安装好Keil - MDK及芯片对应的包,以便编译和下载生成的代码,可参考MDK安装教程2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM3... 本篇文章主要介绍如何使用STM32CubeMX初始化STM32L431RCT6的GPIO,并扫描检测按键。1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。软件准备需要安装好Keil - MDK及芯片对应的包,以便编译和下载生成的代码,可参考MDK安装教程2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM3...
- 1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。软件准备需要安装好Keil - MDK及芯片对应的包,以便编译和下载生成的代码,可参考MDK安装教程2.创建工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;如... 1. 准备工作硬件准备开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。软件准备需要安装好Keil - MDK及芯片对应的包,以便编译和下载生成的代码,可参考MDK安装教程2.创建工程选择芯片型号打开STM32CubeMX,打开MCU选择器:搜索并选中芯片STM32L431RCT6:配置时钟源如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;如...
- 1. LiteOS内核的内存管理1.1. 内存管理在系统运行的过程中,一些内存空间大小是不确定的,比如一些数据缓冲区,所以系统需要提供内存空间的管理能力,用户可以在使用的时候申请需要的内存空间,使用完毕释放该空间,以便再次利用。Huawei LiteOS 的内存管理模块通过对内存的申请/释放操作,来管理用户和OS对内存的使用,使内存的利用率和使用效率达到最优,同时最大限度地解决系统的内存碎片... 1. LiteOS内核的内存管理1.1. 内存管理在系统运行的过程中,一些内存空间大小是不确定的,比如一些数据缓冲区,所以系统需要提供内存空间的管理能力,用户可以在使用的时候申请需要的内存空间,使用完毕释放该空间,以便再次利用。Huawei LiteOS 的内存管理模块通过对内存的申请/释放操作,来管理用户和OS对内存的使用,使内存的利用率和使用效率达到最优,同时最大限度地解决系统的内存碎片...
- 1. LiteOS内核的信号量1.1.信号量在多任务操作系统中,不同的任务之间需要同步运行,信号量功能可以为用户提供这方面的支持。信号量(Semaphore)是一种实现任务间通信的机制,实现任务之间同步或临界资源的互斥访问。1.2. 信号量的使用方式信号量可以被任务获取或者申请,不同的信号量通过信号量索引号来唯一确定,每个信号量都有一个计数值和任务队列。通常一个信号量的计数值用于对应有效的资... 1. LiteOS内核的信号量1.1.信号量在多任务操作系统中,不同的任务之间需要同步运行,信号量功能可以为用户提供这方面的支持。信号量(Semaphore)是一种实现任务间通信的机制,实现任务之间同步或临界资源的互斥访问。1.2. 信号量的使用方式信号量可以被任务获取或者申请,不同的信号量通过信号量索引号来唯一确定,每个信号量都有一个计数值和任务队列。通常一个信号量的计数值用于对应有效的资...
- 1. LiteOS内核的任务管理Huawei LiteOS 内核提供任务的创建、删除、延迟、挂起、恢复等功能,以及锁定和解锁任务调度,支持任务按优先级高低的抢占调度及同优先级时间片轮转调度。1.1. 任务在 LiteOS 中,一个任务就是一个线程,多个任务按照优先级进行抢占式调度,达到多个任务“同时”运行的目的。1.2. 任务的状态Huawei LiteOS 系统中的每个任务都有多种运行状态... 1. LiteOS内核的任务管理Huawei LiteOS 内核提供任务的创建、删除、延迟、挂起、恢复等功能,以及锁定和解锁任务调度,支持任务按优先级高低的抢占调度及同优先级时间片轮转调度。1.1. 任务在 LiteOS 中,一个任务就是一个线程,多个任务按照优先级进行抢占式调度,达到多个任务“同时”运行的目的。1.2. 任务的状态Huawei LiteOS 系统中的每个任务都有多种运行状态...
上滑加载中
推荐直播
-
Ascend C算子编程之旅:基础入门篇
2024/11/22 周五 16:00-17:30
莫老师 昇腾CANN专家
介绍Ascend C算子基本概念、异构计算架构CANN和Ascend C基本概述,以及Ascend C快速入门,夯实Ascend C算子编程基础
回顾中 -
深入解析:华为全栈AI解决方案与云智能开放能力
2024/11/22 周五 18:20-20:20
Alex 华为云学堂技术讲师
本期直播我们将重点为大家介绍华为全栈全场景AI解决方案以和华为云企业智能AI开放能力。旨在帮助开发者深入理解华为AI解决方案,并能够更加熟练地运用这些技术。通过洞悉华为解决方案,了解人工智能完整生态链条的构造。
回顾中 -
华为云DataArts+DWS助力企业数据治理一站式解决方案及应用实践
2024/11/27 周三 16:30-18:00
Walter.chi 华为云数据治理DTSE技术布道师
想知道数据治理项目中,数据主题域如何合理划分?数据标准及主数据标准如何制定?数仓分层模型如何合理规划?华为云DataArts+DWS助力企业数据治理项目一站式解决方案和应用实践告诉您答案!本期将从数据趋势、数据治理方案、数据治理规划及落地,案例分享四个方面来助力企业数据治理项目合理咨询规划及顺利实施。
去报名
热门标签