Receive data using UART in STM32 || Poll || Interrupt || DMA

preview_player
Показать описание
Рекомендации по теме
Комментарии
Автор

Hello Controllers Tech, I don't know if you can see this, but there is one more detail that can be mentioned:
CubeIDE sometimes generates the MX_DMA_Init() after the corresponding UART init function.
This leads to errors that won't even show up in the handle.
The solution to this is reordering the init functions from the code generator app, in Project Manager/Advanced Settings.

tonyyang
Автор

wow man, Just wanted to say thank you for this video. really appreciate this.!

yaghiyahbrenner
Автор

Great video. This shows everything I needed.

cassianocampes
Автор

잘 보았습니다. 감사합니다.
I appreciate your tutorial video. Thank you! ^^

eleckim
Автор

I got the demo program.Thank you very much.

deiwxlh
Автор

Awesome video!!! Please make similar for I2C communication. Thank you!

branislavbaran
Автор

Awesome! really helpfull. Love the music

macasas
Автор

Thank you very much! I was using POLL recieve and had exact issues as shown, IT or DMA will solve my problem

poijmc
Автор

Why didn't you configure 'dma circular' on cubemx?

onurdemir
Автор

If the stm32 is the primary cpu, and it controls the booting of a dm368 (in nand boot mode), is it possible to use the uart port on the stm32 to reflash the dm368 nand, or change the bootsel of the dm368 to uart from nand?

RaggooCollective
Автор

Hallo can it works with xbee pro s1 module?
thanke you

naftidhia
Автор

Thank you for making this video! It is very basic and easy to understand. But I am curious if there is more than the "Half Data" function differnece between IT and DMA. But your video already answered a part of my questions about this topic. Maybe I still have to look into the HAL documentation ... :)



On suggestions about your videos: I am no "youtube maker expert" but I have seen videos who used the subtitles for adding text or just made a overlay text hardcoded into the video instead of using the editor. Even if using the editor slowing the "information stream" a lot, it still breaks the flow (sorry if i am not clear with this, i am not a native english speaker).


Oh and if there is a way to increase the transparency of the yellow circle around the coursor, it would make the text beyond more visible, which would be great. (maybe it has something to do with video compression here?)


Well thanks anyway and keep up the great work :)

Stimmenhotel
Автор

Never mind. After hours I realized you have to attach the ttl adapter TX and RX to the RX and TX pins, not the other way around

DereC
Автор

I did not succeed the led gets to flash more in debug mode does not receive data !!! helps my board and the stm32f767zi

artedesing
Автор

My UART is not receiving, and does not seem to change the data types at all. Any help? My IDE (stm32) does not allow for the viewing of live variables which kinda sucks

DereC
Автор

small request from me . please post videos on Quectel mc60 modules . because there are not much videos on them . if you have time please give a try.

ShaikJaavid
Автор

Sir, I am trying to receive gps data each second using interrupt function.What I understood is that, I had enabled the global interrupt in stm32 configuration for uart3, and whenever the interrupt triggers, the programs goes to the callback function which is hal_uart_rxcpltcallback.The program reaches the function..I do some processing again and then enable the interrupt again..The next sexond when the data arrives at 100ms after a pps signal(reference signal marked for 1 second), again interrupt is triggered, program goes to callback function, does the particular function, comes out of callback function.This happens in every 100th -130th millisecond of each second.I understood that whenever the codes enters the callback, , the interrupt is diabled and we need to enable the interrupt again to receive the next data..Altogether 300bytes of data arrives from 100 to 130milliseconds..After 130 milisecond, if suppose some random data arrives, the interrupt may still trigger, since each time i enable the interrupt while coming out of callback function..how to stop receing the interrupt after 300millisecond? Can i use abort function?? Also can you please explain What is the differnce between isr function and callback function??Looking forward for your reply.

pdeepakjayan
Автор

Hello ControllersTech,
Thanks a lot for this video, i've got a question:
_ |s there a way to make uart_it in none circulare mode i want my data to starts writings from the beginning like the Poll mode?
I will be so grateful!

chakrounimen
Автор

Great Video😊
Can you tell me please how can I delete the received data from Rx_buffer and to receive new data from Rx_buffer[0] ?

yassin
Автор

It was a great video, it helped me so much. I have a question, we are giving size of buffer to fill in the buffer for interrupt receive, but if the length of data which we are receiving is not known then how to receive it? i mean like if we write in API to receive 8 bytes of data and we got only 4 bytes then next time when we receive 4 bytes again then in the previous buffer the data will be written at position 4-7. how to solve this issue? thanks in advance

krishnakulkarni