Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

PIC12F683 PWMi anomaalia

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    PIC12F683 PWMi anomaalia

    Tahan teha sujuvalt muutuva duty-cyclega pwmi (lambi süttimine ja kustutamine). Mõtlesin, et kuna PWMi perioodi lugemiseks kasutatakse TMR2-e, siis iga perioodi lõpus tekib ju tema katkestus ja siis olekski õige hetk uus duty väärtus registritesse laadida. Aga...Microchip vist ei arva nii. Katkestustesse laskutakse ja registrid laetakse ka (kontrolliks lasin saata ossile sobival hetkel signaali) kuid PWMi CCPR1H registrit ei laeta.
    Kui nüüd teha sama asja asünkroonselt iga 10 ms tagant, hakkab PWMi periood kenasti muutuma. PAraku siis tuli vilgub, kuna laadimine on asünkroonne.
    Datasheet väidab, et CCPR1L ja CCP1CON võib kirjutada alati ja mida iganes kuid asi läheb arvesse alles siis kui TRM2 saab võrdseks PR2-ga ehk kui periood lõppeb. Just sel hetkel laen mina uue väärtuse.
    OK, ehk see ei loe aga peaks minema arvesse järgmise perioodi alguses. Paraku miskipärast ei lähe.
    Ma ei saa enam pihta sellele loogikale.
    Keegi näeb viga?
    Tähh!
    /Felch
    - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
    - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

    #2
    Vs: PIC12F683 PWMi anomaalia

    Sa tahad lihtsat faderit tekitada?
    Äkki annan sulle 12F508 jaoks väikese koodi jupi. (Ise ehitasin )
    Soft-pwm Fader in-out.

    Comment


      #3
      Vs: PIC12F683 PWMi anomaalia

      Tahan jah. Softiliselt olen isegi suurema või vähema eduga PWMi teinud ja saab hakkama. Seekord mõtlsein kasutada raudvaralist. Tahaks just selle käima saada.
      - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
      - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

      Comment


        #4
        Vs: PIC12F683 PWMi anomaalia

        Viga leitud. PWMi registrite uuendamise sub'i alguses andsin käsu CLRF CCP1CON. See nullis kogu PWMi. Selle rea kõrvaldamisel hakkas tööle.
        Imelik on see, et täites koodi asünkroonselt viga ei esinenud. Ja sub'i lõpus laeti CCP1CON õige väärtusega!?
        Prose bugi või ei saa ikkagi oma lollusest aru?
        - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
        - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

        Comment

        Working...
        X