M
me_guitarist
Guest
Can Somebody pārvērst šo kodu montāža valodu?
Es nevaru saprast C valodai tā PLS help.Thanks!
Kods:# ietvert <pic.h># define DIGIT1 RA0
# define DIGIT2 RA1
# define DIGIT3 RA2
# define ON 0
# define OFF 1/ *
RA5 - Segment a
RC5 - Segment b
RC4 - Segment c
RC3 - Segment d
RC2 - Segment e
RC1 - Segment f
RC0 - Segment gRA4 - termorezistora
* /__CONFIG (INTIO & WDTDIS & PWRTEN & MCLRDIS & Unprotect \
& Unprotect & BORDIS & IESODIS & FCMDIS);const CHAR LEDDigit [10] = (
0b0000001, / / DIGIT Nulle
0b1001111, / / DIGIT Viens
0b0010010, / / DIGIT Divi
0b0000110, / / DIGIT Trīs
0b1001100, / / DIGIT Four
0b0100100, / / DIGIT Pieci
0b0100000, / / DIGIT Six
0b0001111, / / DIGIT Seven
0b0000000, / / DIGIT Astoņi
0b0000100); / / DIGIT Deviņiint Temperatūra, TempDigit, DisplayPos, D1, j;
int ADCState;int i, j, d, t, temp;
Galvenais ()
(
/////////// INIT ////////////Porta = 0;
PORTC = 0;
TRISA = 0b010000; / / Visi biti Porta ir Iznākumi izņemot RA4
TRISC = 0; / / Visi biti PORTC ir IznākumiCMCON0 = 7; / / Izslēgt salīdzinājumam
ANSEL = 1 <<4; / / RA4 ir ADC ievade
ADCON0 = 0b00001101; / / kreiso attaisnot, izmantošanu Vdd, Channel 4 (AN3), Nelietojiet sākuma Ieslēgt
ADCON1 = 0b00010000; / / palaist oscillatr kā 8 x prescalarDisplayPos = 0;
j = 0;
Temperatūra = 0;
ADCState = 0;/ / / / Main LOOP / / / /tajā pašā laikā (1)
(
/////////// DISPLAY nolasīšanas ///////////DIGIT1 = OFF;
DIGIT2 = OFF;
DIGIT3 = OFF;ja (DisplayPos == 0) / / Light 1. segments
(
TempDigit = Temperatūra% 10; / / Just get "1" s vieta
RA5 = LEDDigit [TempDigit]>> 6; / / Ieslēgt ciparu
PORTC = LEDDigit [TempDigit];
DIGIT3 = ON;
par (D1 = 0; D1 <414; D1 ); / / atlikt uz 7ms) cits ja (DisplayPos == 1) / / Light 2. segments
(
TempDigit = Temperatūra% 100; / / Just get "10" s vieta (lentes off "100" s vieta)
TempDigit = TempDigit / 10; / / un konvertēt uz "1" s vieta
RA5 = LEDDigit [TempDigit]>> 6; / / Ieslēgt ciparu
PORTC = LEDDigit [TempDigit];
DIGIT2 = ON;
par (D1 = 0; D1 <400; D1 ); / / atlikt uz 7ms
) cits / / Light 3. segments
(
TempDigit = Temperatūra / 100; / / Just get "100" s vieta
RA5 = LEDDigit [TempDigit]>> 6; / / Ieslēgt ciparu
PORTC = LEDDigit [TempDigit];
DIGIT1 = ON;
par (D1 = 0; D1 <400; D1 ); / / atlikt uz 7ms
)DisplayPos = (DisplayPos 1)% 3; / / Nākamā segmentsj ;
if (j == 50) / / Time atjaunināt temp?
(
j = 0;slēdzim (ADCState)
(
gadījumā 0: / / Sākums ADC darbība
GODONE = 1;
ADCState = 1;
break;
gadījumā 1:
ADCState = 0;
Temperatūra = ADRESH - 82;
break;
)
)
)
)
Es nevaru saprast C valodai tā PLS help.Thanks!
Kods:# ietvert <pic.h># define DIGIT1 RA0
# define DIGIT2 RA1
# define DIGIT3 RA2
# define ON 0
# define OFF 1/ *
RA5 - Segment a
RC5 - Segment b
RC4 - Segment c
RC3 - Segment d
RC2 - Segment e
RC1 - Segment f
RC0 - Segment gRA4 - termorezistora
* /__CONFIG (INTIO & WDTDIS & PWRTEN & MCLRDIS & Unprotect \
& Unprotect & BORDIS & IESODIS & FCMDIS);const CHAR LEDDigit [10] = (
0b0000001, / / DIGIT Nulle
0b1001111, / / DIGIT Viens
0b0010010, / / DIGIT Divi
0b0000110, / / DIGIT Trīs
0b1001100, / / DIGIT Four
0b0100100, / / DIGIT Pieci
0b0100000, / / DIGIT Six
0b0001111, / / DIGIT Seven
0b0000000, / / DIGIT Astoņi
0b0000100); / / DIGIT Deviņiint Temperatūra, TempDigit, DisplayPos, D1, j;
int ADCState;int i, j, d, t, temp;
Galvenais ()
(
/////////// INIT ////////////Porta = 0;
PORTC = 0;
TRISA = 0b010000; / / Visi biti Porta ir Iznākumi izņemot RA4
TRISC = 0; / / Visi biti PORTC ir IznākumiCMCON0 = 7; / / Izslēgt salīdzinājumam
ANSEL = 1 <<4; / / RA4 ir ADC ievade
ADCON0 = 0b00001101; / / kreiso attaisnot, izmantošanu Vdd, Channel 4 (AN3), Nelietojiet sākuma Ieslēgt
ADCON1 = 0b00010000; / / palaist oscillatr kā 8 x prescalarDisplayPos = 0;
j = 0;
Temperatūra = 0;
ADCState = 0;/ / / / Main LOOP / / / /tajā pašā laikā (1)
(
/////////// DISPLAY nolasīšanas ///////////DIGIT1 = OFF;
DIGIT2 = OFF;
DIGIT3 = OFF;ja (DisplayPos == 0) / / Light 1. segments
(
TempDigit = Temperatūra% 10; / / Just get "1" s vieta
RA5 = LEDDigit [TempDigit]>> 6; / / Ieslēgt ciparu
PORTC = LEDDigit [TempDigit];
DIGIT3 = ON;
par (D1 = 0; D1 <414; D1 ); / / atlikt uz 7ms) cits ja (DisplayPos == 1) / / Light 2. segments
(
TempDigit = Temperatūra% 100; / / Just get "10" s vieta (lentes off "100" s vieta)
TempDigit = TempDigit / 10; / / un konvertēt uz "1" s vieta
RA5 = LEDDigit [TempDigit]>> 6; / / Ieslēgt ciparu
PORTC = LEDDigit [TempDigit];
DIGIT2 = ON;
par (D1 = 0; D1 <400; D1 ); / / atlikt uz 7ms
) cits / / Light 3. segments
(
TempDigit = Temperatūra / 100; / / Just get "100" s vieta
RA5 = LEDDigit [TempDigit]>> 6; / / Ieslēgt ciparu
PORTC = LEDDigit [TempDigit];
DIGIT1 = ON;
par (D1 = 0; D1 <400; D1 ); / / atlikt uz 7ms
)DisplayPos = (DisplayPos 1)% 3; / / Nākamā segmentsj ;
if (j == 50) / / Time atjaunināt temp?
(
j = 0;slēdzim (ADCState)
(
gadījumā 0: / / Sākums ADC darbība
GODONE = 1;
ADCState = 1;
break;
gadījumā 1:
ADCState = 0;
Temperatūra = ADRESH - 82;
break;
)
)
)
)