本帖最后由 wolfgang2015 于 2018-5-17 22:51 编辑 2018年4月13日,摩尔吧独家举办在线主题为《STM32超低功耗平台上的RTOS应用》的培训直播/回看 地址为:https://www.moore8.com/courses/19022 q# p( J ]3 n, x# z" c. ]! W . _; b+ G, y7 E6 l3 R; A 课程大纲:(授课+实验) PART1:课程要点: 1) 学习和掌握一种RTOS 2) FreeRTOS的原理 3) 基于Nucleo-L496ZG的OS应用 PART2:实验部分 资深工程师手把手带你完成有挑战的小实验! 1) FreeRTOS的启动 2) 创建任务 0 v* @" y& e9 x 3) 信号量应用 % F& g8 ~- Y; |8 H* `' i1 ^2 @) N& l 4) 队列应用 5) TraceAlyzer使用 ) |2 F; O8 ^, K 这次在线培训的相关板卡为:Nucleo-STM32L496ZG 为这次RTOS培训,准备步骤如下: 第一步:了解STM32L496 MCU硬件资源 7 |3 R I7 _+ m7 Y+ Z5 x; Y; Y) @ 第二步:了解Nucleo-STM32L496ZG 板卡的扩展口内容 + Z j Y! b8 Q) U( h% z6 _ 第三步:以Nucleo-STM32L496ZG 板卡为代表的MB1312系列Nucleo 144 原理图及TOP图: 开发板TOP图及电源连接图,中间是一颗STM32L系列144pin的MCU。 1、接口原理图分别将 PA[0]~PA[15]、PB[0]~PB[15]、PC[0]~PC[15]、PD[0]~PD[15]、PE[0]~PE[15]、PF[0]~PF[15]、PG[0]~PG[15]、PH[0]~PH[1] 以及PH3(BOOT0)、MCU复位PIN(NRST)引出。 8 W8 P x& V x3 }* O 2、USB接口引出USB_DP、USB_DM、USB_VBUS、USB_ID 可实现USB-HOST与USB-Device的功能应用设计; l 使用USB-Host端功能设计时,需将USB_ID pin和地短接; l 使用USB-Device端功能设计时,需将USB_ID pin悬空(设备内部上拉)。 另外使用USB_GPIO_OUT、USB_GPIO_IN(复用GPIO口功能),实现对USB设备的Disconnect、PowerSwitchOn、OverCurrent、VBUS DET的控制及监控。 ! D6 Z' C# V$ @7 o5 F7 Y 3、PG[0]至PG[15]用于SMPS 电源支撑,SMPS(开关电源)是一种高频化电能转换装置。其功能是将一个位准的电压,透过不同形式的架构转换为用户端所需求的电压或电流。 6 B; V" y2 c* H7 r: n 4、板载一颗由STM32F103CBT6实现的ST-LINK V2-1 对STM32 主MCU进行在线调试并提供STLK_RX、STLK_TX的串口连接,以便在线调试时能将信息通过串口输出给上位机。 5、电源部分 l 若由USB/ST-LINK供电,则LD39050PU33R实现5V转3.3V,为MCU及周边器件提供DC/DC电源; l 若由外部电源VIN供电,通过LD1117S50TR实现稳定的5V电源供电; l 电源的切换由JP6的跳接实现; 当使用默认的USB供电时ST890CDR受ST-LINK PWR 使能控制对MCU上电。 5 n& p+ c$ H7 @6 B0 }! ^/ i" c$ W" D A、MB1312板卡串口电路分析,备用来做CoreMark相关例程; " A( e K3 s4 ^) n- E! [ ] STM32L496使用的是PG7、PG8的 LPUART来连接ST-LINK的RX/TX,实现串口通信,并且满足低功耗运行时的串口输出需要。 串口通信时,需要注意的事项请参考文档: 一个关于LPUART输出异常的问题分享:文档核心内容主要是介绍 LPUART 的供电和波特率设置。 # }% b q9 G3 K7 f ! k0 o+ ~( e0 o5 s9 n B、MB1312板卡LED、按键电路分析,备用来做FreeRTOS 多线程应用的HelloWorld例程; LD1 连接运放TSV631AILT 输出端,TSV631AILT的正向端与STM32L496 PC7引脚连接实现同相放大。可实现LD1呼吸灯的应用场景。 4 b2 [1 c' }0 C $ ^- g6 V9 a) n4 B4 }( Z, Y& P LD2、LD3分别连接PB7、PB14,可通过PB7和PB14实现控制。 《低功耗MCU运行FreeRTOS》培训课程(三) Atollic环境实验' Y% B& ^$ Y* R# R. K 《低功耗MCU运行FreeRTOS》培训课程(四) 创建任务2 L' @9 [8 C7 B 《低功耗MCU运行FreeRTOS》培训课程(五)信号量实现人机交互 《低功耗MCU运行FreeRTOS》培训课程(六)消息队列的使用 |
共勉,一起学习~~