Non funziona il _delay() per 12F683

6 Anni 10 Mesi fa #11 da Pascolo
Risposta da Pascolo al topic Non funziona il _delay() per 12F683
Lello esatto, il tuo micro non è supportato.
Se vuoi dai uno sguardo al PIC12F1572.
Ringraziano per il messaggio: Lello Guidi

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Pascolo
  • Junior Member
  • Junior Member
Di più
6 Anni 10 Mesi fa #12 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Non funziona il _delay() per 12F683
Se fai uso della libreria LurTec 3.x, devi includere delay.h e delay.c oltre ad impostare i percorsi degli include relativi alla libreria. la libreria fa uso delle macro supportate dal compilatore XC8.

In generale, quando fai uso di funzioni/macro delay fai attenzione al valore massimo che puoi passare come parametro.
1000000 potrebbe non essere accettato o causare un overflow, ovvero essere causa di un delay molto inferiore di quello che ti aspetti, per cui il LED sembra sempre acceso.

Saluti,

Mauro
Ringraziano per il messaggio: Lello Guidi

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
6 Anni 10 Mesi fa #13 da Lello Guidi
Risposta da Lello Guidi al topic Non funziona il _delay() per 12F683

Pascolo ha scritto: Per chi non lo usa dovreste provare MPLABX con il Code Configurator (MCC).
Ti permette di impostare tutte le periferiche del micro in 60 sec. generando il MAIN con incluse tutte le inizializzazione delle periferiche.
Credetemi, se lo provate non riuscirete piu' a farne a meno...

Ivan


Ho cambiato il pic mettendo il 12F1572 e ho generato due files con il MCC.
Ma come li linko al main.c, come li inserisco nel progetto.
Ho provato con gli #include "#include <mcc.c>, #include <pin_manager>"ma mi genera errore tipo:
Main.c:18: error: (141) can't open include file "mcc.c": No such file or directory.
Ho provato al compilatore XC8 a includere nelle directory il "MCC Genrated files" ma mi da il medesimo errore.
Come devo fare?
Saluti

LelloGi

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Lello Guidi
  • Avatar di Lello Guidi
  • Platinum Member
  • Platinum Member
Di più
6 Anni 10 Mesi fa - 6 Anni 10 Mesi fa #14 da Pascolo
Risposta da Pascolo al topic Non funziona il _delay() per 12F683
Non devi includere niente,il MCC ha già incluso quello che gli serve.
Dovresti aprire il file main.c e trovare quanto segue (ti ho allegato il file 12F1572.x del progetto di base):

#include "mcc_generated_files/mcc.h"

/*
Main application
*/
void main(void)
{
// initialize the device
SYSTEM_Initialize();

// When using interrupts, you need to set the Global and Peripheral Interrupt Enable bits
// Use the following macros to:

// Enable the Global Interrupts
//INTERRUPT_GlobalInterruptEnable();

// Enable the Peripheral Interrupts
//INTERRUPT_PeripheralInterruptEnable();

// Disable the Global Interrupts
//INTERRUPT_GlobalInterruptDisable();

// Disable the Peripheral Interrupts
//INTERRUPT_PeripheralInterruptDisable();

while (1)
{

// Add your application code
}
}
Allegati:
Ultima Modifica 6 Anni 10 Mesi fa da Pascolo.
Ringraziano per il messaggio: Lello Guidi

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Pascolo
  • Junior Member
  • Junior Member
Di più
Moderatori: Mauro LaurentiPinnaStefAMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login