problema da principiante...

11 Anni 6 Mesi fa - 11 Anni 6 Mesi fa #11 da riccardo
Risposta da riccardo al topic problema da principiante...
Ciao Luca,
la X sta per la porta del pic che vuoi utilizzare. Ad esempio se vuoi utilizzare la porta C devi scrivere:

LATC = 0b00001111; // questo esempio e mette a livello logico 1 (+5V) i primi 4 bit e a 0(0v) gli ultimi 4

Per il delay in ms io uso la libreria che ho prelevato su questo sito libreria Laurtec .

Se posso darti un consiglio, da parte di un eterno principiante, segui passo passo gli esempi del corso C18 Step By Step, prova a modificare a tuo piacimento il codice testato e vedi il risultato che ottieni.

Spero di averti aiutato

Riccardo
Ultima Modifica 11 Anni 6 Mesi fa da riccardo. Motivo: correzione

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

  • riccardo
  • Avatar di riccardo
  • Junior Member
  • Junior Member
Di più
11 Anni 5 Mesi fa #12 da StefA
Risposta da StefA al topic problema da principiante...

Si si lo sto leggendo grazie,ma non sono definite proprio le basi

io mi riferivo alle basi dei pic18, c18, mplab ide, comunque sia quando non ti è chiaro qualcosa chiedi senza problemi.

non so perchè ma il comando LATX non me lo prende,mi da' errore nella costruzione

riporta il codice che ti da errore, così possiamo vedere cosa c'è che non va, LATX funziona.
Il mio consiglio è sempre quello di partire da un esempio del libro, che funziona sicuramente e poi modificarlo come serve.
Le funzioni delay1tcy..delay10tcy.. ecc. dovrebbero effettuare un ritardo in base ai cicli di clock, ad esempio se scrivi
delay1tcy(5), la funzione aspetta 15 cicli di clock e poi ritorna al programma che l'ha chiamata.
La libreria di Mauro, che trovi su questo sito, ha due funzioni, una per i millisecondi e una per i secondi, queindi il numero dentro le parentesi (quando effettui la chiamata) fa aspettare millisecondi o secondi.

Ste

..avevano magari fatto lo sgambetto al ka, ma il sangue restava sempre più denso dell'acqua.. [cit.]

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

  • StefA
  • Avatar di StefA
  • Moderator
  • Moderator
Di più
11 Anni 5 Mesi fa #13 da luca2680
Risposta da luca2680 al topic problema da principiante...
Ok perfetto,mi metto all'opera stasera...ora pero stavo usando un simulatore della OShon Software(non so se conoscete...) carico l'hex con questra dicitura "
TRISB = 1;
PORTB = 0b111111111;


poi genero un'altro hex con mplab con :
TRISB = 0;
PORTB = 0b111111111;

ed in ENTRAMBE le situazioni,i led associati alle porte si accendono....come mai?

Luca

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

  • luca2680
  • Elite Member
  • Elite Member
Di più
11 Anni 5 Mesi fa #14 da Matteo Garia
Risposta da Matteo Garia al topic problema da principiante...
col primo codice ti si devono accendere tutti tranne RB0
ricorda che anche il registro TRIS è a 8 bit quindi se vuoi che tutti siano ingressi devi scrivere 0xFF oppure 255 oppure 0b11111111.
scrivendo TRISB = 1 è come scrivere 0b00000001

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

  • Matteo Garia
  • Avatar di Matteo Garia
  • Moderator
  • Moderator
Di più
11 Anni 5 Mesi fa #15 da luca2680
Risposta da luca2680 al topic problema da principiante...
no...niente....scrivemdo entrambe le situazioni ce li ho sempre accesi...ho scritto:
#include <p18f2550.h>

void main(){

TRISB=1;
PORTB=0b11111111;
}

ma niente....ovviamente correggetemi ma TRISB=1 non sta per ingresso e TRISB=0 a uscita?

Vi ringrazio per la pazienza...

Luca

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

  • luca2680
  • Elite Member
  • Elite 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