Witam.
Chodzi mi po głowie uruchomienie 1-Wire pod Linuxem.
W sumie pomysł dla sportu ale zawsze do czegoś kiedyś komuś może się przydać.
Jak wiadomo obsługa z poziomu Linuxa portów gpio nie należy do najszybszych i tutaj pojawia się pytanie. Chciałbym napisać program w C wykorzystując poniższe funkcje
Czy wówczas on schodzi do sprzętu i ustawia to, że tak powiem w czasie rzeczywistym czy faktycznie zapisanie do konkretnego rejestru konkretnej wartości twa dużo dłużej niż powyższa instrukcja C - jak z poziomu Linuxa:
Powiedzmy że częstotliwość 200kHz byłaby zadowalająca bo minimalny czas to jak dobrze pamiętam 15us.
Chyba że jest jakaś inna koncepcja na okiełznanie 1-Wire w Linuxie.
Chodzi mi po głowie uruchomienie 1-Wire pod Linuxem.
W sumie pomysł dla sportu ale zawsze do czegoś kiedyś komuś może się przydać.
Jak wiadomo obsługa z poziomu Linuxa portów gpio nie należy do najszybszych i tutaj pojawia się pytanie. Chciałbym napisać program w C wykorzystując poniższe funkcje
Code:
static inline u32 at91_read(unsigned int offset)
{
return __raw_readl(tc_base + offset);
}
static inline void at91_write(unsigned int offset, u32 value)
{
__raw_writel(value, tc_base + offset);
}
Czy wówczas on schodzi do sprzętu i ustawia to, że tak powiem w czasie rzeczywistym czy faktycznie zapisanie do konkretnego rejestru konkretnej wartości twa dużo dłużej niż powyższa instrukcja C - jak z poziomu Linuxa:
Code:
root@MMnet:/# echo "low" > /sys/class/gpio/gpio103/direction
root@MMnet:/# echo 1 > /sys/class/gpio/gpio103/value
Powiedzmy że częstotliwość 200kHz byłaby zadowalająca bo minimalny czas to jak dobrze pamiętam 15us.
Chyba że jest jakaś inna koncepcja na okiełznanie 1-Wire w Linuxie.