本帖最后由 wolfgang2015 于 2018-5-17 22:51 编辑 ( k( m3 k; ^* J 2018年4月13日,摩尔吧独家举办在线主题为《STM32超低功耗平台上的RTOS应用》的培训直播/回看 地址为:https://www.moore8.com/courses/1902 " h5 Y- U/ }# ?" ?+ V 课程大纲:(授课+实验) PART1:课程要点: 1) 学习和掌握一种RTOS 2) FreeRTOS的原理 & {% O' ?9 c$ U! l 3) 基于Nucleo-L496ZG的OS应用 PART2:实验部分 资深工程师手把手带你完成有挑战的小实验! 1) FreeRTOS的启动 8 x( p" g% _0 i7 Y3 l 4 Z$ X' x7 S6 U5 L7 B' x: z2) 创建任务 ) R4 L2 e, n! Y 3) 信号量应用 ! l6 {& f: p. f5 U3 e 4) 队列应用 / {# j, }# L4 k3 q& @/ b 5) TraceAlyzer使用 ; r# l" g; a( v3 r 这次在线培训的相关板卡为:Nucleo-STM32L496ZG5 Q1 S, H& D& @ 为这次RTOS培训,准备步骤如下: 第一步:了解STM32L496 MCU硬件资源 第二步:了解Nucleo-STM32L496ZG 板卡的扩展口内容 第三步:以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)引出。 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悬空(设备内部上拉)。 7 g: {& A; D9 Q: l 另外使用USB_GPIO_OUT、USB_GPIO_IN(复用GPIO口功能),实现对USB设备的Disconnect、PowerSwitchOn、OverCurrent、VBUS DET的控制及监控。 3、PG[0]至PG[15]用于SMPS 电源支撑,SMPS(开关电源)是一种高频化电能转换装置。其功能是将一个位准的电压,透过不同形式的架构转换为用户端所需求的电压或电流。 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上电。 A、MB1312板卡串口电路分析,备用来做CoreMark相关例程; 0 j9 i9 G- [) g0 s c STM32L496使用的是PG7、PG8的 LPUART来连接ST-LINK的RX/TX,实现串口通信,并且满足低功耗运行时的串口输出需要。 串口通信时,需要注意的事项请参考文档: 一个关于LPUART输出异常的问题分享:文档核心内容主要是介绍 LPUART 的供电和波特率设置。 1 g8 |1 z4 q# ~3 Q 5 V$ Z/ d' V. F f* C% Z9 U! p . ?* F7 k1 d' s5 S$ `5 D- S) o9 b B、MB1312板卡LED、按键电路分析,备用来做FreeRTOS 多线程应用的HelloWorld例程; LD1 连接运放TSV631AILT 输出端,TSV631AILT的正向端与STM32L496 PC7引脚连接实现同相放大。可实现LD1呼吸灯的应用场景。 7 Y# a7 F9 T, Z1 C& k7 O LD2、LD3分别连接PB7、PB14,可通过PB7和PB14实现控制。 $ S' W, S& L; |8 z) k9 c9 x: S5 i & s# u% x( {1 I9 U$ h: f7 M 《低功耗MCU运行FreeRTOS》培训课程(三) Atollic环境实验 《低功耗MCU运行FreeRTOS》培训课程(四) 创建任务 《低功耗MCU运行FreeRTOS》培训课程(五)信号量实现人机交互 《低功耗MCU运行FreeRTOS》培训课程(六)消息队列的使用 + L+ Y' s& l: j4 [0 U( l# ?1 l 9 b, n$ O. i9 x4 P9 V5 b4 ` |
共勉,一起学习~~