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

Attiny 2313 zapis danych z pomiaru temperatury

pawli52 24 Lis 2008 11:55 2799 10
REKLAMA
  • #1 5776875
    pawli52
    Poziom 10  
    Witam

    Jestem początkującym elektronikiem.
    Zrobiłem sobie ostatnio pomiar temperatury na Attinie 2313.
    Chciałbym teraz zapisać temperatury 24h na dobę i potem przesłać je do komputera.
    Nie wiem jak się do tego zabrać, właściwie chodzi mi o to gdzie zapisać zmierzone dane, do pamięci Flash?
    Jak przesłać dane do komputera?RS232?

    Marcin

    Przeniosłem do własciwego działu.
    [zumek]
  • REKLAMA
  • #2 5777004
    Dr.Vee
    VIP Zasłużony dla elektroda
    Zapis pomiarów w wewnętrznej pamięci eeprom (masz 128 bajtów, przy 1 bajcie na pomiar możesz zapisać pięć pomiarów na godzinę).

    Co do przesyłania danych do komputera to RS jest dobrym rozwiązaniem (poczytaj o układzie MAX232).

    Pozdrawiam,
    Dr.Vee
  • REKLAMA
  • #3 5777203
    n01x
    Poziom 12  
    Dr.Vee napisał:
    Co do przesyłania danych do komputera to RS jest dobrym rozwiązaniem (poczytaj o układzie MAX232).




    Dodatkowo można kupić kabelek-przejściówke USB-RS232 i mamy rozwiązany problem braku portu szeregowego w laptopie.
  • #4 5777215
    pawli52
    Poziom 10  
    Dziękuje za odpowiedź.

    Co jeśli chciałbym mierzyć temperaturę co 1 minutę?
    Nigdy nie podłanczałem pamięci zewnętrznej.

    Możecie coś doradzić?

    Pozdrawiam

    Marcin
  • REKLAMA
  • #5 5777245
    Przemek_Kuchta
    Poziom 20  
    Proponuję zastosować pamięci serii 24Cxx, gdzie xx to 01, 02, 04, 08, 16 itd kb, w zależności od ilości danych które musisz zapisać. Stosunkowo tanie i sterowane za pomocą magistrali I2C.

    Jest jeszcze inna możliwość, ale duużo bardziej skomplikowana. Zastosować np.: system ethernut i przesyłać dane po przez sieć ethernet do jakiejś bazy danych na serverze. Ale to już nie jest takie hop, choć rozwiązanie jest bardzo przyszłościowe.
  • #6 5777285
    skynet_2
    Poziom 26  
    a może inaczej ?
    zdefiniuj tablicę 2 wymiarową[60*24] 1440 elementową
    uint8_t tab[60][24];

    i przy każdym pomiarze zapisujesz dane do kolejnej komórki tablicy, jak chcesz odczytać po 24h to możesz zrobić funkcję z podwójną pętlą for która ci dane odczyta i prześle kolejno do PC. Jedyną wadą jest to że jak wyłączysz µC to dane tracisz ale IMHO to jest prostsze rozwiązanie.

    Pozdrawiam
  • REKLAMA
  • #7 5777313
    Przemek_Kuchta
    Poziom 20  
    Popraw mnie jeśli się mylę, ale mamy do dyspozycji 128B pamięci eeprom i 128B pamięci sram. Jak by tablica miała stałe wartości, to można by umieścić ja w pamięci flash, ale tu zawartoś tablicy będzie zmieniana.
  • #8 5777339
    Dr.Vee
    VIP Zasłużony dla elektroda
    Kolego skynet_2, życzę sukcesu w upychaniu tablicy 1440 bajtów w 128 bajtach ramu :]

    Kolega pawli52 nieśmiale zapytał czy RS-232 będzie dobry do komunikacji z PC... W takiej sytuacji proponowanie mu podłączenia czujnika temperatury na attiny2313 do ethernetu i bazy danych chyba nie jest najszczęśliwszym pomysłem?

    pawli52 napisał:
    Nigdy nie podłanczałem pamięci zewnętrznej.

    Kiedyś musi być ten pierwszy raz ;)

    Pozdrawiam,
    Dr.Vee
  • #9 5777345
    zumek
    Poziom 39  
    skynet_2 napisał:
    ... IMHO to jest prostsze rozwiązanie.

    Tylko skąd u diabła wytrzasnąć, 1440B RAM-u w ATTiny2313 :?:
    Dr.Vee mnie uprzedził :-P

    Poza tym, autor podał tak skąpe informacje, że właściwie nie wiadomo, co doradzić.
    Np.
    a)Jakiego czujnika używa do pomiaru temperatury ?
    b)Z jaką rozdzielczością mają być zapisywane wyniki pomiaru ?
    c)Zakres temperatur.
    d)Jakiego języka programowania używa ?
    i.t.d.

    Piotrek
  • #10 5777411
    skynet_2
    Poziom 26  
    Dr.Vee napisał:
    Kolego skynet_2, życzę sukcesu w upychaniu tablicy 1440 bajtów w 128 bajtach ramu :]


    Hehe to jednak nie jest najleprze rozwiązania :D

    Za bardzo się rozpędziłęm ;]

    A z ciekawości spytam co by się stało gdyby taki program skompilować i odpalić na procu ? bo odziwo na symulatorze chodzi i zajmuje 168 bajtów.
  • #11 5777463
    Dr.Vee
    VIP Zasłużony dla elektroda
    Z dużym prawdopodobieństwem program "idzie w buraki". Pomińmy zapis i odczyt nieistniejących lokalizacji w pamięci ram - powiedzmy, że nic się wtedy nie stanie. Ale za to w pewnym momencie procedura zapisująca pomiary do tablicy nadpisze dane przechowywane na stosie (np. adres powrotu z funkcji/przerwania). Procesor wykonuje skok pod adres zależny od temperatury... a co dalej to już zależy od zmierzonej temperatury ;)

    Pozdrawiam,
    Dr.Vee
REKLAMA