1. Sa se indice parametrii de programare ai registrelor din event managerul A pt. a
se putea conecta un encoder incremental pt. ceasul de uz general nr. 2
1. InitEncoder()
- Setup Registre Timer2 (EV A) -
- configurare GPTCONA sa nu lanseze conversie A/D la event GPT2 -
EvaRegs.GPTCONA.bit.T2TOADC = 0 -
- initializare perioada timer GPT2 - -
EvaRegs.T2PR = T2PR_INI
#define T2PR_INI - 0x0FFFF - //initial value for GPT2 timer period o o o
- reset registru counter GPT2 -
EvaRegs.T2CNT = TxCNT_INI_QEP
#define TxCNT_INI_QEP - 0x0000 - //timer counter initial value for QEP
- set registru configurare GPT2 -
- T2CON pregatit pt. folosire in mod QEP, x/1 -
EvaRegs.T2CON.all = TxCON_INI_QEP
#define TxCON_INI_QEP - 0x1830 - //T2CON/T4CON prepared to use for QEP, x/1
2. StartEncoder()
- start timer 2 -
- Start contor GPT2 sa numere pulsurile circuitului QEP -
EvaRegs.T2CON.bit.TENABLE = 1
- configurare registru de control al capturilor CAPCONA -
- activare QEP in registrul CAPCONA -
EvaRegs.CAPCON.bit.CAPQEPN = 3
3. ReadEncoder(&Encoder)
- setare Encoder.Position cu valoarea din EvaRegs.T2CNT
- Parametri intrare -
EvaRegs.T2CNT
- Parametri iesire -
Encoder.Position
Prezentat in cadrul Facultatii de Inginerie Electrica din UPB
Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.