Question about the PIC16F84A

Thread Starter

marcenis

Joined Jan 5, 2013
1
scusate sono nuovo e ho un quesito per il pic 16f84a se qualcuno mi può aiutare vi posto il mio file e vi spiego il problema

//*************************************************
//
//
//
// modulo: main.c
//
// data: 12/09/12
// descrizione: accensione led in settori
// picmicro: PIC16F84A
//
//
//*************************************************

#define XTAL_FREQ 4MHZ // questo è utilizzato dalle routine di ritardo contenute in Delay.C
#include <pic.h> // contiene i nomi mnemonici di registri e porte
#include "delay.c" // routine per ritardi
#define asp 20 //definisce che asp è uguale a 20
// funzione principale, eseguita all'avvio del picmicro
void main(void)
{

TRISA = 0b11111111; // setta le prime 4 porte A del PIC come entrate
TRISB = 0; // setta le porte B del PIC come uscite
PORTB = 0b00000000;

while(1) //ripete il ciclo all'infinito
{ //graffa di apertura di while
switch (PORTA) //lettura PORTA
{ //graffa di apertura di switch

case 3:
PORTB = 0b00000100; DelayMs(asp); //se PORTA è 2 (0010) accende la prima e seconda lampadina
break;
//interrompe il programma switch e torna a while

} //graffa di chiusura di switch
PORTB=0; //spegne tutti i led //
} //graffa di chiusura di while
//graffa di chiusura main (void)





} // Fine main


mi funziona solo il case 1 e case2

se metto case 3 mi appare questo listato con mplab
PICSTART Program\Verify Report 05-Jan-2013, 17:27:29 Device Type: PIC16F84A Address Range 0-3ff Program Memory Errors Address Good Bad 0000: 2BC3 0000 0001: 3FFF 0000 0002: 3FFF 0000 0003: 3FFF 0000 0004: 3FFF 0000 0005: 3FFF 0000 0006: 3FFF 0000 0007: 3FFF 0000 0008: 3FFF 0000 0009: 3FFF 0000 000A: 3FFF 0000 000B: 3FFF 0000 000C: 3FFF 0000 000D: 3FFF 0000 000E: 3FFF 0000 000F: 3FFF 0000 0010: 3FFF 0000 0011: 3FFF 0000 0012: 3FFF 0000 0013: 3FFF 0000 0014: 3FFF 0000 0015: 3FFF 0000 0016: 3FFF 0000 0017: 3FFF 0000 0018: 3FFF 0000 0019: 3FFF 0000 001A: 3FFF 0000 001B: 3FFF 0000 001C: 3FFF 0000 001D: 3FFF 0000 001E: 3FFF 0000 001F: 3FFF 0000 Any additional errors are not displayed. Configuration Memory Errors Field : Oscillator Expected: XT oscillator Received: LP oscillator Field : Code Protect Expected: Disabled Received: Enabled

qualcuno mi sa dire il perchè
il circuito su cui lo testo l'ho fatto cn un amico esperto
abbiamo testato con il tester e premendo il pulsante mi da i 5 volt su tutti quindi funzionano tutti bene i tasti
se mi sapete dire come sostituire il case con l'istruzione if then else
grazie
 

bertus

Joined Apr 5, 2008
22,278
Hello,

I found your post on the end of an existing thread.
We call that hijacking, wich is not allowed over here.
I moved it to its own thread.
As this is an english forum, only questions in english will be allowed.

Please translate the question and post it.

Bertus
 
Top