Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

PWM 16F628A

 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Davidus
Zablokován


Založen: Jun 01, 2005
Příspěvky: 2439

PříspěvekZaslal: so září 11 2010, 20:25    Předmět: PWM 16F628A Citovat

Ahoj
Už 2 dny bojuju s 16F628A, nějak se mi nedaří rozjet PWM, nebo špatně chápu jeho nastavení v MCU. Co dělám špatně? Díky

ORG 000H
MOVLW 064h
BCF STATUS,RP1
BSF STATUS,RP0
MOVWF PR2
BCF STATUS,RP1
BCF STATUS,RP0
MOVLW 032h
MOVWF CCPR1L
BSF T2CON,2
BSF T2CON,1
BSF T2CON,0
;nastavuji BB3 jako výstup
BCF STATUS,RP1
BSF STATUS,RP0
MOVLW 0F7h
MOVWF TRISB
BCF STATUS,RP1
BCF STATUS,RP0
;konec programu
mys nop
goto mys
end
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
eljaro



Založen: Dec 03, 2004
Příspěvky: 441
Bydliště: Krnov

PříspěvekZaslal: ne září 12 2010, 8:20    Předmět: Citovat

asi jsi přeskočil trochu konfiguraci ! v ccp1con je třeba navolit že pojedeš jako pwm !

podle postupu je nutno 1,naplnit registr periody
2, nastavit pwm vregistru ccp1con
3, nastavit výstupní bit jako výstupní
4, a nastavit předdělič
také je dobre dohlédnou na to aby timer 2 byl opravdu vypnut
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky AOL Instant Messenger MSN Messenger
procesor



Založen: Oct 02, 2009
Příspěvky: 5286
Bydliště: PO

PříspěvekZaslal: ne září 12 2010, 8:49    Předmět: Citovat

kapitola 9.3.3 v datasheet PIC16F628a
! 4. nastav preddelicku a SPUSTI Timer2!
5. zapni PWM mode v ccp1
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Davidus
Zablokován


Založen: Jun 01, 2005
Příspěvky: 2439

PříspěvekZaslal: ne září 12 2010, 13:29    Předmět: Citovat

procesor, eljaro, díky, zkusím to, uvidíme, ale moc šancí tomu nedávám
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Davidus
Zablokován


Založen: Jun 01, 2005
Příspěvky: 2439

PříspěvekZaslal: ne září 12 2010, 16:10    Předmět: Citovat

měl bych možná ještě dotaz, je funkce PWM vidět na logickém analyzátoru v simulátoru MPLAB?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
eljaro



Založen: Dec 03, 2004
Příspěvky: 441
Bydliště: Krnov

PříspěvekZaslal: ne září 12 2010, 18:14    Předmět: Citovat

v simulátoru to vidět je ale timer 2 nespoštět ! jen nastavit předdělič tím dojde k aktivaci timeru 2 pro práci pwm ! samotné aktivování timeru 2 bitem tmr2on způsobí odstavení pwm mudulu ! ona ta technická angličtina je trochu moc jednoduchá !
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky AOL Instant Messenger MSN Messenger
Davidus
Zablokován


Založen: Jun 01, 2005
Příspěvky: 2439

PříspěvekZaslal: po září 13 2010, 8:25    Předmět: Citovat

takže se mi podařilo najít přímo ukázku od inženýrů z microchipu... možná to pomůže i někomu dalšímu, kdo by s tím měl problém.

list p=16f628A ; list directive to define processor
#include <p16F628A.inc> ; processor specific variable definitions

__CONFIG _CP_OFF & _DATA_CP_OFF & _LVP_OFF & _BOREN_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTOSC_OSC_NOCLKOUT


ORG 000H
CLRF CCP1CON
CLRF TMR2
MOVLW 0x7F
MOVWF PR2
MOVLW 0x1F
MOVWF CCPR1L
CLRF INTCON
BSF STATUS,RP0
BCF TRISB,3
CLRF PIE1
BCF STATUS, RP0
CLRF PIR1
MOVLW 0x2C
MOVWF CCP1CON
BSF T2CON,TMR2ON
;konec programu
mys nop
goto mys
end



pwm.PNG
 Komentář:

Stáhnout
 Soubor:  pwm.PNG
 Velikost:  6.29 kB
 Staženo:  93 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
procesor



Založen: Oct 02, 2009
Příspěvky: 5286
Bydliště: PO

PříspěvekZaslal: po září 13 2010, 12:57    Předmět: Citovat

No... PR2 je v inom banku, takže miesto PR2 tých 0x7F zapisuješ do T2CON a to nie je najlepšie. Chýba tam nastavenie správneho banku. A potom späť.
Edit:
Podľa frekvencie oscilatota posúď časy. Timer2 takto šlape, ale s preddeličkou 1:16 (postscaler je tu ukradnutý) a v PR2 máš 0xFF ako po resete
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Davidus
Zablokován


Založen: Jun 01, 2005
Příspěvky: 2439

PříspěvekZaslal: po září 13 2010, 18:17    Předmět: Citovat

tak poslední pokus, teď už by to mělo být OK
list p=16f628A ; list directive to define processor
#include <p16F628A.inc> ; processor specific variable definitions

__CONFIG _CP_OFF & _DATA_CP_OFF & _LVP_OFF & _BOREN_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTOSC_OSC_NOCLKOUT

CITAC0 EQU 20H
CITAC1 EQU 21H
CITAC3 EQU 22H
ORG 000H
CLRF CCP1CON
CLRF TMR2
BCF STATUS,RP1
BSF STATUS,RP0
MOVLW 0x7F
MOVWF PR2
BCF STATUS,RP1
BCF STATUS,RP0
MOVLW 01FH ; nastavení střídy
MOVWF CCPR1L
CLRF INTCON
BSF STATUS,RP0
BCF TRISB,3
CLRF PIE1
BCF STATUS, RP0
CLRF PIR1
MOVLW 0x2C
MOVWF CCP1CON
BSF T2CON,TMR2ON
;registry naplněny hodnotou FF
;cekací smycka
mys nop
goto mys
end
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
procesor



Založen: Oct 02, 2009
Příspěvky: 5286
Bydliště: PO

PříspěvekZaslal: po září 13 2010, 20:40    Předmět: Citovat

To by mohlo íst, frkv.= 7812,5Hz, impulz=31,5us.
Ukáž oscilogram.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Davidus
Zablokován


Založen: Jun 01, 2005
Příspěvky: 2439

PříspěvekZaslal: út září 14 2010, 8:04    Předmět: Citovat

tady


16f628pwm.PNG
 Komentář:

Stáhnout
 Soubor:  16f628pwm.PNG
 Velikost:  7.86 kB
 Staženo:  96 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Atlan



Založen: May 10, 2004
Příspěvky: 4513
Bydliště: Košice

PříspěvekZaslal: út září 14 2010, 8:19    Předmět: Citovat

dobry oscilooskop Very Happy
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Davidus
Zablokován


Založen: Jun 01, 2005
Příspěvky: 2439

PříspěvekZaslal: út září 14 2010, 9:15    Předmět: Citovat

Atlan napsal(a):
dobry oscilooskop Very Happy

tak co chceš, za 7700kč 100MHz osciloskop... Laughing
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
procesor



Založen: Oct 02, 2009
Příspěvky: 5286
Bydliště: PO

PříspěvekZaslal: út září 14 2010, 14:18    Předmět: Citovat

Program je Ok. Tolerancie idú na vrub na oscilátoru a aj niečo na osciloskop. Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.19 sekund