STM32-UART&DMA Receive To Idle Line(Bilinmeyen Rx Büyüklüğü Çözümü)

  Рет қаралды 5,126

Gömülü Mühendis

Gömülü Mühendis

Күн бұрын

Пікірлер: 35
@ademkeles6497
@ademkeles6497 3 ай бұрын
2 haftadır uğraştığım konuyu sonunda bu video ile çözebildim kardeş. Allah ne muradın varsa versin.☺
3 ай бұрын
@@ademkeles6497 Amin kardeş, yardımcı olabildiysem ne mutlu bana :)
@AlgoritmaAkademisi
@AlgoritmaAkademisi 11 ай бұрын
3 gündür bu sorunu çözmeye çalışıyorum. Allah razı olsun hocam.
@volkancicekdal4532
@volkancicekdal4532 2 жыл бұрын
Hoşgeldiniz Bahadır hocam.
2 жыл бұрын
Hoşbulduk Volkan Bey teşekkür ederim :)
@holden_leonidas
@holden_leonidas 8 ай бұрын
kardeşim emeğine sağlık , karşılaşırsak birgun kahveler benden olsun
@hcaltay
@hcaltay Жыл бұрын
Bir parser algoritması geliştiriyorum ve video aşırı faydalı oldu, çok teşekkürler hocam
Жыл бұрын
Yardımcı olabildiysem ne mutlu bana dostum :) İyi çalışmalar.
@hcaltay
@hcaltay Жыл бұрын
@ Hocam çok teşekkürler, hazır sizi bulmuşken sormak istiyorum ben buradaki RxBuffer'ı aşağıdaki gibi bir struct'a dönüştürebilir miyim? #define RxBufferSize 50 uint8_t RxBuffer[RxBufferSize]; typedef struct { uint8_t baslangic; uint16_t emirNo; uint8_t birimNo; uint32_t emirAdresi; uint8_t komut; uint8_t dataTipi; uint32_t data; uint8_t bitis; } Mesaj;
Жыл бұрын
@@hcaltay "union" kullanarak dönüştürebilirsiniz.
@seferideveloper6933
@seferideveloper6933 2 жыл бұрын
Artık aya gidebilirim. Teşekkürler
@AlgoritmaAkademisi
@AlgoritmaAkademisi 11 ай бұрын
Hocam kablosuz uart modülleri ile (Lora, xp gibi) haberleşme yapıyorum fakat verilerin asla kaybolmamasını istiyorum. Yani uzaktan bağlantı gittiğinde 10-20 saniye sonra tekrar bağlanıldığında o verilerin tekrardan gelebilmesini istiyorum. bunu nasıl sağlayabilirim
@ahmetnsahi
@ahmetnsahi 2 жыл бұрын
Yapamayan arkadaşlar init fonksiyonlarından dma yı uart yada başka bir periphal ile kullanıyorsa onun üstüne alması gerek aksi takdirde son biti okuyor gerisinde kesmeyi bırakıyor. cube ide sorunu uzun ugraş sonucu keşfettim ....
2 жыл бұрын
2:00 😅
@ahmetnsahi
@ahmetnsahi 2 жыл бұрын
@ öncelik ayarları bende de yukarıda ama dma init cube ide den dolayı aşagıda kalıyor ondan arkadaşları uyarmak istedim bi kaç yabancı kanalda da yapamayanlar var video için teşekkürler bu arada....
@erkambaki6062
@erkambaki6062 2 жыл бұрын
hocam bu şekilde receive yaparak joyistickden stm32 ye veri alıyorum sorunsuz şekilde lakin if döngüsüyle int halindeki veriyi gpıowrite pin ile if dögüsüne koyduğumda led koşulu dinlemeden aktif oluyor lütfen yardım edin
@by1ronin
@by1ronin 2 жыл бұрын
Geri dönmüşsün abi.
@Fixaj
@Fixaj Жыл бұрын
hocam şu kodu __HAL_DMA_DISABLE_IT(&hdma_usart2_rx, DMA_IT_HT); kullanmak zorunda mıyız. ben interrupt ile okuma yapınca tam olarak yazamadım kodu. kullanmayınca bir sıkıntı çıkar mı varsa makale bu kod hakkında yollarsanız sevirim.
@elomel1000
@elomel1000 2 жыл бұрын
Baho cansın
2 жыл бұрын
😘
@enginkamanl3574
@enginkamanl3574 Жыл бұрын
hocam merhabalar L serisi kullanıyorum void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) bu fonksiyon çağırılmıyor.Rxbuffere veri geliyor ama bu fonksiyona gitmiyor.Neden olur yardım edebilir misiniz?
Жыл бұрын
Merhaba, bahadirayd@gmail.com adresine mail atın. Bendeki kodu inceleyip size geri dönüş yapayım.
@ahmetulaspolat5706
@ahmetulaspolat5706 2 жыл бұрын
özledim
@utkudenizaltiok860
@utkudenizaltiok860 2 жыл бұрын
Hocam iyi günler bir sorunum vardı da yardımcı olabilirseniz sevinirim. ben 2 stm32 yi haberleştirmeye çalışıyorum birinden dma ila transmit ediyorum öbüründen dma ile receive etmeye çalışıyorum. Transmit eden stm32 hiç sorunsuz her 1 saniyede bir textini yolluyor ama receivde şöyle bir sıkıntım var. Receiver olanın "int main(void) kısmında USER CODE BEGIN 2" içine şunları yazdığımda (sizin yaptığınız gibi) " HAL_UARTEx_ReceiveToIdle_DMA(&huart2, received, received_size); __HAL_DMA_DISABLE_IT(&hdma_usart2_rx, DMA_IT_HT); " ve "while (1)" kısmını boş bıraktığımda okumuyor hiç öyle boş duruyor fakat yukarıdaki iki satır kodu "while(1)" içine yazdığımda okuyor. Ama siz while kısmını hiç kullanmamış direk main koda yazmıştınız ona rağmen çalışıyor nedendir acaba ? Şimdiden tşeekkürler.
2 жыл бұрын
Verdğim github linkinde 81.satırdaki fonksiyonu aynı şekilde yazmanız gerekiyor mesaj almayı aktifleştirmeniz için. Siz yaptınız mı ? Bir de DMA_Init yukarda olmalı USART'lardan. github.com/BahadirAydinoglu/STM32_USART_DMA/blob/main/Core/Src/main.c
@utkudenizaltiok860
@utkudenizaltiok860 2 жыл бұрын
@ Hocam kod birebir aynı void kısmı ama dediğim gibi sizin 128. ve 129. satırda yazdığınız yeri mainde yazınca çalışmıyor while da yazınca çalışıyoyor
@elaselas5659
@elaselas5659 Жыл бұрын
çeşke bu cube mx olmasaydı da biraz program yazmayı ögrenseydik :)Bare Metal" (Register Seviyesi) ögrenmeye çalışıyorum. bu arada sıfırdan ögrenmeye çalışıyorum. Register Seviyesi geri dönmeyi düşünüyormusunuz keil kütüphaneler içindeki typedef struct yapılar program içinde nasıl kulanılır acaba :) bu tarz video lar olursacaksa üye olmak çok isterim .
Жыл бұрын
Burdan başlayıp Bare Metale sonradan da geçebilirsin. Daha şevk edebilir seni
@ahmetergin7376
@ahmetergin7376 Жыл бұрын
Hocam video çekmeye geri dönün..
Жыл бұрын
Ah kardeşim çok teşekkür ederim ama inan bana çok yoğunum. İş, yüksek lisans, tübitak projeleri derken gerçekten hiç vakit ayıramıyorum buraya. Bir de belirtmem gerekiyor ki KZbin kazancı hiç tatmin edici değil.
@ahmetergin7376
@ahmetergin7376 Жыл бұрын
@ Haklısınız hocam, udemy platformunda ders vermeyi düşünün derim o zaman. Hayatınızda başarılar.
@MrTough-dw7ot
@MrTough-dw7ot 2 жыл бұрын
Hocam farklı türden veri nasıl alınır? Örneğin hem char türden hem de int türden veri alacağım, nasıl yapılabilir?
@KervanASLAN
@KervanASLAN Жыл бұрын
Int türünden veri almak doğru olmaz, char tipinde alıp daha sonra int'e çevirmeniz lazım. Ayrıca int her sitemde farklılık gösterebilir, o sebeple uint8_t gibi bir şeyler kullanmak doğru olur.
@MrTough-dw7ot
@MrTough-dw7ot Жыл бұрын
@@KervanASLAN haklısın ama şu problemime nasıl bir çözüm üretebiliriz; PC de bir uygulama yaptım ve bu uygulama ile slider bar'ı hareket ettirere motora pwm değeri gönderecem. Aynı zamanda da karakter de göndermem gerekiyor ki motorun hangi yöne döneceğine karar vermek. Ayrı ayrı olarak bu işlemleri yapabiliyorum. Mesela ya sağa ya sola döndürüyorum motoru, Yad motorun hızını da ayarlayabiliyorum. Bu ikisini aynı anda nasıl yapabilirim?
@Muhammed-vm3ep
@Muhammed-vm3ep Жыл бұрын
@@MrTough-dw7ot eğer gelen veri 0 dan büyükse sağ yöne doğru, gelen değerde PWM gönderin, eğer 0 dan küçükse sola doğru, gelen değerin mutlak değerini PWM olarak gönderin :) Bilgisayardan gönderilen verilerde de yön değiştirince sol pwm değerini - olarak gönderirsiniz. Veya başka bir seçenek olarak belirli bir veri paketi kriteri belirler, gelen paketin belirli bytelarını hız belirli bytelarını yön olarak belirleyip bu şekilde de çözebilirsiniz.
SD CARD using SPI in STM32 || Cube-IDE || File handling || uart
16:42
ControllersTech
Рет қаралды 92 М.
How to treat Acne💉
00:31
ISSEI / いっせい
Рет қаралды 76 МЛН
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 19 МЛН
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 75 МЛН
Chain Game Strong ⛓️
00:21
Anwar Jibawi
Рет қаралды 40 МЛН
#10 CubeMx ile STM32F103 Programlama - USART ile Veri Gönderme
14:02
Gömülü Mühendis
Рет қаралды 19 М.
STM32 UART #5 || Receive Data using IDLE Line || Interrupt || DMA
21:40
STM32 UART DMA and IDLE LINE || Receive unknown length DATA
19:26
ControllersTech
Рет қаралды 70 М.
Serial UART with STM32 Microcontroller-Transmit and Receive Data
18:44
DERS-9- UART INTERRUPT  RECEIVE & TRANSMIT
22:10
Kaan Alsancak
Рет қаралды 7 М.
STM32 UART Ring Buffer using DMA and IDLE Line
20:50
ControllersTech
Рет қаралды 23 М.
STM32 - UART Serial Communication | Transmit | Receive | DMA
13:38
UART Interrupt ile Receive ve Transmit Uygulaması  | Ders -30
15:20
Electrobrains
Рет қаралды 1,7 М.
How to treat Acne💉
00:31
ISSEI / いっせい
Рет қаралды 76 МЛН