Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Webinar: STM32WB - microcontrolador dual-core certificado BLE 5.0

STMicroelectronics apresenta a família STM32WB que é o primeiro e único dual-core Cortex-M4 e Cortex-M0 + MCU no mercado certificado Bluetooth Low Energy v5.0 e 802.15.4. Para acompanhar a chegada desses componentes, também estamos lançando o STM32CubeMonRF, uma ferramenta de software para ajudar os desenvolvedores a testar e configurar seu rádio com mais eficiência. Também estamos lançando o P-NUCLEO-WB55, um pacote de desenvolvimento contendo uma placa Nucleo 64 clássica e um dongle USB. Ambos são fornecidos com o aplicativo de demonstração do microcontrolador,onde oferece uma experiência verdadeiramente única, pronta para uso.

Assista o webinar em: https://www.embarcados.com.br/webinars/webinar-stm32wb/

  • Identifiez-vous pour voir les commentaires

Webinar: STM32WB - microcontrolador dual-core certificado BLE 5.0

  1. 1. STM32WB Ecosystem Microcontrollers Division 27th Aug 2019
  2. 2. 14:00 Overview Bruno Montanari STM32WB Portfolio Overview STM32CubeMX and CubeIDE – first project Stack Demos BLE Thread Agenda Time Speaker Presentation 2
  3. 3. Portfolio Evolution
  4. 4. 4 Ultra-low-power Mainstream Cortex-M0 Cortex-M0+ Cortex-M3 Cortex-M4 Cortex-M7 High-performance Wireless Cortex-M0+ Radio Co-processorLegend: More than 40,000 customers STM32 Portfolio Cortex-A7 Single or Dual-Core A7 with Cortex M4Legend:
  5. 5. STM32WB Key Takeaways Secure Dual-core Ultra-Low Power Multi-protocol Comprehensive Ecosystem 5
  6. 6. Multiprotocol 2.4 GHz Open 6 • Fully certified • 2Mbps • BLE Mesh • Zigbee 3.0 • OpenThread • Concurrent BLE + OpenThread • OpenMAC
  7. 7. 802.15.4 MAC Proprietary Protocol 2.4 GHz Radio BLE MAC Stack + MAC + PHY 7
  8. 8. Zigbee 3.0 Stack • Fully certified • Legacy cluster support • Revision R21 to R23 • Coming in late 2019 8
  9. 9. A word about Thread 9
  10. 10. Bluetooth Mesh vs Thread Bluetooth Mesh • Based on Bluetooth 4.0 and later • Broadcast type, flood the network with messages, no routing • Shorter range, 3kbps application data rate, 1Mbps on-air bit-rate • High power consumption Thread • IPv6-based using 802.15.4 MAC • Routing table approach with network self healing • Medium range, 40Kbps application data rate, 250Kbps on-air bit-rate • Low power consumption 10
  11. 11. Ecosystem Overview
  12. 12. Software Development Tools C/C++ Focus 12 STM32CubeMX Configure & Generate Code IDEs Compile and Debug STM32CubeProgrammer STM32CubeMonitor Program & Monitor A complete flow, from configuration up to monitoring FREE IDE’s 8/29/2019
  13. 13. STM32 Nucleo key assets 13 Simply expose the whole STM32 portfolio to the communities Flexible prototyping Unlimited expansion capabilities
  14. 14. STM32WB Nucleo kit 14
  15. 15. 15 STM32WB Nucleo kit
  16. 16. WB55 Dongle Board 16
  17. 17. STM32Cube Basics
  18. 18. Overview 18 STM32 L0 STM32 L1 STM32 L4 STM32 L4+ STM32 WB STM32 F0 STM32 F1 STM32 F3 STM32 F2 STM32 F4 STM32 F7 STM32 H7 C code generation for initialization, depending on user choices Focus on YOUR application
  19. 19. STM32CubeMX
  20. 20. Overview 20 • Choose ideal MCU and simply configure • Pinouts • Clocks and oscillators • Peripherals • Low-power modes • Middleware • Helps choose the correct MCU for a given purpose • Simulation provides an advantage in design phase • Boosts development speed with a headstart Application benefits
  21. 21. Prerequisites and settings 21 • STM32CubeMX needs Java RE • Check release notes of the particular version for additional requirements • Multiplatform tool runs on Windows, Linux and macOS • After installation, hit Alt+S to configure the updater – not only for the GUI but also for Cube FW libraries • Select SW library placement.
  22. 22. Updater 22 • Updates are accessible from the Help menu • The tool updater can detect new releases of the tool and the associated Cube library • Use the libraries manager to download new library packages
  23. 23. MCU selector 23 • Find MCU by name … • Quickly locate by Series and Lines • … or application needs • Package (pin count) • RAM size • NV memory requirements • Embedded peripherals • Number and type of interfaces • Core and frequency • Price • Convenient links to documentation • Export table to Excel file
  24. 24. Pin assignment 24 • Pinout from: • Peripheral tree • Manually • Automatic signal remapping • Management of dependencies between peripherals and/or middleware (FatFS, USB …)
  25. 25. Pin assignment continued 25 Peripheral is not available, all its alternate pins are assigned elsewhere Click on the pin to view alternate functions Orange means the peripheral is not enabled, only the pin is assigned Freeze the signal placement using the pin icon
  26. 26. Peripheral and Middleware configuration 26 • Global view of used peripherals and middleware • Highlight of configuration errors + Not configured ⱱ OK Non-blocking problem x Error GPIO configuration is considered incorrect, but code may be generated Click to configure DMA Error in configuration, code generator will display a warning message Configuration is valid here Quickly switch pinout and system view
  27. 27. Code generation • Generate all the initialization code in C • Generates project file for any supported development toolchain • User code can be added in dedicated sections and will be kept upon regeneration • Option to use the latest library version or keep the same even if regenerating 31 Write your code here to keep option to regenerate the project
  28. 28. Clock configuration 32 • Immediate display of all clock values • Active and inactive clock paths are differentiated • Management of clock constraints and features
  29. 29. Code generation project settings • Name your project when saving • Browse for project location • Pick the preferred toolchain • Review the exact MCU type and library version 33
  30. 30. Code generation options • Library package • Whole library or the necessary part may be copied to the generated project folder • Or keep the library in original place and refer to it from all projects • Generated files • Each peripheral initialized in separate file or in common source file • Options for working with old files • The option to keep user code intact is here • HAL settings • Setting available pins to analog reduces power consumption, but be careful to explicitly select SWD/JTAG in pinout • Full assert is useful for debugging 34
  31. 31. PCC (Power Consumption Calculator) 35 General PCC configuration panel Sequence configuration Result overview
  32. 32. Cube Tools STM32CubeProgrammer STM32CubeMonitorRF CubeWB HAL Firmware 37
  33. 33. Cube Tools 38 STM32CubeProgrammer STM32CubeMonitorRF CubeWB HAL Firmware
  34. 34. Cube Tools STM32CubeProgrammer STM32CubeMonitorRF CubeWB HAL Firmware 39
  35. 35. Cube Tools STM32CubeProgrammer STM32CubeMonitorRF CubeWB HAL Firmware 40
  36. 36. CubeWB firmware Core folder contains application-related source code
  37. 37. CubeWB firmware Different stacks required for different application types BLE + Thread Static Concurrent mode project Open MAC project Thread projects BLE projects Zigbee 3.0 coming soon! – November 2019
  38. 38. CubeWB firmware Encrypted radio stack binaries here HTML file details update procedure Nucleo & Dongle boards come preloaded with the BLE stack
  39. 39. STM32CubeIDE All-in-1 STM32 Development Tool
  40. 40. Integrated Solution TrueSTUDIO based environment STM32CubeMX integration STM32CubeIDE 45 The Ultimate STM32Cube Development Tool
  41. 41. Free for commercial development Based on Eclipse and GCC Open Source projects Multi Operating System Support STM32CubeIDE 46 Free multi-platform development tool macOS®
  42. 42. Debug features• Out-of-the-box STM32CubeIDE offers debug support for: • SEGGER J-Link / J-Trace • ST-Link • OpenOCD (not bundled, useful for mbed devices) • The debugger is capable of debugging single-core, multi-core and multi- processor systems • The debugger contains many powerful features including: • Simple and advanced debug execution flow control • Call stack display • Simple/advanced visualisation variables/objects • Simple/complex breakpoints and watchpoints • Display of CPU core registers • A powerful memory view • Serial/Telnet/SSH terminal • Advanced display of peripheral registers • Live "real-time" variable watch view • System analysis and real-time tracing (SWV) • Instruction tracing support using ETM/ETB/MTB including trace start/stop triggers • CPU fault analysis tool • Kernel-aware debug support for many RTOSes • The debugger is RTOS aware and has features for instruction tracing as well as system analysis and real-time event- and data tracing, and also includes a powerful script language for automation of advanced debug tasks. • The Fault analyzer simplifies resolving Hard faults; (Bus, Usage Memory management fault) 47
  43. 43. First Demo
  44. 44. Hands-on : Launch STM32CubeIDE • Set the desired workspace folder for all the projects that shall be created by the STM32CubeIDE • Click on “Launch” button • STM32CubeIDE Welcome Page • Welcome Page enables the user to quickly reach information regarding the product, and how to use it • Can be reached any time via the Help - > Information Center 49
  45. 45. Hands-on : Creating the First Project • Click on [Start new STM32 project] • Alternatively, go to: • File -> New -> STM32 Project 50
  46. 46. Hands-on : Part selection 51 • After creating a New Project, it will start a Target Selection window. • Select an MCU/Board by entering the part number (We have used the PNucleo – WB55RG kit) • Step 1: Here we enter “STM32WB55RG” in the MCU Selector tab • Step 2: Then select “STM32WB55RGVx” • Step 3: Then click “Next” 2 1 3
  47. 47. Hands-on : Project Setup 52 • Enter the desired “Project Name” • Enter “Next” • The Firmware Library Setup window shall appear • *Pre-requisite* : • STM32CubeMX and latest Firmware package in the STM32CubeMX Repository • OR • Internet connection to Download and install STM32CubeMX and the FW package • Once the *Pre-requisite* are addressed • Then click “Finish” • The below window appears, click “Yes” STM32CubeMX repository path Firmware package version
  48. 48. Hands-on : STM32CubeMX Perspective 53 • Now the STM32CubeMX perspective opens up • You can also find the “Project Explorer” view on the left hand side • A CubeMX Project (*.ioc) is also created • A default set of drivers, startup, linker, main files are created too
  49. 49. Hands-on: Pin Configuration 54 • In this example we are going to use one of the LEDs present on the STM32G0 Nucleo board (connected to PA5 as seen in the schematic below) • Search for PB0 in the search window at the bottom • Left-click PB0 and set it to GPIO_Output mode
  50. 50. Hands-on: Pin Configuration • Configure PB0 as GPIO_Output • Right click it and select the Enter User Label • Change the name to LD2. 55 1 2 3
  51. 51. Hands-on : Code Generation • Go to Project Menu->Generate Code. • Allow the tool to finish generating the code. • Open Main.c file to view the generated code. 56
  52. 52. Hands-on : Add LED Blink and Build 57 • Step 1: Add the following user codes in main() to toggle the LED and increment some variables a LED Toggle (1000ms delay) • Step 2: Build the project (Ctrl+B) • Step 3: Do check the “Console” for successful compilation and linking 2 3 1
  53. 53. Hands-on : Debug Configuration 58 • Go to Run-> Debug As - >STM32 MCU C/C++ Application • Click on Debugger tab for more settings • Debug probe used in our case : ST-LINK (ST-LINK GBD server) • Debugging Interface : SWD • Click OK to proceed.
  54. 54. Debug perspective 59 SFR view Peripheral registers contents are displayed here Fault Analyzer view Display information if a system fault occurs Breakpoint view Existing breakpoints are shown or configured here Variables and Expressions view Run control toolbar 1. Restart 2. Skip all breakpoints 3. Resume 4. Suspend 5. Terminate 6. Disconnect 7. Step Into 8. Step Over 9. Step Return 10. Instruction Stepping mode 1 2 3 4 5 6 7 8 9 10
  55. 55. Hands-on : Debug Project 60 • Click on [Resume] to run
  56. 56. Getting to know Demos STM32WB
  57. 57. 62
  58. 58. 63
  59. 59. 64
  60. 60. 65
  61. 61. 66
  62. 62. 67
  63. 63. 68
  64. 64. 69
  65. 65. 70
  66. 66. 71
  67. 67. 72
  68. 68. 73
  69. 69. 74
  70. 70. 75
  71. 71. 76
  72. 72. 77
  73. 73. 78
  74. 74. 79
  75. 75. 80
  76. 76. 81
  77. 77. 82
  78. 78. 83
  79. 79. 84
  80. 80. 85
  81. 81. 86
  82. 82. 87
  83. 83. Questions? 88
  84. 84. Thank you 89 8/29/2019

×