STM32之HAL例程
文章平均质量分 57
youk110
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
STM32 HAL库之配置数据FLASH存储
本文以STM32F103VET6为例,介绍其内部512KByte的flash存储器。该处理器flash单元主要包括三个部分:存储单元、信息块部分、存储器相关控制寄存器。存储单元以page的形式组织,每页2Kbyte,共256页。信息块部分包括system memory(2Kbyte)和option byte(16Byte),system memory单元主要用于存储ST公司固化的bootloader,实现USART1串口更新用户程序。STM32F103VET6内部flash地址分配如下表所示。原创 2024-12-21 10:18:09 · 2633 阅读 · 0 评论 -
STM32 HAL库之串口接收不定长字符
串口发送数据可直接采用查询和DMA的方式发送,尽量不采用中断方式(包括DMA中断方式)。串口接收数据具有随机性,一般采用中断方式和DMA中断接收,前者一般单字节触发接收,后者一般定长字符触发DMA中断接收。在项目开发过程中,经常会使用MCU的串口与外界进行通信,例如两个单片机之间TTL电平型串口通信,单片机与成熟电路模块之间的串口通信等等.... 如何高效的使用串口是开发人员必须关注的问题。DMA的方式主要采用以下两个函数。但在使用的过程中,可关闭DMA中断,直接采用DMA接收和放送,降低了CPU负载。原创 2024-12-19 20:00:51 · 1107 阅读 · 0 评论 -
STM32 HAL库之 RTOS 认识及任务介绍
开启MCU内部定时器,采用定时中断的方式,中断溢出1ms触发中断。在中断函数中累计并判断时间,T=500ms StateMachine = 0x0001,T=1s StateMachine = 0x0002,T=10s StateMachine = 0x0004。从上面代码中可以看出,我们只需要创建三个任务分别处理设计需求即可。深入学习RTOS的调度机制以后,我们会知道RTOS的这种方式其实也是采用中断调度的方式进行控制的,只不过这些工作都是由系统已经为我们封装好了。原创 2024-12-16 11:15:05 · 351 阅读 · 0 评论 -
STM32之HAL例程-FreeRTOS任务调度流程
sysytick作为系统时钟基准,每1ms触发一次中断。分析中断程序,可知系统对各个状态链表进行查询,若需要进行任务切换,就使能PendSV位。在函数xPortStartScheduler中设置PendSV和Systick中断为最低优先级中断,中断编号为15。systick定时器全局监测变量xTickCount。任务的切换都是在PendSV中断中进行。原创 2024-12-16 11:13:42 · 448 阅读 · 0 评论 -
STM32 HAL库之Tiny Program 1 - 数据监测存储系统
每间隔一段时间对STM32 MCU内部工作电压和温度进行采集监测,并存储到MicroSD卡内。原创 2024-12-14 10:56:31 · 484 阅读 · 0 评论 -
STM32 HAL库之SDIO例程 Micro SD卡 - 2
SD卡数据的HAL读取原创 2024-12-12 21:26:33 · 420 阅读 · 0 评论 -
STM32 HAL库之SDIO例程 Micro SD卡 - 1
SD卡基本概念原创 2024-12-12 20:26:26 · 909 阅读 · 0 评论 -
STM32之HAL例程-FreeRTOS底层开关中断以及临界区汇总
/* Convert from CMSIS type osPriority to FreeRTOS priority number */static unsigned portBASE_TYPE makeFreeRtosPriority (osPriority priority){ unsigned portBASE_TYPE fpriority = tskIDLE_PRIORITY; if (priority != osPriorityError) { fpriority +=.原创 2022-03-15 21:49:34 · 1246 阅读 · 0 评论 -
STM32之HAL例程分析-串口输出函数printf打印调试信息
参考ST官方历程进行程序修改。1、主函数如下代码所示。HAL例程中使用句柄UartHandleTypedef 完成对串口通用参数的初始化,串口的底层硬件初始化则在函数HAK_UART_Init中的HAL_UART_MspInit函数中实现。int main(void){ HAL_Init(); SystemClock_Config(); BSP_LED_Init(LED3); BSP_LED_Init(LED4); /*##-1- Configure the UART原创 2022-02-27 09:16:52 · 2078 阅读 · 0 评论 -
STM32之HAL例程分析-systicker应用
STM32 MCU内部SYSTICK定时器介绍。原创 2022-02-26 21:25:52 · 6070 阅读 · 0 评论
分享