Home
Accesso / Registrazione
 di 

Modbus Master e Slave per PIC32 Timer2

Nessuna risposta
ritratto di Gaetano.Formica 1
Offline
Ultima visita:
13 settimane 4 giorni fa
Utente dal: 16/05/2014
Messaggi: 1

Salve ragazzi,

 

sto realizzando un progetto per una scheda Pic32-Pinguino ( https://www.olimex.com/Products/Duino/PIC32/PIC32-PINGUINO-OTG/open-source-hardware ).

Questa scheda attraverso due seriali deve fare sia da master e sia da slave utlizzando il protocollo modbus.

Per realizzare questo progetto sono partito craendo lo slave utlizzando la libreria freemodbus 1.4 per PIC32, è fin qui funziona.

Per realizzare il master visto che non cera nulla di fatto in rete ho utlizzato questa libreria (https://github.com/armink/FreeModbus_Slave-Master-RTT-STM32/tree/master/FreeModbus/modbus), che filosoficamente è simile a quella dello slave che già funziona. Sto provando ad adattarla al mio PIC(visto che scritta per ARM e utilizza un sistema operativo realtime), ma quando setto il secondo timer il programma se ne va in crash.

 

Come posso settare il secondo timer(per il master), avendo gia settato il primo timer in questo modo?

#define SYS_FREQ         (80000000L)
#define PB_DIV                 8
#define PRESCALE               256
#define TOGGLES_PER_SEC        1
#define T1_TICK               (SYS_FREQ/PB_DIV/PRESCALE/TOGGLES_PER_SEC)

OpenTimer1(T1_OFF | T1_SOURCE_INT | T1_PS_1_256,T1_TICK);
   WritePeriod1(T1_TICK);
    ConfigIntTimer1(T1_INT_ON | T1_INT_PRIOR_2);
    T1CONbits.ON = 1; // Start Timer
    INTEnableSystemMultiVectoredInt();

 

 

Grazie !

 

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 5 utenti e 40 visitatori collegati.

Ultimi Commenti