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

[Rozwiązano] Bascom: Manipulacja danymi z plików .txt na ATMEGA 2560, tablice, przerwania, karta SD

marekms1 06 Lut 2023 09:32 546 3
REKLAMA
  • #1 20424691
    marekms1
    Poziom 13  
    Program w bascom'ie, Procesor ATMEGA 2560.
    Program ma działać następująco: po wywołaniu przerwania pobierz daną z pozycji nr x z pliku 1 , pobierz daną z pozycji y z pliku 2, wykonaj dodawanie i ustaw port wyj. Program działa ale mam problem z ilością danych, (jeden plik (. txt) to 720 danych jednobajtowych), przy czym mam kilka takich zestawów. Jak umieścić te dane w programie aby nie przepisywać ich ręcznie. Myślałem o READ ale nie wiem jak spowodować wybranie konkretnych bajtów z umieszczonych po DATA danych. zastanawiam się nad następującym rozwiązaniem: pobierz 720 danych umieszczonych po DATA następnie zapisz do tablicy PLIK1, potem to samo z danymi z pliku2 do tablicy PLIK2. Dalej to proste ale czy takie rozwiązanie zadziała i czy starczy pamięci? Po za tym dobrze by było umieścić zestawy danych na np karcie sd aby nie było konieczności kompilacji programu po zmianie, czy dodaniu kolejnego zestawu danych.

    Marek
  • REKLAMA
  • Pomocny post
    #2 20424725
    pawlik118
    Poziom 32  
    Atmega2560 posiada 256kB pamięci. Załóżmy, że program zajmie 25k, zostaje jeszcze 225kB. Zatem, Twoich "plików" wejdzie 225 / 0,72 = 312 plików po 720 bajtów.
    Dostęp do danych przez funkcję lookup https://avrhelp.mcselec.com/index.html?lookup.htm
  • REKLAMA
  • Pomocny post
    #3 20425437
    bart-projects
    Poziom 29  
    A sprawdzałeś w ogóle ile masz SRAM w tej Atmedze? 8KB więc starcza na różne sprawy a takie dwa "pliki" to u Ciebie tylko 1,5KB
    Jeśli za każdym razem to inny "plik" to to nie ma większego sensu i faktycznie lepiej użyć lookup.

    Co do karty SD to bezproblemowo. AVR DOS potrzebuje 2x512B SRAM. Można też czytać w takim pliku nawet tylko jeden bajt jeśli zna się jego pozycję a plik otworzy w trybie binarnym.
    Na pewno wygodniej się edytuje taki pliki na PC`ecie no i jest możliwośc ich zmiany oraz dodawania bez kompilacji i flashowania Atmegi.
  • #4 20463811
    marekms1
    Poziom 13  
    Użycie lookup rozwiązało problem.

    Marek
REKLAMA