Wpis z mikrobloga

Świeżo co ale udało mi się i wszystkim polecam tą zabawę. Na pcb https://www.farnell.com/datasheets/2007959.pdf czyli uC Cortex-M7 300MHz + phy 100MB udało mi się uruchomić komunikację między komputerem a uC. Wysyłam nieco ponad 1000 pakietów na sekundę, po 1000 bajtów każdy, uC sprawdza czy odebrałem właściwe dane i jeśli tak to ustawia tam 1. Takie minimum logiki do wykonania na danych. uC odsyła zmieniony pakiet (z policzoną sumą kontrolną dla nagłówka IP). Wszystkie pakiety lecą przez router.
Tak właściwie komunikacje jest w trybie halfduplex bo każda strona czeka na drugą, więc teoretycznie można dwa razy szybciej, bez czekania.
A tak właściwie to taką ramkę można skopiować do bufora i z DMA pogonić do I2S i nie odsyłać całej tylko brać następną. A ponieważ z kodekami miałem już do czynienia to zanosi się na budowę ethernetowej karty dźwiękowej. Trzymajcie kciuki.

Polecam taką zabawę. Do ogarnięcia ethernetu na tym poziomie wystarczy angielska wiki. Możliwości są ogromne a przykłady działają.

Obecnie 1000 pakietów po 1000B na sekundę daje 1MB na sekundę czyli 8Mbps. Niby szału jeszcze nie ma ale żaden RS ze swoimi 115kbps nie podlatuje.

#elektronika #atmel #mikrokontrolery
A.....k - Świeżo co ale udało mi się i wszystkim polecam tą zabawę. Na pcb https://ww...

źródło: comment_1XlPhQ4ex4TppHPZSa2UmY7Sp10G1MAb.jpg

Pobierz
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Analityk: z ciekawości - czemu nie STM32F7/STM32H7? Są boardy nucleo, tanie jak barszcz. Z F7 na standardowych 216 MHz udało mi się osiągnąć 7MB/s (bezpośrednio z komputerem, brak switchy po drodze). Podejrzewam że z optymalizacją poszło by więcej. Pisałem bez HALa, wszystko na rejestrach.
  • Odpowiedz
@MrDarkenRahl: Miałem kiedyś do czynienia ze środowiskiem do stm'a i nie przypadło mi do gustu. To co oferuje Atmel na poziomie IDE i Atmel Studio Framework jest bardzo dobre. I dokumentacja jest czytelna. To główne powody.
  • Odpowiedz