<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-2">
<META content="MSHTML 6.00.2900.5583" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Na skutecnem procesoru CCP4 nenuluje
TMR3,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Podle mne zadny TMR1 internal neexistuje, je tam
pouze bufer pro TMR3 a ten se zapina bitem RD16.</FONT></DIV>
<DIV><FONT face=Arial size=2>Je to pekne videt na obrazku 15-1 a 15-2.
</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Michal Gregor</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<BLOCKQUOTE
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV
style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B>
<A title=jarin.hw@gmail.com href="mailto:jarin.hw@gmail.com">j s</A> </DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A title=hw-list@list.hw.cz
href="mailto:hw-list@list.hw.cz">hw-list@list.hw.cz</A> </DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Wednesday, August 13, 2008 11:36
AM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> Chyby v MPLAB 8.02 - riesenie,
cast II</DIV>
<DIV><BR></DIV>> Vezmu to od konce:<BR>> Kapitola 18.2.1 Special Event
Triggers are not implemented for ECCP3, CCP4<BR>> or CCP5. Selecting the
Special Event Trigger mode for these modules has the<BR>> same effect as
selecting the Compare with Software Interrupt mode<BR>> (CCPxM3:CCPxM0 =
1010). No je to v PDFku pekne schovame - klasicka poznamka<BR>> malym
pismem.... Ja jsem ji nasel az po dlouhem hledani proc mi procesor<BR>>
dava 140ms a pritom v simulatoru MPLABU tam mam 100ms.<BR><BR>Ta poznamka nie
je malym pismom. Je to standardny font textu v datasheete.<BR><BR>Pozrime sa
do toho datasheetu este raz. Strana 197, asi v polovici,<BR>velkym
pismom<BR> REGISTER 17-1: CCPxCON: CCPx CONTROL
REGISTER (CCP4 MODULE, CCP5 MODULE)<BR>Teda CCP4 a CCP5 funguju ako standardne
CCP moduly, podla kapitoly 17,<BR>nie ako ECCP (pricom to E znamena Enhanced,
ale tyka sa to PWM<BR>modulov) moduly podla kapitoly 18, na ktoru sa
odvolavate. Ako som<BR>pisal skor, nastavenie CCP4CON do 0x0B = 1011 = Compare
mode: trigger<BR>special event, reset timer, start A/D conversion on CCPx
match. Teda<BR>resetuje timer.<BR><BR>Pre ECCP moduly (CCP1 az CCP3):<BR>1011
= Compare mode: trigger special event (ECCPx resets TMR1 or TMR3,<BR>sets
CCPxIF bit, ECCPx trigger also starts A/D conversion if A/D<BR>module is
enabled)(1)<BR>....<BR>....<BR>Note 1: Implemented only for ECCP1 and ECCP2;
same as 1010' for ECCP3.<BR><BR>Teda, netyka sa to CCP4 a CCP5.<BR>V tom
datasheete je to mozno nestastne napisane, ale takto som to<BR>pochopil ked
som sa na to pozrel a zda sa, ze to takto aj
funguje.<BR><BR>----------------------------------------------<BR><BR>O tom
timere 1 som napisal vsetko co som povazoval za potrebne. Zrejme<BR>je to
malo.<BR>V MPLAB-e 5.7 to fungovalo zrejme inak. Nespominam uz na tuto
verziu<BR>(je to uz peknych par rokov dozadu, co bola aktualna) a
kedze<BR>pravdepodobne nemal TMR1_Internal, tak to citanie celeho stavu
TMR1<BR>bolo urobene nekorektne voci realnemu HW. Preto to upravili tak,
aby<BR>sa ten timer spraval tak, ako ma, teda podla toho vysvetlenia,
ktore<BR>som Vam podal v predoslom prispevku. Preto je spravne, pri
simulacii,<BR>pozerat sa na TMR1_internal, hoci program moze narabat s
registrami<BR>TMR1H a TMR1L, pricom je treba dodrzat logiku citania a zapisu
tak ako<BR>som ju popisal predtym.<BR>Ta "paseka" je hodnota TMR1H, ktoru ste
tam zapisal predtym. Kedze<BR>TMR1L program necita, neobnovuje sa ani TMR1H a
preto simulator vidi v<BR>TMR1H hodnotu, ktoru neocakavate (ale ktora tam bola
programom<BR>zapisana). TMR1_Internal obsahuje skutocnu hodnotu timera. To ze
tam<BR>tu (neocakavanu) hodnotu vidite aj po resete je dosedok toho, ze
TMR1H<BR>a L si zachovavaju svoj stav po resete, resp. reset im neudava
nijaky<BR>definovany stav, tak je to to iste ako pred resetom.<BR>Teda ten
timer vzdy preteka pri 0xFFFF-0x0000. To ze to nevidite, este<BR>neznamena, ze
to tak nie je.<BR><BR>----------------------------------------------<BR><BR>Co
sa tyka vypoctu Tad, zda sa byt v poriadku.<BR>Bolo dolezite podotknut, ze
sprava sa zobrazuje len raz pri "otvoreni<BR>MPLAB-u". To je pochopitelne,
pretoze po resete je obsah ADCON1<BR>definovany na 0x00. Iste si dokazete
spocitat, ze potom je Tad<BR>skutocne menej ako
0.70us.<BR><BR><BR>J.S.<BR>_______________________________________________<BR>HW-list
mailing list - sponsored by <A
href="http://www.HW.cz">www.HW.cz</A><BR><A
href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</A><BR><A
href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</A><BR></BLOCKQUOTE></BODY></HTML>