A
angelomary
Guest
Здравейте всички:
Работя в последната ми година на проекта, и да реши да използва pic16877a, производство на бутоните & 8 * 8 Матрични, аз се опитвам да приложи ми дизайн с помощта на protous симулатор, но няма изход, докато цифра посочва също е въвеждане на така е ми код неправилно Някой знае ли PLZ, ми код, изброени по-долу
програма locator2
нищожен основни ()
(Чар oldstate1 = 0;
Чар oldstate2 = 0;
Чар oldstate3 = 0;
Чар oldstate4 = 0;
Чар I = 0;
trisa = 0b00001111;
trisb = 0x00;
trisc = 0x00;
trisd = 0x00;
trise = 0b000;
порта = 0;
portc = 0;
portb = 0;направи (
IF (Бътън (& PORTA, 0, 1, 1)) / / откриване на логически един на RA0 щифт
oldstate1 = 1;
IF (oldstate1 & & Бътън (& PORTA, 0, 1, 0)) / / открива един към нула преход RA0 щифт
(
porte.f0 = ~ porte.f0 / / отрича стойността на RE0
oldstate1 = 0;
)
) Докато (1); / / безкраен цикълнаправи (
IF (Бътън (& порта, 1, 1, 1)) / / откриване на логически един на Ra1 щифт
oldstate2 = 1;
IF (oldstate2 & & Бътън (& порта, 1, 1, 0)) / / открива един към нула преход Ra1 щифт{porte.f1 = ~ porte.f1; // negates value on RE0 oldstate2 = 0;
)
) Докато (1); / / безкраен цикълнаправи (
IF (Бътън (& порта, 2, 1, 1)) / / откриване на логически един на RA2 щифт
oldstate3 = 1;
IF (oldstate3 & & Бътън (& порта, 2, 1, 0)) / / открива един към нула преход RA2 щифт
(
ако (I = 0) (
portc = 0b11001100;
portb = 0b01010110;
I = I 1;
)
ако (I = 1) (
portc = 0b01001100;
portb = 0b01011110;
I = I 1;
)
ако (I = 2) (
portc = 0b00001100;
portb = 0b11011110;
I = I 1;
)
ако (I = 3) (
portc = 0b01100100;
portb = 0b11010110;
I = I 1;
)
ако (I = 4) (
portc = 0b01011100;
portb = 0b11000110;
I = 0;
)
oldstate3 = 0;
)
) докато (1); / / безкраен цикълнаправи (
IF (Бътън (& порта, 3, 1, 1)) / / откриване на логически един на RA3 щифт
oldstate4 = 1;
IF (oldstate4 & & Бътън (& порта, 3, 1, 0)) / / открива един към нула преход RA3 щифт
(Ако (I = 0) (portc=0b01001100; portb = 0b11100111;
I = I 1;
)
ако (I = 1) (
portc = 0b01010100;
portb = 0b11110110;i=i 1; )
ако (I = 2) (
portc = 0b01101101;
portb = 0b11010100;
I = I 1;
)
ако (I = 3) (
portc = 0b01011100;
portb = 0b11011010;
I = I 1;
)
ако (I = 4) (portc=0b01101110; portb = 0b10010110;
I = 0;
)
oldstate4 = 0;
)
) докато (1); / / безкраен цикъл
)Added след 4 минути:и тук е моята схема<img src="http://images.elektroda.net/87_1260126451_thumb.jpg" border="0" alt="help me with a pic16877a" title="Помогнете ми с pic16877a"/>
Работя в последната ми година на проекта, и да реши да използва pic16877a, производство на бутоните & 8 * 8 Матрични, аз се опитвам да приложи ми дизайн с помощта на protous симулатор, но няма изход, докато цифра посочва също е въвеждане на така е ми код неправилно Някой знае ли PLZ, ми код, изброени по-долу
програма locator2
нищожен основни ()
(Чар oldstate1 = 0;
Чар oldstate2 = 0;
Чар oldstate3 = 0;
Чар oldstate4 = 0;
Чар I = 0;
trisa = 0b00001111;
trisb = 0x00;
trisc = 0x00;
trisd = 0x00;
trise = 0b000;
порта = 0;
portc = 0;
portb = 0;направи (
IF (Бътън (& PORTA, 0, 1, 1)) / / откриване на логически един на RA0 щифт
oldstate1 = 1;
IF (oldstate1 & & Бътън (& PORTA, 0, 1, 0)) / / открива един към нула преход RA0 щифт
(
porte.f0 = ~ porte.f0 / / отрича стойността на RE0
oldstate1 = 0;
)
) Докато (1); / / безкраен цикълнаправи (
IF (Бътън (& порта, 1, 1, 1)) / / откриване на логически един на Ra1 щифт
oldstate2 = 1;
IF (oldstate2 & & Бътън (& порта, 1, 1, 0)) / / открива един към нула преход Ra1 щифт{porte.f1 = ~ porte.f1; // negates value on RE0 oldstate2 = 0;
)
) Докато (1); / / безкраен цикълнаправи (
IF (Бътън (& порта, 2, 1, 1)) / / откриване на логически един на RA2 щифт
oldstate3 = 1;
IF (oldstate3 & & Бътън (& порта, 2, 1, 0)) / / открива един към нула преход RA2 щифт
(
ако (I = 0) (
portc = 0b11001100;
portb = 0b01010110;
I = I 1;
)
ако (I = 1) (
portc = 0b01001100;
portb = 0b01011110;
I = I 1;
)
ако (I = 2) (
portc = 0b00001100;
portb = 0b11011110;
I = I 1;
)
ако (I = 3) (
portc = 0b01100100;
portb = 0b11010110;
I = I 1;
)
ако (I = 4) (
portc = 0b01011100;
portb = 0b11000110;
I = 0;
)
oldstate3 = 0;
)
) докато (1); / / безкраен цикълнаправи (
IF (Бътън (& порта, 3, 1, 1)) / / откриване на логически един на RA3 щифт
oldstate4 = 1;
IF (oldstate4 & & Бътън (& порта, 3, 1, 0)) / / открива един към нула преход RA3 щифт
(Ако (I = 0) (portc=0b01001100; portb = 0b11100111;
I = I 1;
)
ако (I = 1) (
portc = 0b01010100;
portb = 0b11110110;i=i 1; )
ако (I = 2) (
portc = 0b01101101;
portb = 0b11010100;
I = I 1;
)
ако (I = 3) (
portc = 0b01011100;
portb = 0b11011010;
I = I 1;
)
ако (I = 4) (portc=0b01101110; portb = 0b10010110;
I = 0;
)
oldstate4 = 0;
)
) докато (1); / / безкраен цикъл
)Added след 4 минути:и тук е моята схема<img src="http://images.elektroda.net/87_1260126451_thumb.jpg" border="0" alt="help me with a pic16877a" title="Помогнете ми с pic16877a"/>