napisałem sterownik i chcę wpleść strobo, ale jak?
napisałem sterownik i chcę wpleść strobo, ale jak?
napisałem sterownik śwaiteł do modelu który działa tak:
-> LINK DO FILMU <-
chciałbym dodać do tego strobo czyli włączanie i wyłączanie dwóch portów na przemian, ale jak to zrobić żeby nie zakłócało pracy stop - wstecz?
możecie mi pomóc, bo nie mam pomysłu.
-> LINK DO FILMU <-
chciałbym dodać do tego strobo czyli włączanie i wyłączanie dwóch portów na przemian, ale jak to zrobić żeby nie zakłócało pracy stop - wstecz?
możecie mi pomóc, bo nie mam pomysłu.
na innych. powiedzmy to maja byc wyjścia PORTD.6 i PORTB.0. światła stop i wstecz maja działać swoją drogą a miganie wyżej wymienionymi portami swoją drogą. jedno drugiego nie może zakłócać. a najlepiej jakby doszło do tego sterowanie PWM na dedykowanych do tego portach i nic niczego nie zakłócało.c4r0 pisze:To ma być na tych samych LED-ach czy chcesz dodatkowa dodać?
ale ja tego nie kumam. znaczy że procek może wykonywać dwie operacje na raz? tu mi będzie reagował na to co wysyłam z nadajnika czyli wyświetlał stop tudzież wstecz, a obok będzi migał dwoma portami? nie mieści mi sie to w głowie. przecież procek czyta linie programu jedna po drugiej.snow pisze:Timery są niezależne od programu
Aby odmierzyć jakiś czas opóźnienia procesor też musi odliczyć ileś taktów zegara zatem nie zatyka się na stałe, po prostu czeka aż jakaś "zmienna" osiągnie daną wartość. W tym czasie może inne rzeczy obsługiwać jak na przykład timer. Z twojego punktu widzenia procesor się "zatyka" i nic nie robi, natomiast z punktu widzenia procesora to nie do końca tak jest.
no bo w tej chwili miganie stroboskopami mam zrobione tak mało elegancko i to mi zatyka pracę procka na czas wyznaczony łączną długością opóźnień WAIT, a wygląda to tak:
Kod: Zaznacz cały
reset strobol
waitms 20
set strobol
waitms 100
reset strobol
waitms 20
set strobol
waitms 200
reset strobop
waitms 20
set strobop
waitms 100
reset strobop
waitms 20
set strobopMożesz ustawić aby timer dawał przerwanie co 1ms, w przerwaniu zwiększać jakaś zmienną i gdy ona osiągnie jakaś wartość to wykonać dane polecenie. Następnie skasować jej wartość i odczekać aż znów doliczy to jakiejś wartości to wykonać inne. Będzie to odpowiadać twojemu waitms lecz nie będzie wpływać na główną część programu. Pamiętaj aby w przerwaniach nie dawać opóźnień programowych waitms.
i o to mi chodzi z PWM. chcę dodatkowo wykonać neony pod model i żeby diody się rozjaśniały i przyciemniały.snow pisze:W przypadku stroboskopu PWM będzie bezużyteczne, jedynie mógłbyś sterować jasnością świecenia.
nie bardzo wiem czego mam szukać w helpie.snow pisze:Co do przykładu to albo help albo poczekaj na kogoś kto zna Bascoma
to to wiem kolego snow, takie podstawy znam. potrafię uruchomic i PWM i timery, tylko nie bardzo wiem jak się za to zabrać. co po kolei? może będę kombinował, coś w końcu wyjdzie. tylko chciałbym żeby to ładnie i funkcjonalnie działało, a nie jak to z tymi WAIT.snow pisze:Do przerwań ENABLE, CONFIG do PWMa ale do końca to pewien nie jestem.