Uz ma skoro hotovy moj vyrobok, ale natrafil som na jeden problem. Nie je to az tak kriticke, ale rad by som vedel ako sa to riesi.
Moje zariadenie (je to nejaky riadiaci system) ma displej a tlacitka pre ovladanie. Ak zatlacim tlacitko, tak piezo mi vyda zvuk. Ten moj system ma na doske RTC DS1307, ktory mi vyvola kazdu sekundu prerusenie. V preruseni citam hodiny a kontrolujem, ci nastal nastaveny cas. Problem je, ze ak zatlacim tlacitko a zrovna sa trafim do prerusenia, tak mi to piezo vyda nejaky skresleny zvuk. Ako sa toto riesi ? Mam nastavit aby pri vykonani SOUND zakazal prerusenie ?
Sound a prerusenie
Moderátori: psichac, Moderátori
- sonikmartin
- Pokročilý člen
- Príspevky: 554
- Dátum registrácie: 05 Nov 2010, 00:00
- Bydlisko: Litomyšl
- Vek: 36
- Kontaktovať používateľa:
Re: Sound a prerusenie
Zakazat preruseni je jedna moznost ale udelal bych to jinak.
Vynechas to preruseni a potom si das do hlavni smycky cely cyklus:
do
cti z ds1307
shoduje se cas?
je stisknute tlacitko?
loop
cti z ds1307 -- prectes data z RTC
shoduje se cas -- v kazdem cyklu zkontroluj zda se shoduje cas s nastavenym
je stisknute tlacitko -- napis si rutinu kterou budes volat pri kazdem stisku tlacitka a doporucuji pouzit funkci "DEBOUNCE"
Kdybys potreboval vice tak mi napis
rad pomuzu
Vynechas to preruseni a potom si das do hlavni smycky cely cyklus:
do
cti z ds1307
shoduje se cas?
je stisknute tlacitko?
loop
cti z ds1307 -- prectes data z RTC
shoduje se cas -- v kazdem cyklu zkontroluj zda se shoduje cas s nastavenym
je stisknute tlacitko -- napis si rutinu kterou budes volat pri kazdem stisku tlacitka a doporucuji pouzit funkci "DEBOUNCE"
Kdybys potreboval vice tak mi napis
rad pomuzu
0
-
- Pokročilý člen
- Príspevky: 626
- Dátum registrácie: 05 Nov 2009, 00:00
- Bydlisko: Bratislavský kraj
Re: Sound a prerusenie
Ahoj, nad tymto som tiez rozmyslal, ale mam viacurovnove menu a to prerusenie my zabezpeci, ze mozem sa nachadzat kdekolvek a vzdy sa porovna aktualny cas s nastavenym. Naviac v sekundovom preruseni inkrementujem premennu ktoru porovnavam s nastavenou dobou trvania log.1 na urcitom pine. Ak by som to mal spravit tak ako pises, tak by som musel do kazdej urovne menu ponuky dat odkaz na citanie casu a porovnanie aktualneho casu s nastavenym.. Tiez by som musel vyriesit porovnanie nastavenej doby trvania log.1 na urcitom pine s casom, ktory uz uplynul. Dufam, ze som to napisal zrozumitelne.
0
- sonikmartin
- Pokročilý člen
- Príspevky: 554
- Dátum registrácie: 05 Nov 2010, 00:00
- Bydlisko: Litomyšl
- Vek: 36
- Kontaktovať používateľa:
Re: Sound a prerusenie
Nemusis to dat do kazde urovne menu, jenom das menu jako jednu subrutinu a porovnavani jako druhou subrutinu. a budes obe volat v hlavni smyčce. A pokud měřiš čas sepnutí výstupu to bych raději udělal vnitřním timerem, na který bych pověsil i ten pípák a máš po starostech. Odpoledne se ti na to kouknu a kousek ti napíšu.
0
-
- Podobné témy
- Odpovedí
- Zobrazení
- Posledný príspevok
-
- 6 Odpovedí
- 563 Zobrazení
-
Posledný príspevok od používateľa misocko