logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[ATmega] Jak zacząć komunikację ATmega z PC: RS232, USB, V-USB?

maras723 07 Sie 2014 21:25 2331 6
REKLAMA
  • #1 13859809
    maras723
    Poziom 9  
    Witam,

    Mniej więcej rok temu rozpocząłem swoją przygodę z mikrokontrolerami, które programuję w C w środowisku Eclipse. Wykonałem kilkanaście różnych układów, jednak teraz chciałbym uruchomić komunikację uC AVR z PC.

    Chciałbym się dowiedzieć od czego zacząć, co będzie najprostsze i odpowiednie. Oczywiście na początku chciałbym nawiązać samą komunikację, napisać prosty program zapalający i gaszący LED z użyciem PC, a potem stworzyć programy np. do obsługi silnika krokowego, odczytywania pozycji i tego typu rzeczy. Programy do obsługi Atmegi chciałbym pisać w C/C++ w środowisku Visual Studio.

    No i teraz pojawia się główny problem, bo nie mam pojęcia jaki sposób połączenia z PC wybrać. W internecie wyczytałem, że może to być komunikacja np. z wykorzystaniem:

    • RS232 i układu MAX232
    • USB i układu FT232
    • Bezpośrednio USB z użyciem V-USB


    Jestem w tym temacie zielony i nie wiem, co wybrać na początek. Wyczytałem, że lepiej nie pchać się od razu w komunikację z USB - z użyciem USART jest prościej. Dlatego wydawało mi się, że najlepszym wyborem będzie podłączenie przez USB i układ FT232, jednak nie wiem czy do komunikacji przez RS232 będę mógł napisać programy w Visual Studio w stosunkowo prosty sposób - ponoć do V-USB wystarczą gotowe biblioteki do komunikacji.

    Reasumując prosiłbym o pomoc w wyborze czegoś na początek, abym mógł się nauczyć i z biegiem czasu pisać bardziej rozbudowane programy wykorzystujące komunikację z AVR. Jak już wspomniałem wyżej głównie chodzi mi o programy sterujące np. silnikiem krokowym, czyli wysyłanie na ATmegę zadanej pozycji, zbieranie jakichś danych z czujników. Do tego wszystkiego chciałbym stworzyć programy okienkowe w Visual Studio. Do RS232 widziałem, że można używać terminalu, ale w tym temacie również jestem zielony. Prosiłbym też o jakieś poradniki, tutoriale, książki.
  • REKLAMA
  • #2 13859889
    tehaceole

    Poziom 28  
    Najprostszy sposób komunikacji typu master/slave opisałem tutaj. Znacznie lepszy sposób opisany jest w książkach Mirka Kardasia. Ale od czegoś trzeba zacząć :)

    Co do sprzętu to IMHO najrozsądniej w Twoim przypadku wybrać opcję nr 2 czyli FT232.

    W załączniku podsyłam Ci jeszcze prostszy przykład niż podlinkowany opis. Archiwum zawiera też projekt prostej aplikacji w Visula Studio (C#).
    ps. kody w załączniku pisane były kilka ładnych lat temu stąd nazewnictwo (np. signal zamiast isr).
  • REKLAMA
  • #3 13859948
    maras723
    Poziom 9  
    Dziękuję za odpowiedź. Książkę Mirka czytałem i jest tam krok po kroku rozpisana komunikacja z wykorzystaniem RS232 od strony AVR, jednak nie bardzo wiem jak odpalić i obsługiwać terminal Windowsa lub jakiś inny. Na początku pobawiłbym się z tym terminalem, a potem spróbował coś popisać w Visual Studio.
  • REKLAMA
  • #5 13860331
    maras723
    Poziom 9  
    A macie może jakiś tutorial do tego Bray Terminal? Co sądzicie o Realterm - lepszy, gorszy, bez różnicy?
  • REKLAMA
  • Pomocny post
    #6 13860332
    tehaceole

    Poziom 28  
    Rzecz gustu. Osobiście przyzwyczaiłem się do realterma. Jak już się odrobinę wgryziesz w Visual Studio podczas zabaw z UART to przekonasz się, że napisanie własnego termianal jest bajecznie proste :)

    Powodzenia :)
  • #7 13882355
    maras723
    Poziom 9  
    Wykonałem schemat płytki z FT232RL wraz z ATmega16 z dodatkowymi wyjściami na goldpinach. Prosiłbym o sprawdzenie schematu. Układ FT232RL jest przedstawiony w taki sposób, ponieważ zakupiłem go z przejściówką na obudowę DIP, a piny rozstawiłem według noty katalogowej.

    [ATmega] Jak zacząć komunikację ATmega z PC: RS232, USB, V-USB? [ATmega] Jak zacząć komunikację ATmega z PC: RS232, USB, V-USB?
REKLAMA