Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

PIC16F628A - GRP, WDT и SLEEP
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=18576
Страница 1 от 1

Автор:  pldimitroff [ Сря Окт 26, 2022 10:43 am ]
Заглавие:  PIC16F628A - GRP, WDT и SLEEP

Здравейте,
Използвам WDT за събуждане от SLEEP режим PIC16F628A.
Искам да попитам при събуждане от WDT какво става с регистрите с общо предназначение (GRP)? Нулират ли се, запазват стойностите от преди заспиването или нещо друго?
При мен не се запазват стойностите, но може да ми е грешен софтуера - начинаещ съм :)
Благодаря предварително.

Автор:  dan [ Сря Окт 26, 2022 11:27 am ]
Заглавие:  Re: PIC16F628A - GRP, WDT и SLEEP

WDT ресетва контролера. Използва се, за да следи дали контролерът не се е "отнесъл" нанякъде И/ИЛИ дали програмата не зацикля или дали не я утрепваш по друг начин.

Автор:  pldimitroff [ Сря Окт 26, 2022 11:47 am ]
Заглавие:  Re: PIC16F628A - GRP, WDT и SLEEP

Да, WDT ресетва контролера, когато препълни. Но в режим SLEEP го събужда и програмата продължава след командата SLEEP като нулира WDT. При мен така работи, не започва програмата от начало, но стойности в GRP не се запазват. Не мога да разбера от WDT ли се получава или е моя програмна грешка.

Автор:  Desert Leo [ Сря Окт 26, 2022 12:53 pm ]
Заглавие:  Re: PIC16F628A - GRP, WDT и SLEEP

Би трабвало стойностите да се запазват.

Автор:  ToHu [ Сря Окт 26, 2022 1:54 pm ]
Заглавие:  Re: PIC16F628A - GRP, WDT и SLEEP

Пазят се, или поне би трябвало да се пазят. Ако е в sleep wdt те буди и продължаваш от там където си спрял.

Автор:  pldimitroff [ Сря Окт 26, 2022 4:09 pm ]
Заглавие:  Re: PIC16F628A - GRP, WDT и SLEEP

И аз така мислех. В симулатора на MPLAB IDE v8.92 се запазват, но на практика не ми се получават.
Правя термометър с DS18B20. За измерване на температурата трябва 750ms. Когато ми показва температурата на дисплея използвам таймер за 750ms и след известно време изключвам дисплея и използвам SLEEP за таймер (1.15s). В регистри запазвам максимална и минимална температура. При събудено състояние всичко си работи добре, след заспиване и събуждане от мен (дисплея да показва), максималната и минималната температура приемат стойностите след събуждане.
Ще потърся пак за грешка.
Благодаря Ви!

Автор:  pldimitroff [ Пон Окт 31, 2022 4:43 pm ]
Заглавие:  Re: PIC16F628A - GRP, WDT и SLEEP

Да, допуснал съм грешка в програмата.
Запазват се стойностите на GRP при SLEEP и събуждане с WDT.

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/