PWM 16F628
http://pandatron.cz/?forum=read&id=6401
|
Ano je to má neschopnost správně porozumět dokumentaci k PIC a proto se obracím pro radu (případná odpověď se možná bude hodit i dalším lidem).
Mám PIC 16F628A který má vestavěný PWM modul. Co jsem se z dokumentace dočetl, výstup by měl být PIN 9. Budu pravděpodobně pracovat s registry TMR2, CCPR1L, CCPR1H, CCPCON (kde bych měl na bytech 3-4 dát hodnotu '11xx') a možná některé další. Bohužel nedokážu přijít na to co přesně kde nastavit (takže PWM vůbec nefunguje), a jak nastavovat délku pulzů (to bude něco společného s TMR2 (duty cycle).
Mohl by někdo dát příklad programu, abych tomu dokázal porozumět nebo tu popsat co a jak správně nastavit?
Mám PIC 16F628A který má vestavěný PWM modul. Co jsem se z dokumentace dočetl, výstup by měl být PIN 9. Budu pravděpodobně pracovat s registry TMR2, CCPR1L, CCPR1H, CCPCON (kde bych měl na bytech 3-4 dát hodnotu '11xx') a možná některé další. Bohužel nedokážu přijít na to co přesně kde nastavit (takže PWM vůbec nefunguje), a jak nastavovat délku pulzů (to bude něco společného s TMR2 (duty cycle).
Mohl by někdo dát příklad programu, abych tomu dokázal porozumět nebo tu popsat co a jak správně nastavit?
host
|
1. ID: 6403, zaslal host 29. 10. 2010 19:54
Při práce s PWM je nutné provést následující kroky:
1. Nastavit periodu opakovací frekvence PWM v registru PR2 2. Nastavit střídu PWM zápisem do registru CCPR1L a dvou bitů registru CCP1CON 3. Konfigurovat vývod CCP1 jako výstup pomocí registru TRISC 4. Nastavit předděličku pro Timer2 a povolit Timer2 zápisem do registru T2CON 5. Konfigurovat modul CCP v režimu PWM PR2= b'11111111' CCPR1L=0-256 ; regulace 0-100% |
2. ID: 6405, zaslal NetRation 30. 10. 2010 01:28
Díky za odpověď,
určitě mi to moc pomohlo, Sice pořád někde dělám chybu, ale alespoň PWM již funguje. Tedy pouze asi jen z 50%, ale i to je pokrok . (pokusný větrák se roztočil) |
host
|
3. ID: 6406, zaslal host 01. 11. 2010 07:08
chtelo by to kod , z toho se da vycist kde je chyba
|