Dalsi z mych zahad s PICy
HW CNCnet.info
hwnews@cncnet.info
Pondělí Listopad 19 09:47:59 CET 2007
Odpovim si sam.
Ac by se zdalo, ze oba CCP moduly jsou stejne tak asi nejsou - modulu
CCP1 proste vadi zapis na dolni dva bity registru CCP1CON prestoze
pisou, ze pro rezim PWM je konfigurace 11xx - kdyz tam zapisuju 1100 tak
to chodi ok kdyz 1111 tak to dela brikule. U CCP2 je to bez problemu v
obou pripadech.
Radek Vicek
======================================================================
http://www.cncnet.info - problematika CNC a automatizace
http://www.jakjevenku.info - webová meteostanice
HW CNCnet.info napsal(a):
> Zkousim si ted trochu hrat s 18tkovou radou PICu konkretne 18F2220 a
> zkoumam CCP moduly.
>
> Chtel jsem synchronne generovat stejny prubeh pomoci tabulky v pameti s
> tim, ze budu prepisovat hodnoty registru nastavujici duty PWM. Neco je,
> ale podivneho nebot mi jedou ty PWMky posunute o 90st (kdyz kreslim
> napr. sinus).
>
> Je to trivialni kus kodu:
>
> repeat
> fazeA:=fazeA+mode;
> fazeB:=fazeB+mode;
> temp1:=sinusLSB[fazeA];
> temp2:=sinusMSB[fazeA];
>
> CCP2CON:=temp1;
> CCPR2L:=temp2;
> CCP1CON:=temp1;
> CCPR1L:=temp2;
>
> Delay_ms(100);
> until false;
>
> ty tabulky jsou dve v jedne jsou hodnoty pro CCPRxL a v druhe pro
> CCPxCON s tim ze dolni ctyri bity jsou stale 1111.
>
> Co jsem si zatim vyzkoumal tak neco divneho je v okamziku kdy zapisu do
> CCP1CON. Bylo mi totiz divne, ze PWM2 po resetu nabiha pekne od nuly
> (tak ta tabulka zacina) a PWM1 se rozsviti naplno. Kdyz ten registr
> CCP1CON neprepisuju rozbihaji se oba vystupy od nuly (jen jde ten PWM1
> hrubeji coz je jasne kdyz mu chybi dole 2 bity). Pokud to necham tak jak
> to je viz kod vyse tak to jede plynule, ale stridave.
>
> Nevite nekdo v cem muze byt problem?
>
Další informace o konferenci Hw-list