Tagged: usart

STM32 tutorial: Efficiently receive UART data using DMA 4

STM32 tutorial: Efficiently receive UART data using DMA

U(S)ART peripheral can work very good by using RXNE (Receive Not Empty) for each byte separatelly. In this case, every received byte is manipulated by CPU by jumping to appropriate UART interrupt service routine. To allow CPU to do fully other job when we receive UART data at high speed we can use DMA (Direct Memory Access) to offload CPU. We can think of DMA as co-processor who can only transfer data between different memories, in our case between peripheral data register UART...

HAL Library 32- DMA extension for USART on STM32Fxxx 2

HAL Library 32- DMA extension for USART on STM32Fxxx

USART DMA library allows you to send data via USART in non-blocking mode. It is designed only for TX mode, because my USART library already uses RX interrupts and DMA RX is not necessary for that purpose. This library is extension for my USART library. It requires USART library as basic to make this to work. Library Read more about HAL libraries Features USART extension for non-blocking TX mode Supports all U(S)ART peripherals on STM32F4 and STM32F7 device Supports TX...

How to use scanf with USART 3

How to use scanf with USART

I’ve already posted how to use printf (send data to stream) on STM32Fxxx devices. Recently, I received a comment, how to use scanf function to read strings and convert them from USART. Here is a little bit more to do before it will work correct. When you call scanf function, it calls subfunction fgetc, where you return a character. This function is called until it does not return EOF (-1). And it is called very fast. If you check in this function, if...

HAL Library 07- USART for STM32Fxxx 54

HAL Library 07- USART for STM32Fxxx

Here it is. UART library for HAL based libraries. If you don’t know, how UART work on STM32Fxxx devices, then you might take a look at my first library, where I also explained how to used it. This library works successfully on F4 and F7 based devices for now. I will add support for F0 too as soon as possible. Library Read more about new HAL libraries Features Supports up to 8 UART peripherals at a time Interrupt driven RX...

All STM32 HAL libraries 101

All STM32 HAL libraries

In this section, I will write all libraries based on HAL drivers from ST. If you see this first time, make sure you read this post first about how structure of my libs looks like! License All my softwares are published under MIT license. This means that you are allow to modify, share and use my source and other stuff in personal or commercial use. If you modify source code, it has to stay under GNU GPL v3 license too. I...

Library 55- Extend USART with TX DMA 11

Library 55- Extend USART with TX DMA

Here is a great feature for USART. I’ve made an extension library for USART (and for SPI will come soon) to use DMA for TX data using USART. This can be very handy to use if you have a lot of work and not so many time using your STM32F4 device. I was thinking first about adding DMA RX functionality for USART too. But then I realize that my USART library by default uses RXNE (RX Not Empty) interrupt and...