Skocz do zawartości

Zmiana zapisanych argumentów bez ponownego wgrywania programu


Pomocna odpowiedź

(edytowany)

Coś mi się nie wydaje że aż tyle pamięci  trzeba bo autor wspominał coś na początku o dwóch substancjach i zestawie danych dla każdej, a tych danych ile może być? 100bajtow?

Edytowano przez farmaceuta
2 minuty temu, ethanak napisał:

A nie są to przypadkiem dwie substancje i tylko dane do kalibracji?

No tak by wynikało z pierwszego posta...plus pewnie wynik kalibracji do zapisania..@moszeusz daj odpowiedź bo się niecierpliwym😜

(edytowany)

Uściślam: zmiennych będzie góra 10 (praktycznie - 5 może 6), ale ich wartości będzie niemal nieskończenie wiele.

Edytowano przez moszeusz

Domyślam się że chodzi o tablicę która będzie powiększała swój rozmiar. Zmienne wrzuć do struktury aby łatwiej można było się tym posługiwać, dopiero tę strukturę zapisuj w całości. 

(edytowany)

Nie, źle mnie zrozumieliście. W danym momencie będzie tyle wartości ile zmiennych, ale tych wartości w przeciągu X czasu będzie powiedzmy bardzo dużo. Po kalibracji wartości po prostu się nadpisują i ZAWSZE zapisanych ich będzie tyle co zmiennych. Chodzi o to, że tablica (o ile dobrze rozumiem) ma składać się ze wszystkich potencjalnie możliwych wartości dla argumentów, ale tych wartości będzie bardzo dużo, przez co tablica mija się z celem. Chyba, że nie rozumiem idei tablicy. Np: aktualnie mam dane zapisane: pH1 = 2, SEM1=-120, pH2 = 7, SEM2 = 0,2, T = 290, ale za jakiś czas, po wykonanej kolejnej kalibracji, będzie to już np. pH1 = 3, SEM1=-100, pH2 = 7, SEM2 = 0,3, T = 293, poprzednie wartości nie są mi potrzebne, bo za każdym razem, przy każdej kalibracji się zmieniają.

Edytowano przez moszeusz
41 minut temu, moszeusz napisał:

Nie, źle mnie zrozumieliście. W danym momencie będzie tyle wartości ile zmiennych, ale tych wartości w przeciągu X czasu będzie powiedzmy bardzo dużo. Po kalibracji wartości po prostu się nadpisują i ZAWSZE zapisanych ich będzie tyle co zmiennych. Chodzi o to, że tablica (o ile dobrze rozumiem) ma składać się ze wszystkich potencjalnie możliwych wartości dla argumentów, ale tych wartości będzie bardzo dużo, przez co tablica mija się z celem. Chyba, że nie rozumiem idei tablicy. Np: aktualnie mam dane zapisane: pH1 = 2, SEM1=-120, pH2 = 7, SEM2 = 0,2, T = 290, ale za jakiś czas, po wykonanej kolejnej kalibracji, będzie to już np. pH1 = 3, SEM1=-100, pH2 = 7, SEM2 = 0,3, T = 293, poprzednie wartości nie są mi potrzebne, bo za każdym razem, przy każdej kalibracji się zmieniają.

No to robisz tablice struktur ile ich Ci tam trzeba (np. 5) zbierasz te sample czy co tam ma być, wyciągasz średnia lub coś innego i zapisujesz dana strukturę do eeprom

(edytowany)
Dnia 29.12.2022 o 19:59, moszeusz napisał:

Chodzi o to, że tablica (o ile dobrze rozumiem) ma składać się ze wszystkich potencjalnie możliwych wartości dla argumentów

Nie, dla tablicy, w czasie jej tworzenia masz znać ilość elementów, czyli np. że zestaw ma zawierać 10 danych, musisz znać też zakres danych by dobrać typ zmiennych w tablicy. To czego szukasz to tablica, ograniczeniem jest tu typ danych, musi być taki sam dla całej tablicy, ale dla danych, które przedstawiłeś wystarczy typ int. Potrzeba, że poprawisz parę równań używanych w programie, a takie zmienne jak SEM2 zapiszesz jako 3 zamiast 0.3, ale w obliczeniach dodasz SEM2/10, jak to ma być super dokładne to możesz w trakcie obliczeń pobrać z tablicy SEM2=3, przypisać ją do zmiennej float sem2f=SEM2/10.0 i w obliczeniach użyć sem2f. Poza tym są przedrostki  k, m, n, czegoś może być kilo, mili, nano, ale też decy i cento, deka i hekto. Można zapisać temperaturę jako 21.22 stopni C i jako 2122 centostopni C, a w drugim przypadku mamy tą samą rozdzielczość/dokładność używając int zamiast float. W komputerach int jest dokładnie opisaną liczbą, float to przybliżenie, w którym zawsze coś umyka, jak nie stoi się przed wylotem lufy karabinu to lepiej użyć int zamiast float.

Edytowano przez kaczakat
(edytowany)

@moszeusz pytanie zasadnicze: jak często będzie dokonywana kalibracja? Chodzi o wybór flash czy doklejony mały eeprom.

@kaczakat tu bardziej pasuje struktura a nie tablica. W tym przypadku spokojnie można użyć float, i tak nie straci się dokładności (że o double już nie wspomnę bo to overkill).

Edytowano przez ethanak
  • Lubię! 1

Kalibracja będzie przeprowadzana raczej rzadko, w przypadku gdy sprawdzenie wyjdzie negatywnie (np. zamiast pokazać pH = 7 pokaże pH = 6,5). Może to odbywać się raz na miesiąc, a może też raz na tydzień (raczej nie częściej).

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...