A
angelomary
Guest
Hej alle:
jeg arbejder i min sidste års projekt, jeg vælger at bruge en pic16877a, udgang til et buzzere & 8 * 8 Matrix, jeg forsøger at gennemføre mit design ved hjælp af en protous simulator, men der er ingen produktion, mens tal viser, er der en indgang, så er min kode forkert nogen vide, plz, min kode nedenfor
program locator2
void main ()
(char oldstate1 = 0;
char oldstate2 = 0;
char oldstate3 = 0;
char oldstate4 = 0;
char i = 0;
TRISA = 0b00001111;
trisb = 0x00;
trisc = 0x00;
trisd = 0x00;
trise = 0b000;
porte = 0;
portc = 0;
portb = 0;do (
if (Button (& PORTA, 0, 1, 1)) / / detektere logisk på RA0 pin
oldstate1 = 1;
if (oldstate1 & & Button (& PORTA, 0, 1, 0)) / / detektere en-til-nul-overgangen på RA0 pin
(
porte.f0 = ~ porte.f0; / / negerer værdi på RE0
oldstate1 = 0;
)
) While (1) / / endeløs løkkedo (
if (Button (& PORTA, 1, 1, 1)) / / detektere logisk på RA1 pin
oldstate2 = 1;
if (oldstate2 & & Button (& PORTA, 1, 1, 0)) / / detektere en-til-nul-overgangen på RA1 pin
(porte.f1 = ~ porte.f1; / / negerer værdi på RE0
oldstate2 = 0;
)
) While (1) / / endeløs løkkedo (
if (Button (& porta, 2, 1, 1)) / / detektere logisk på RA2 pin
oldstate3 = 1;
if (oldstate3 & & Knap (& porta, 2, 1, 0)) / / detektere en-til-nul-overgangen på RA2 pin
(
if (i = 0) (
portc = 0b11001100;
portb = 0b01010110;
i = i 1;
)
if (i = 1) (
portc = 0b01001100;
portb = 0b01011110;
i = i 1;
)
if (i = 2) (
portc = 0b00001100;
portb = 0b11011110;
i = i 1;
)
if (i = 3) (
portc = 0b01100100;
portb = 0b11010110;
i = i 1;
)
if (i = 4) (
portc = 0b01011100;
portb = 0b11000110;
i = 0;
)
oldstate3 = 0;
)
) while (1) / / endeløs løkkedo (
if (Button (& PORTA, 3, 1, 1)) / / detektere logisk på RA3 pin
oldstate4 = 1;
if (oldstate4 & & Button (& PORTA, 3, 1, 0)) / / detektere en-til-nul-overgangen på RA3 pin
(If (i = 0) (
portc = 0b01001100;
portb = 0b11100111;
i = i 1;
)
if (i = 1) (
portc = 0b01010100;
portb = 0b11110110;
i = i 1;
)
if (i = 2) (
portc = 0b01101101;
portb = 0b11010100;
i = i 1;
)
if (i = 3) (
portc = 0b01011100;
portb = 0b11011010;
i = i 1;
)
if (i = 4) (
portc = 0b01101110;
portb = 0b10010110;
i = 0;
)
oldstate4 = 0;
)
) while (1) / / endeløs løkke
)Lagt efter 4 minutter
gså her er mit kredsløb<img src="http://images.elektroda.net/87_1260126451_thumb.jpg" border="0" alt="help me with a pic16877a" title="hjælp mig med en pic16877a"/>
jeg arbejder i min sidste års projekt, jeg vælger at bruge en pic16877a, udgang til et buzzere & 8 * 8 Matrix, jeg forsøger at gennemføre mit design ved hjælp af en protous simulator, men der er ingen produktion, mens tal viser, er der en indgang, så er min kode forkert nogen vide, plz, min kode nedenfor
program locator2
void main ()
(char oldstate1 = 0;
char oldstate2 = 0;
char oldstate3 = 0;
char oldstate4 = 0;
char i = 0;
TRISA = 0b00001111;
trisb = 0x00;
trisc = 0x00;
trisd = 0x00;
trise = 0b000;
porte = 0;
portc = 0;
portb = 0;do (
if (Button (& PORTA, 0, 1, 1)) / / detektere logisk på RA0 pin
oldstate1 = 1;
if (oldstate1 & & Button (& PORTA, 0, 1, 0)) / / detektere en-til-nul-overgangen på RA0 pin
(
porte.f0 = ~ porte.f0; / / negerer værdi på RE0
oldstate1 = 0;
)
) While (1) / / endeløs løkkedo (
if (Button (& PORTA, 1, 1, 1)) / / detektere logisk på RA1 pin
oldstate2 = 1;
if (oldstate2 & & Button (& PORTA, 1, 1, 0)) / / detektere en-til-nul-overgangen på RA1 pin
(porte.f1 = ~ porte.f1; / / negerer værdi på RE0
oldstate2 = 0;
)
) While (1) / / endeløs løkkedo (
if (Button (& porta, 2, 1, 1)) / / detektere logisk på RA2 pin
oldstate3 = 1;
if (oldstate3 & & Knap (& porta, 2, 1, 0)) / / detektere en-til-nul-overgangen på RA2 pin
(
if (i = 0) (
portc = 0b11001100;
portb = 0b01010110;
i = i 1;
)
if (i = 1) (
portc = 0b01001100;
portb = 0b01011110;
i = i 1;
)
if (i = 2) (
portc = 0b00001100;
portb = 0b11011110;
i = i 1;
)
if (i = 3) (
portc = 0b01100100;
portb = 0b11010110;
i = i 1;
)
if (i = 4) (
portc = 0b01011100;
portb = 0b11000110;
i = 0;
)
oldstate3 = 0;
)
) while (1) / / endeløs løkkedo (
if (Button (& PORTA, 3, 1, 1)) / / detektere logisk på RA3 pin
oldstate4 = 1;
if (oldstate4 & & Button (& PORTA, 3, 1, 0)) / / detektere en-til-nul-overgangen på RA3 pin
(If (i = 0) (
portc = 0b01001100;
portb = 0b11100111;
i = i 1;
)
if (i = 1) (
portc = 0b01010100;
portb = 0b11110110;
i = i 1;
)
if (i = 2) (
portc = 0b01101101;
portb = 0b11010100;
i = i 1;
)
if (i = 3) (
portc = 0b01011100;
portb = 0b11011010;
i = i 1;
)
if (i = 4) (
portc = 0b01101110;
portb = 0b10010110;
i = 0;
)
oldstate4 = 0;
)
) while (1) / / endeløs løkke
)Lagt efter 4 minutter