ARM:0011 PWM

Vėl nuo “sudėtingų" einam link pačių paprasčiausių. Šį kartą pabandysim pasileisti hardwarinį PWMą. Dabar viskas tupi vėl pagrindiniam, main.c faile.

Atmel ARM SAM7S PWM

Mano LCD kontrastas valdomas su programiniu PWM. Reikėtu taip kvailai nedaryti, o panaudoti tikrą hardwarinį (kalbainiškai- aparatinį) PWM. Internete susiradau pavyzduką su PWM. Ten naudojamas PWM0 kanalas, ir jo galimos išėjimo kojos labai toli nuo mano LCD lizdo. Tuo tarpu PWM1 kanalo galimo kojos visai patogios. Todėl, kad palengvinti būsimos, pataisytos PCB projektavimą, nutariau užprogramuoti PWM1 kanalą. Source kode yra viskas palikta ir PWM0 kanalo programavimui. O peržvelgus abu variantus, iškarto pasidaro aišku kaip užprogramuoti likusius.
Programoje kiek tai bandoma paaiškinti kaip skaičiuojasi vienas ar kitas parametras- tikslas buvo 2kHz PWM signalas. Bet vistiek rekomenduoju pasiskaityti datašytą.

Kada padarys tokį kontrolerį kurio kojytės bus dar labiau nepririštos prie periferijos?

Aišku:
Atmel ARM SAM7S PWM example with source code and hex, hexas sukompiliuotas Atmel AT91SAM7S256AU serijos čipui.

3 Responses to “ARM:0011 PWM”

  1. Socrates Says:

    Jeigu neklystu, tai Cortex-M0+ mikrovaldikliams galima priskirinėti kokias nori kojas kaip nori. Jis ten matricą lygtais turi.

  2. Donatas Says:

    Cortex-M3 kai kurias funkcijas galima priskirti kitoms kojoms.
    Nors manau ten ne kiek core galimybė, kiek pačio gamintojo periferijos patobulinimas

    Bet analoginių funkcijų perduoti kitoms kojoms neina.

  3. Administrator Says:

    Šitas SAM turi irgi kojas “judančias", bet alternatyvos tik 2 ar 3. Vis geriau nei nieko.

Leave a Reply

Bot-Check (Jei ne skaičiai spauskit refresh. Tik oranžinius naudoti.)

Unhappy Tikbalang