MECCANICA e DINTORNI
http://meccanicaedintorni.morpel.it/phpbb/

MPLAB X e simulazione EUSART
http://meccanicaedintorni.morpel.it/phpbb/viewtopic.php?f=80&t=12799
Pagina 1 di 1

Autore:  AF116 [ lun lug 21, 2014 10:38 ]
Oggetto del messaggio:  MPLAB X e simulazione EUSART

Passando da MPLAB a MPLAB X, ho riscontrato diverse problematiche nella simulazione del'EUSART (PIC 16F886).
Utilizzando, come nel precedente MPLAB, la funzione "Register Injection" del tool "Stimulus", al massimo sono riuscito ad ottenere la ricezione di un primo carattere, poi ne salta 2, ne riceve uno ecc.

L'unico modo per simulare la seriale รจ stato fare un file .scl con il quale iniettare i caratteri uno a uno nel registro RCREG e settare il flag RCIF.

Tale file deve essere inserito tramite il pulsante "+SCL" a sinistra del pannello "Stimulus"

Lo allego anche se penso debba esistere una soluzione migliore!

Codice:
testbench for "pic16f886" is
   begin
      process is
         begin
   wait for 1000 ms;
            RCREG <= 65;   //LETTERA 'A'
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 66;   // B
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 67;   // C
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 68;   // D
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 69;   // E
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 70;   // F
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 71;   // G
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 72;   // H
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 73;   // I
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 74;   // J
   PIR1.RCIF <= '1';
            wait for 5 ms;
           RCREG <= 75;   // K
   PIR1.RCIF <= '1';
            wait;

         end process;
   end testbench;

Pagina 1 di 1 Tutti gli orari sono UTC +1 ora
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/