-
Data: 2012-10-09 12:50:29
Temat: Re: ATmega, jak zaprogramować narastanie wartości sygnału, bez użycia operacji zmiennoprzecinkowych?
Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 09.10.2012 12:19, Robbo wrote:
> Czas będzie zawsze liczony od zera. Prąd początkowy także będzie
> narastać od zera.
> Więc jeśli I(S0) = 0, S0 = 0. Zatem powyższe formuły można uprościć do:
> I(s) = I(Se) * (s/Se)
> I(s) = I(Se)/Se*s
Dokładnie. Ale tak długo jak zmiany są liniowe to wystarcza raz policzyć
iloraz różnicowy.
>
>> Przekształcasz to sobie na:
>> I(t)=I(T0)+t*dI
>> I(t)=I(t-1)+dI
>>
>> Raz wyliczasz iloraz różnicowy dI, potem masz w każdym cyklu jedno
>> dodawanie i jeden shift.
>
> Tu bym prosił o wyjaśnienie. Mało spałem i chyba nie do końca myślę,
> dlatego proszę o wybaczenie.
>
> Czy dI będzie wartością zmiennoprzecinkową?
Stałoprzecinkową, np. o 16 bitach części całkowitej i 16 po przecinku:
uint16_t I=0;
uint32_t I_accu=0;
uint32_t dI;
time_t last_time=0;
void new_setting(/**/){
dI=(I_target<<16)/time_slices;
}
void calc(time_t t){
I_accu+=dI*(t-last_time);
I=I_accu>>16;
last_time=t;
}
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- William Shockley, co-inventor of the transistor
- Gazowy kocioł CO regulacja cyklingu i regulacja pogodowa
- Zamek elektroniczny
- szablon do pasty DIY
- Głośnik potrzebny
- Silikonowy przewód ekranowany
- Wtyk bananowy ekranowany
- Co może być gorsze od pożaru elektryka?
- daltonizm
- Mały Linux
- Superkondensator. Czy to się uda?
- Stare filmy o technice
- Zasilanie własnych konstrukcji przez PoE
- Jak działa domofon?
- Co oni mierzą miernikiem
Najnowsze wątki
- 2025-11-01 Komitet kolejkowy :-)
- 2025-11-01 Warszawa => System Administrator <=
- 2025-11-01 China => Production Coordinator / Representant Product Dev <=
- 2025-11-01 Warszawa => Senior Algorithm Developer (Java/Kotlin) <=
- 2025-11-01 Prokuratura Barszczyka rozpatruje czy prawo uchwalone przez pisowców jest dobre czy złe
- 2025-11-01 Lublin => Delphi Programmer <=
- 2025-11-01 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-11-01 William Shockley, co-inventor of the transistor
- 2025-10-31 Gazowy kocioł CO regulacja cyklingu i regulacja pogodowa
- 2025-10-31 Warszawa => Starszy Konsultant SAP - obszar PP <=
- 2025-10-31 Zamek elektroniczny
- 2025-10-31 Warszawa => Sales Assistant <=
- 2025-10-31 Warszawa => Senior SAP Consultant - PP area <=
- 2025-10-31 Warszawa => Junior Rekruter <=
- 2025-10-31 Warszawa => Engineering Manager (doświadczenie w branży lotniczej lu




Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei