Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[M32][BAS]Jak wysyłać dane z karty SD do komputera?

guest666 06 Cze 2012 09:07 2477 15
  • #1 06 Cze 2012 09:07
    guest666
    Poziom 12  

    Witam
    Mam układ na atmega32 z podpiętym SD i bez problemu udaje mi się zapisywać all na karcie do pliku np: aaa.txt
    Teraz pytanie...
    W jaki sposób wysłać ten plik w całości do komputera przez RS232 albo jak zrobić żeby można było podłączyć mój układ do USB w komputerze i był widziany(karta SD) jako pamięć zewnętrzna.

    0 15
  • #2 06 Cze 2012 09:24
    tplewa
    Poziom 38  

    Nie wiem jak w Bascomie jest z obsluga USB i czy jest cos takiego. Po RS232 to odczytujesz sobie zawartosc z pliku na karcie bajt po bajcie i wysylasz na UART-a. Mozesz sobie zaprojektowac jakas ramke aby wysylac nazwe i rozmiar pliku, a nastepnie dane.

    Natomiast co do USB to tutaj musisz miec uklad z wbudowana obsluga USB i odpowiednio ustawic deskryptory, obsluszyc endpointy - ot czeka cie przegladniecie dokumentacji USB. Ewentualnie sa gotowe rozwiazania Atmela i LUFA - ale to niestety nie dla Bascoma.

    Wiec cos czuje ze w Bascomie to zostaje ci tylko RS232, jak ma byc to bezpolesnie zrobione.

    0
  • #3 06 Cze 2012 09:35
    guest666
    Poziom 12  

    A czy nie darady zrobić przełącznik na kluczach elektronicznych który będzie przełączał linie karty między AVR a na przykład gotowym czytnikiem kart na usb?? Czy to jest wykonalne?

    0
  • #4 06 Cze 2012 10:35
    30402
    Użytkownik usunął konto  
  • #5 06 Cze 2012 11:36
    guest666
    Poziom 12  

    Witam
    Może i banalna, ale po drugiej stronie w kompie już jest problem bo:
    1. Trzeba sterowniki instalować do adaptera USB-RS232
    2. Trzeba napisać program który będzie odbierał plik z karty SD i zapisywał na dysku
    3. Trzeba to odpowiednio skonfigurować, żeby ktoś to umiał obsłużyć..

    Z zaleta Mass Storage jest duża.... wszystko z automatu się dzieje!

    Dodano po 43 [minuty]:

    guest666 napisał:
    A czy nie darady zrobić przełącznik na kluczach elektronicznych który będzie przełączał linie karty między AVR a na przykład gotowym czytnikiem kart na usb?? Czy to jest wykonalne?


    A więc?? Teoretycznie można to zrealizować?

    0
  • #6 06 Cze 2012 12:04
    tplewa
    Poziom 38  

    Jesli chcesz uzyc czytnika to tak mozna zrobic:


    1. Jesli pojawi sie napiecie na USB z PC podajesz sygnal na wejscie procesora
    2. Procek daje sygnal dla buforow ktore przelaczaja karte z procka do czytnika
    3. Po przelaczeniu podajesz zasilanie na czytnik


    no i to chyba wszystko. Przy zaniku zasilania z USB robisz w odwrotnej kolejnosci :)

    0
  • #7 06 Cze 2012 12:47
    guest666
    Poziom 12  

    Witam
    Niby tak właśnie chciałem zrobić, tylko pytanie, czy klucz elektroniczny jakiś CD4XXX to pociągnie

    0
  • #8 06 Cze 2012 23:28
    tplewa
    Poziom 38  

    Zerknij na MC14053 - stosuje sie z powodzeniem na magistrali SPI....

    0
  • #9 07 Cze 2012 08:17
    guest666
    Poziom 12  

    Witam
    Czy żeby się przełączać między AVR a adapterem SD na USB, trzeba odcinać wszystkie sygnały z karty: DAT0, DAT3, DI, CLK oraz VDD(+) ?? Czy coś jeszcze?

    0
  • #10 07 Cze 2012 14:40
    tplewa
    Poziom 38  

    Nie mam pojęcia to zależy jak pracuje dany czytnik który zastosujesz. Ty z AVR-a obsługujesz kartę w uproszczony sposób po SPI - czytnik wcale tak nie musi i to też musisz rozwiązać. Bez testów niestety się nie obejdzie wiec będzie potrzeba włożyć w to trochę inwencji twórczej.

    Generalnie masz już powiedziane jak to wszystko można rozwiązać - teraz pora na testy i zabawę z twojej strony...

    0
  • #11 07 Cze 2012 15:03
    guest666
    Poziom 12  

    Witam...
    testy muszę dość szybko wykonać..
    Zastosuje taki czytnik kart:
    [M32][BAS]Jak wysyłać dane z karty SD do komputera?
    Przełączanie między kartami zrobię na CD4066 x 2szt.

    0
  • #12 16 Lis 2012 09:42
    guest666
    Poziom 12  

    Witam
    Powyższa metoda którą wykonałem działa na przekaźniczkach miniaturowych z powodzeniem... ( 5 przekaźników z podwójnym stykami - czyli 10 obwodów)
    Problem jest taki że wszystko zajmuje troche miejsca, włącznie z przejściówką,

    dlatego proszę o pomoc w napisaniu programu, który przez złącze RS (UART) będzie wypluwał wszystko co jest zapisane w pliku na karcie np o nazwie pomiar.txt
    Chodzi o to aby w kompie mieć ten plik w takiej samej postaci.
    Proszę o pomoc
    Z góry dziękuję
    Pozdrawiam

    0
  • #13 21 Lis 2012 19:44
    Procesor32
    Poziom 12  

    guest666 napisał:
    5 przekaźników z podwójnym stykami - czyli 10 obwodów

    Przekaźniki opóźniają sygnał z AVR do PC.
    Kolega tplewa dobrze napisał.
    Są mniejsze straty na magistrali SPI.
    Jeśli chodzi o AVR i PC to kolejność jest następująca:
    1.Otwieram plik TXT w trybie binarnym
    2.Wysyłam zawartość pliku do PC przez UART (z buforem)
    3. Aplikacja na PC odczytuje mi to, co wyśle AVR.
    4 Aplikacja po stwierdzeniu braku błędów zapisuje plik TXT.

    0
  • #14 22 Lis 2012 22:42
    superduo
    Poziom 13  

    A nie lepiej wykorzystać USB-CDC lub HID z funkcją pamięci masowej? Coś ala pendrive z systemem plików po podłączeniu procka do kompa. Przy okazji z urządzeniem jest odrazu łączność (po HID albo po COM). Działa to bardzo fajnie na PIC18F.

    0
  • #15 04 Gru 2012 14:41
    guest666
    Poziom 12  

    superduo napisał:
    A nie lepiej wykorzystać USB-CDC lub HID z funkcją pamięci masowej? Coś ala pendrive z systemem plików po podłączeniu procka do kompa. Przy okazji z urządzeniem jest odrazu łączność (po HID albo po COM). Działa to bardzo fajnie na PIC18F.


    Kolego rozwiń temat...
    Chodzi o to że AVR podłączamy pod kompa przez USB i komp go widzi jako HID??

    0
  • #16 04 Gru 2012 15:43
    tplewa
    Poziom 38  

    Kolega pisal akurat o PIC-ach, ale tez sa i AVR-y z USB i tez smigaja spoko :)

    Zreszta mozna dac inny dowolny procek z USB, ale niestety w takich wypadkach czeka cie przesiadka z Bascoma na C... chyba ze w Bascomie pojawi sie wsparcie dla AVR-ow z USB...

    Dla AVR-ow jest jeszcze rozwiazanie USB czysto w software, ale to tez niestety C... no i ma swoje wady...
    http://www.obdev.at/products/vusb/index.html

    Zreszta jak juz stosowac USB to robic implementacje mass storage, w ostatecznosci wirtualny port COM... HID to takie sobie rozwiazanie w tym wypadku ze wzgledu na potrzebe oprogramowania tego od strony PC, oprogramowac port COM jest znacznie latwiej niz urzadzenie HID. Natomiast mass storage nie wymaga jakiegokolwiek oprogramowania od strony PC... masz dostep do plikow i tyle :)

    0
  Szukaj w 5mln produktów