• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
MAX31865 - prędkość pomiaru PT100/1000
#11
Zajrzyj do PDF max31865, pojedyncza konwersja ma trwać ponad 60ms, można wyzwolić pomiary ciągłe w trybie 60/50Hz i wtedy to jest to te 20ms. Ale to tylko oznacza, że nie powinieneś spodziewać się nowego odczytu z większą częstotliwością, a nie że ma zabierać z loop 20ms. Biblioteka Adaruit jest OK jako demo do modułu, który sprzedają - kupujesz, odpalasz, sprawdzasz, działa/nie działa. Poszukaj innej. Czas tracony na odczyt z max'a powinien wynosić kilkadziesiąt us, teraz tracisz 4ms i nie wiadomo co odczytujesz - przy pierwszym pomiarze to jest dłużej bo ma ustawić tryb pomiaru, ustabilizować napięcia, odłączyć się od zasilania, itp.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
#12
(24-05-2019, 17:12)kaczakat napisał(a): Czas tracony na odczyt z max'a powinien wynosić kilkadziesiąt us
Święte słowa, choć robiąc to porządnie w IRQ będzie trochę dłużej ale nie blokuje programu głównego. Używając DMA jest jeszcze lepiej. W ten sposób, "wysłanie" danych do 128led WS2812 zajmuje ok 300ns na niezbyt szybkim uC. Niestety, RAM jest potrzebny.


Dziwi mnie brak DMA w większości uC 8-bit, które było "powszechnie" stosowane w popularnym Z-80 ale także 8080. W 8080 układ wizyjny (zależy jaki), bez DMA mógłby nie działać. Fakt, że DMA "lubi" RAM więc w 8051 nie było większego sensu ale w takim np Mega1284? Dlaczego nie ma DMA? DMA dodano w Xmega ale było to za późno, ARM-y praktycznie wyparły Xmega.
 
Odpowiedź
#13
(24-05-2019, 17:12)kaczakat napisał(a): ...Czas tracony na odczyt z max'a powinien wynosić kilkadziesiąt us, teraz tracisz 4ms i nie wiadomo co odczytujesz...

Może mieć znaczenie, że używam software SPI. Sprzętowe mam zajęte przez SD.
Nie wiem, czy to generuje jakieś opóźnienie, zestawię sobie drugą płytkę, tylko
do testowania PT100/1000 na sprzętowym i porównam.

Tak czy owak 4ms to już nie problem, a pomiary wyglądają poprawnie.
Oczywiście trzeba jeszcze wyznaczyć charakterystykę termometru,
ale to już inna para gumowców Wink

PS. Done.

Na hardware SPI czas odczytu to <> 620us. Sprawdzę czy coś da się jeszcze zmienić...

Teraz muszę przenieść SD na software SPIWink

PWL
 
Odpowiedź
#14
Nie widzę też problemu  aby na sprzętowym SPI pracowała karta SD jak i inne układy.  
 
Kaczakat:
Panie ES2, proszę pisać bez zbędnej złośliwości. Jest Pan na forum Arduino, to oczywiste, że programują tu amatorzy wykorzystujący Arduino. Wystarczyło napisać, że sprzętowe SPI można wykorzystywać dla więcej niż 1 SLAVE. Do pomiaru temperatury wystarcza Attiny13, ARM i DMA też nie jest potrzebne. Usunąłem zbędne uwagi i poprawiłem Panu literówki - nikt nie jest doskonały?
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości