|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/embedded-system-design-using-uml-state-machines/
课程评论:没有评论
课程名称:使用 UML 状态机的嵌入式系统设计 概述:本课程将逐步介绍简单和层次化 UML 状态机的基本概念。课程强调基于项目的学习和实践操作,旨在通过简单和层次化状态机引入事件驱动编程范式。完成本课程后,学员将能够将状态机方法应用于复杂的嵌入式系统项目。 课程亮点包括: 1. 理解 UML(统一建模语言)状态机的语义,如简单/复合状态、事件、信号、转换、进入/退出动作、守卫、伪状态等。 2. 使用图形建模工具(如 Astah 和 QM™ 建模工具)绘制 UML 状态机。 3. 采用层次状态机和活动对象设计方法实现嵌入式应用。 4. 在嵌入式项目中使用 QP™ 实时嵌入式框架和 QP™-Nano Arduino 库。 5. 理解活动对象的概念。 6. 在 Arduino UNO 板上进行事件驱动项目的实际实施和测试。 硬件需求:如需在目标硬件上测试开发的代码,需准备以下组件: 1. Arduino UNO (1) 2. 16x2 字符 LCD (1) 3. 按钮开关 (3) 4. 10KΩ 电阻 (3) 5. 220Ω 电阻 (3) 6. 100KΩ 可变电阻 (1) 7. Arduino 蜂鸣器 (1) 8. 跳线 (若干) 软件需求:课程中涵盖的重要软件安装流程包括: 1. Arduino IDE(免费开源) 2. Microsoft Visual Code(免费) 3. PlatformIO VS Code 插件(免费开源) 4. QM™ 建模工具(Quantum Leaps, LLC 提供的 GPL 免费版) 5. Astah(Change Vision, Inc. 提供的试用版) 学习顺序建议:对于嵌入式系统初学者,建议按以下顺序学习: 1. 微控制器嵌入式 C 编程:绝对初学者(嵌入式 C) 2. ARM Cortex-M3/M4 处理器上的嵌入式系统编程(特定于 ARM Cortex M4 处理器) 3. 微控制器与嵌入式驱动开发精通(MCU1) 4. 微控制器精通:定时器、PWM、CAN、RTC、低功耗(MCU2) 5. 微控制器精通:STM32-LTDC、LCD-TFT、LVGL(MCU3) 6. 使用 UML 状态机的嵌入式系统设计(状态机) 7. RTOS 精通:无缝 FreeRTOS 和 STM32Fx 的实践(RTOS) 8. ARM Cortex M 微控制器 DMA 编程解密(DMA) 9. STM32Fx 微控制器自定义引导加载程序开发(引导加载程序) 10. 使用 Beaglebone Black 的嵌入式 Linux 从入门到精通(Linux) 11. 使用 Beaglebone Black 的 Linux 设备驱动编程(LDD1) 其他编程课程: - 精通 Rust 编程语言:初学者到高级课程。
Learn the fundamentals of simple and hierarchical UML state machines in easy stepsThe course emphasizes project-based learning, learning by doing. The goal of this course is to introduce an event-driven programming paradigm using simple and hierarchical state machines.After going through this course, you will be trained to apply the state machine approach to solve your complex embedded systems projects.Some of the highlights of this course are as belowyou will learn,1) UML(Unified Modeling Language) state machine semantics like simple/composite states, events, signals, transitions, entry/exit actions, guards, pseudo-states, etc2) Drawing UML state machines using graphical modeling tools such as Astah and QM™ modeling tool3) Implementing embedded applications using Hierarchical state machines and Active objects design approach4) Using QP™ real-time embedded framework and QP™-Nano Arduino library in your embedded projects5) Active objects 6) Hands-on event-driven project implementation and testing on Arduino UNO board (Please check the preview videos)Hardware:If you want to test the code developed on the target hardware, you need the below-mentioned boards and components1. Arduino UNO(1)2. 16x2 character LCD (1)3. Pushbuttons (3)4. 10KΩ resistors (3)5. 220Ω resistor (3)6. 100KΩ Potentiometer (1)7. Arduino buzzer (1)8. Jumper wires-M2MSoftware:Installation procedure for important software are covered in this course1. Arduino IDE (Free and Open source )2. Microsoft visual code (Free)3. PlatformIO VS code extension(Free and Open source )4. QM™ modeling tool by Quantum Leaps, LLC (Free GPL version)5. Astah by Change Vision, Inc.(Trial version)Learning order of FastBit Embedded Brain Academy Courses,If you are a beginner in the field of embedded systems, then you can take our courses in the below-mentioned order. This is just a recommendation from the instructor for beginners. 1) Microcontroller Embedded C Programming: absolute beginners(Embedded C)2) Embedded Systems Programming on ARM Cortex-M3/M4 Processor(ARM Cortex M4 Processor specific)3) Mastering Microcontroller with Embedded Driver Development(MCU1)4) Mastering Microcontroller: TIMERS, PWM, CAN, RTC,LOW POWER(MCU2)5) Mastering Microcontroller: STM32-LTDC, LCD-TFT, LVGL(MCU3)6) Embedded System Design using UML State Machines(State machine)7) Mastering RTOS: Hands-on FreeRTOS and STM32Fx with Debugging(RTOS)8) ARM Cortex M Microcontroller DMA Programming Demystified(DMA)9) STM32Fx Microcontroller Custom Bootloader Development(Bootloader)10) Embedded Linux Step by Step using Beaglebone Black(Linux)11) Linux device driver programming using Beaglebone Black(LDD1)Other programming courses1) Master The Rust Programming Language: Beginner To Advanced