Home Forum MICROCONTROLLORI Modbus Master e Slave per PIC32 Timer2

Questo argomento contiene 0 risposte, ha 1 partecipante, ed è stato aggiornato da  Gaetano.Formica 1 4 mesi, 2 settimane fa.

Stai vedendo 1 articolo (di 1 totali)
  • Autore
    Articoli
  • #60723

    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 !

     

Stai vedendo 1 articolo (di 1 totali)

Devi aver eseguito l’accesso per poter rispondere a questa discussione.