Questions tagged [cmsis]

Cortex Microcontroller Software Interface Standard

Is a vendor-independent hardware abstraction layer for microcontrollers that are based on Arm Cortex processors. CMSIS defines generic tool interfaces and enables consistent device support. The CMSIS software interfaces simplify software reuse, reduce the learning curve for microcontroller developers, and improve time to market for new devices.

See the Page of Arm Developer for more details.

55 questions
47
votes
5 answers

CMSIS vs HAL vs Standard Peripherals Library

So I'm switching from PICs to ARM and I bought an STM32F4 discovery board. So far I understand that to program it you can either access all registers directly in memory (obvious way) and also there are 3 main libraries you can use to make your life…
John
  • 1,361
  • 2
  • 12
  • 23
7
votes
3 answers

Memory To Memory DMA on STM32

According to STM32F407 reference manual page 313, memory to memory mode in DMA is a mode that doesn't need any triggering request from a peripheral and it will happen just after the stream enable bit is set. (also we know from the reference that…
Amin Rostami
  • 889
  • 3
  • 12
  • 29
7
votes
2 answers

FreeRTOS on STM32 - What API should be used: CMSIS-RTOS API (v1 or v2) or FreeRTOS API?

According to ST's user manual UM1722 "Developing wireless applications on STM32Cube with RTOS" there are two APIs available: Generic CMSIS-RTOS API (v1 or v2) FreeRTOS API The CMSIS-RTOS API located in the CMSIS_RTOS_V2 folder generated by CubeMX…
Fedor Chervyakov
  • 71
  • 1
  • 1
  • 3
6
votes
4 answers

I want to learn a real microcontroller with STM32F4. Which library should I use (HAL, SPL, or CMSIS)?

From what I know, ST will stop to develop Standard Peripheral Libraries (SPL) for the next generations of STM32. And HAL is not ideal for people who want to understand well about STM32 and microcontrollers. Can you suggest me which one is the best…
5
votes
1 answer

STM32F0 SPI--what am I missing?

I'm trying to send SPI data to a MAX7219 from an STM32F042 (the protocol is one-way without MISO). I must be missing something very obvious. With the code below, the only visible side effect is the GPIO nCS line wiggling. Neither clock nor MOSI show…
iter
  • 341
  • 1
  • 10
4
votes
3 answers

Difference between __I and __IO and __O in CMSIS core

in core_cm4.h header file defined some thing like this: #ifdef __cplusplus #define __I volatile /*!< Defines 'read only' permissions */ #else #define __I volatile const /*!< Defines 'read only'…
Amin Rostami
  • 889
  • 3
  • 12
  • 29
4
votes
2 answers

STM32 HAL drivers

I've been using STM32 ARM microcontrollers for more than two years, the best way of coding that I've found is using the CMSIS and ST std peripheral libraries, and I think it has no restrictions or any main disadvantages. But now I want to try HAL…
electro
  • 375
  • 1
  • 3
  • 13
3
votes
0 answers

LPC1788 multichannel ADC DMA

I have problem with reading LPC1788 ADC pins in multichannel with DMA. Here is the procedure I have followed. I use Keil, initialized UART 0 peripheral, have set all of the ADC pins to be analog, set all ADC pins to be opendrain, disabled all…
V.Ajall
  • 69
  • 4
3
votes
1 answer

Openocd cannot find CMSIS-DAP device

I compiled openocd from git (latest commit: March 7, 2021) with --enable-cmsis-dap. openocd cannot open my CMSIS-DAP device: openocd -f interface/cmsis-dap.cfg -f target/max32660.cfg Open On-Chip Debugger 0.11.0+dev-00056-g6448f70-dirty…
personal_cloud
  • 317
  • 4
  • 11
3
votes
1 answer

CMSIS DSP Library and RMS

I'm using a STM32 Cortex M0+ controller which does not have FPU. I'm reading 50/60Hz sine wave and I would like to calculate the RMS using the DSP library: keil.com/pack/doc/CMSIS/DSP/html/group__RMS.html. Looking into this library, there are three…
user115094
3
votes
2 answers

ARM Cortex cores with peripherals, basic requirements

I've been reading a lot of stuff about using ARM tool chain to build applications for different microcontrollers including ARM cores. Right now, I've been using the fairly easy route with Atmel Studio 7 for xmega devices. I understand that header…
3
votes
2 answers

Aren't pull-up / pull-down options documented for STM32F103?

While trying to configure the GPIOs using CMSIS on a NUCLEO-F103RB board, I couldn't seem to find in the reference manual how one is supposed to choose between internal pull-up and pull-down resistors. Page 160 shows the configuration of the CNF and…
Chi
  • 896
  • 8
  • 29
2
votes
3 answers

STM32 on Registers Setting Up PLL, WWDG fault, Parameter/Setup Issue

STM32F746-Disco, Win 10, Cube 1.8.0; CMSIS-only (no HAL). C. I've been messing around with STM32F746 and learning to do various stuff directly via registers (interrupts, dma no problem). I left configuring clock for the better days and was using…
Ilya
  • 3,478
  • 7
  • 33
2
votes
1 answer

Understanding the incomplete CMSIS PID motor control documentation

I'm trying to understand the CMSIS PID Motor Control. Obvisouly it is a PID controller in parallel structure (instead of in series stucture or some sophisticated structure). It seems like there is no standardized way of how the "gains" are defined…
thinwybk
  • 125
  • 5
2
votes
3 answers

Which libs to use with a STM32F103C6 microcontroller?

I'm very new with ARM microcontrollers and I've been doing a lite lecture of about 4 books to know how to configure this devices to start programming them. First I did a reading an how to use mbed but I think that I need to do some porting or a…
vram
  • 158
  • 12
1
2 3 4