- 开发者
- 小熊派
#小熊派#
- 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 系统中的每个任务都有多种运行状态...
- 1. 创建HelloWorld工程打开IoT Studio,点击创建IoT Studio工程:填写工程设置,需要注意一下几点:工程名称和目录中不可以有中文或者空格SDK版本选择最新的IoT_LINK版本,当前最新1.0.0硬件平台选择STM32L431RC_BearPi示例工程选择hello_world_demo创建完成之后进入IoT Studio界面如图:2. IoT_LINK SDK在创... 1. 创建HelloWorld工程打开IoT Studio,点击创建IoT Studio工程:填写工程设置,需要注意一下几点:工程名称和目录中不可以有中文或者空格SDK版本选择最新的IoT_LINK版本,当前最新1.0.0硬件平台选择STM32L431RC_BearPi示例工程选择hello_world_demo创建完成之后进入IoT Studio界面如图:2. IoT_LINK SDK在创...
- 小熊派开源社区针对小熊派IoT开发板首次规划了小熊派未来的系列教程。从基础到进阶的设计,可适应具有不同基础的开发者,通过该系列教程的学习,开发者能够轻松掌握IoT产品的开发。该系列教程包括单片机基础、LiteOS操作系统基础、通信外设开发、上云案例开发等部分,整个教程将主要使用MDK5软件作为编译器进行讲解,部分教程会附加讲解使用华为IoT Studio进行开发的过程,学有余力的同学... 小熊派开源社区针对小熊派IoT开发板首次规划了小熊派未来的系列教程。从基础到进阶的设计,可适应具有不同基础的开发者,通过该系列教程的学习,开发者能够轻松掌握IoT产品的开发。该系列教程包括单片机基础、LiteOS操作系统基础、通信外设开发、上云案例开发等部分,整个教程将主要使用MDK5软件作为编译器进行讲解,部分教程会附加讲解使用华为IoT Studio进行开发的过程,学有余力的同学...
- 1. LiteOS的互斥锁1.1. 互斥锁在多任务环境下,往往存在多个任务竞争同一共享资源的应用场景,互斥锁可被用于对共享资源的保护从而实现独占式访问。互斥锁(mutex)又称互斥型信号量,是一种特殊的二值信号量,用于实现对共享资源的独占式处理。另外,Huawei LiteOS提供的互斥锁通过优先级继承算法,解决了优先级翻转问题。1.2. 互斥锁的使用方式多任务环境下会存在多个任务访问同一公... 1. LiteOS的互斥锁1.1. 互斥锁在多任务环境下,往往存在多个任务竞争同一共享资源的应用场景,互斥锁可被用于对共享资源的保护从而实现独占式访问。互斥锁(mutex)又称互斥型信号量,是一种特殊的二值信号量,用于实现对共享资源的独占式处理。另外,Huawei LiteOS提供的互斥锁通过优先级继承算法,解决了优先级翻转问题。1.2. 互斥锁的使用方式多任务环境下会存在多个任务访问同一公...
上滑加载中
推荐直播
-
华为云入门必修课:技术精髓知识点精讲
2024/11/07 周四 17:40-19:40
Jackie 华为云资深布道师
本期直播旨在帮开发者了解云的基本概念、云的优势、常见存储服务的原理及使用,掌握ECS的概念、功能、场景和使用等,为你的开发之路奠定坚实理论根基,帮助开发者在云计算领域提升技能,增强职业竞争力。
去报名
热门标签