Buscar

Praticas de Sistemas Embarcados

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Calculator/Pronto/Calculator/Calculator.asm
_LCD:
;Calculator.c,17 :: 		void LCD(char texto[16]){
;Calculator.c,18 :: 		Lcd_Cmd(_LCD_CLEAR);
	MOVLW 1
	MOVWF FARG_Lcd_Cmd_out_char+0 
	CALL _Lcd_Cmd+0, 0
;Calculator.c,19 :: 		Lcd_Out(1,4,texto);
	MOVLW 1
	MOVWF FARG_Lcd_Out_row+0 
	MOVLW 4
	MOVWF FARG_Lcd_Out_column+0 
	MOVF FARG_LCD_texto+0, 0 
	MOVWF FARG_Lcd_Out_text+0 
	MOVF FARG_LCD_texto+1, 0 
	MOVWF FARG_Lcd_Out_text+1 
	CALL _Lcd_Out+0, 0
;Calculator.c,20 :: 		}
L_end_LCD:
	RETURN 0
; end of _LCD
_main:
;Calculator.c,26 :: 		void main() {
;Calculator.c,27 :: 		Lcd_Cmd(_LCD_CLEAR);
	MOVLW 1
	MOVWF FARG_Lcd_Cmd_out_char+0 
	CALL _Lcd_Cmd+0, 0
;Calculator.c,28 :: 		ADCON1=0x0f; //desativa portas AD
	MOVLW 15
	MOVWF ADCON1+0 
;Calculator.c,29 :: 		trisd=0x0f; //ob00001111
	MOVLW 15
	MOVWF TRISD+0 
;Calculator.c,30 :: 		portb=0xff; //ob11111111
	MOVLW 255
	MOVWF PORTB+0 
;Calculator.c,31 :: 		trisb=0xf8; //ob11111000
	MOVLW 248
	MOVWF TRISB+0 
;Calculator.c,32 :: 		Lcd_Init();
	CALL _Lcd_Init+0, 0
;Calculator.c,33 :: 		Lcd_Cmd(_LCD_CURSOR_OFF); //Desabilita o cursor
	MOVLW 12
	MOVWF FARG_Lcd_Cmd_out_char+0 
	CALL _Lcd_Cmd+0, 0
;Calculator.c,36 :: 		while(1){
L_main0:
;Calculator.c,39 :: 		while(aux1==-1){
L_main2:
	MOVLW 255
	XORWF _aux1+1, 0 
	BTFSS STATUS+0, 2 
	GOTO L__main56
	MOVLW 255
	XORWF _aux1+0, 0 
L__main56:
	BTFSS STATUS+0, 2 
	GOTO L_main3
;Calculator.c,40 :: 		portb.rb1=0; //ativa a segunda coluna
	BCF PORTB+0, 1 
;Calculator.c,41 :: 		if (portd.rd0==0){
	BTFSC PORTD+0, 0 
	GOTO L_main4
;Calculator.c,43 :: 		aux1=0;
	CLRF _aux1+0 
	CLRF _aux1+1 
;Calculator.c,44 :: 		}else if (portd.rd1==0){
	GOTO L_main5
L_main4:
	BTFSC PORTD+0, 1 
	GOTO L_main6
;Calculator.c,46 :: 		aux1=8;
	MOVLW 8
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
;Calculator.c,47 :: 		}else if (portd.rd2==0){
	GOTO L_main7
L_main6:
	BTFSC PORTD+0, 2 
	GOTO L_main8
;Calculator.c,49 :: 		aux1 = 5;
	MOVLW 5
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
;Calculator.c,50 :: 		}else if (portd.rd3==0){
	GOTO L_main9
L_main8:
	BTFSC PORTD+0, 3 
	GOTO L_main10
;Calculator.c,52 :: 		aux1 = 2;}
	MOVLW 2
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
L_main10:
L_main9:
L_main7:
L_main5:
;Calculator.c,53 :: 		portb.rb1=1; //desativa a segunda coluna
	BSF PORTB+0, 1 
;Calculator.c,55 :: 		portb.rb2=0; //ativa a terceira coluna
	BCF PORTB+0, 2 
;Calculator.c,56 :: 		if (portd.rd0==0);
	BTFSC PORTD+0, 0 
	GOTO L_main11
	GOTO L_main12
L_main11:
;Calculator.c,58 :: 		else if (portd.rd1==0){
	BTFSC PORTD+0, 1 
	GOTO L_main13
;Calculator.c,60 :: 		aux1 = 9;
	MOVLW 9
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
;Calculator.c,61 :: 		}else if (portd.rd2==0){
	GOTO L_main14
L_main13:
	BTFSC PORTD+0, 2 
	GOTO L_main15
;Calculator.c,63 :: 		aux1 = 6;
	MOVLW 6
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
;Calculator.c,64 :: 		}else if (portd.rd3==0){
	GOTO L_main16
L_main15:
	BTFSC PORTD+0, 3 
	GOTO L_main17
;Calculator.c,66 :: 		aux1 = 3;}
	MOVLW 3
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
L_main17:
L_main16:
L_main14:
L_main12:
;Calculator.c,67 :: 		portb.rb2=1; //desativa a terceira coluna
	BSF PORTB+0, 2 
;Calculator.c,69 :: 		portb.rb0=0; //ativa a primeira coluna
	BCF PORTB+0, 0 
;Calculator.c,70 :: 		if (portd.rd0==0);
	BTFSC PORTD+0, 0 
	GOTO L_main18
	GOTO L_main19
L_main18:
;Calculator.c,72 :: 		else if (portd.rd1==0){
	BTFSC PORTD+0, 1 
	GOTO L_main20
;Calculator.c,74 :: 		aux1 = 7;
	MOVLW 7
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
;Calculator.c,75 :: 		}else if (portd.rd2==0){
	GOTO L_main21
L_main20:
	BTFSC PORTD+0, 2 
	GOTO L_main22
;Calculator.c,77 :: 		aux1 = 4;
	MOVLW 4
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
;Calculator.c,78 :: 		}else if (portd.rd3==0){
	GOTO L_main23
L_main22:
	BTFSC PORTD+0, 3 
	GOTO L_main24
;Calculator.c,80 :: 		aux1 = 1;}
	MOVLW 1
	MOVWF _aux1+0 
	MOVLW 0
	MOVWF _aux1+1 
L_main24:
L_main23:
L_main21:
L_main19:
;Calculator.c,81 :: 		portb.rb0=1; //desativa a primeira coluna
	BSF PORTB+0, 0 
;Calculator.c,83 :: 		};
	GOTO L_main2
L_main3:
;Calculator.c,84 :: 		Lcd_Cmd(_LCD_CLEAR);
	MOVLW 1
	MOVWF FARG_Lcd_Cmd_out_char+0 
	CALL _Lcd_Cmd+0, 0
;Calculator.c,85 :: 		inttostr(aux1,H);
	MOVF _aux1+0, 0 
	MOVWF FARG_IntToStr_input+0 
	MOVF _aux1+1, 0 
	MOVWF FARG_IntToStr_input+1 
	MOVLW _H+0
	MOVWF FARG_IntToStr_output+0 
	MOVLW hi_addr(_H+0)
	MOVWF FARG_IntToStr_output+1 
	CALL _IntToStr+0, 0
;Calculator.c,86 :: 		Lcd_Out(1,1,H);
	MOVLW 1
	MOVWF FARG_Lcd_Out_row+0 
	MOVLW 1
	MOVWF FARG_Lcd_Out_column+0 
	MOVLW _H+0
	MOVWF FARG_Lcd_Out_text+0 
	MOVLW hi_addr(_H+0)
	MOVWF FARG_Lcd_Out_text+1 
	CALL _Lcd_Out+0, 0
;Calculator.c,87 :: 		delay_ms(200);
	MOVLW 3
	MOVWF R11, 0
	MOVLW 8
	MOVWF R12, 0
	MOVLW 119
	MOVWF R13, 0
L_main25:
	DECFSZ R13, 1, 1
	BRA L_main25
	DECFSZ R12, 1, 1
	BRA L_main25
	DECFSZ R11, 1, 1
	BRA L_main25
;Calculator.c,88 :: 		LCD_Out(2,1,"->");
	MOVLW 2
	MOVWF FARG_Lcd_Out_row+0 
	MOVLW 1
	MOVWF FARG_Lcd_Out_column+0 
	MOVLW ?lstr1_Calculator+0
	MOVWF FARG_Lcd_Out_text+0 
	MOVLW hi_addr(?lstr1_Calculator+0)
	MOVWF FARG_Lcd_Out_text+1 
	CALL _Lcd_Out+0, 0
;Calculator.c,90 :: 		while(aux2==-1){
L_main26:
	MOVLW 255
	XORWF _aux2+1, 0 
	BTFSS STATUS+0, 2 
	GOTO L__main57
	MOVLW 255
	XORWF _aux2+0, 0 
L__main57:
	BTFSS STATUS+0, 2 
	GOTO L_main27
;Calculator.c,91 :: 		portb.rb1=0; //ativa a segunda coluna
	BCF PORTB+0, 1 
;Calculator.c,92 :: 		if (portd.rd0==0){
	BTFSC PORTD+0, 0 
	GOTO L_main28
;Calculator.c,94 :: 		aux2=0;
	CLRF _aux2+0 
	CLRF _aux2+1 
;Calculator.c,95 :: 		}else if (portd.rd1==0){
	GOTO L_main29
L_main28:
	BTFSC PORTD+0, 1 
	GOTO L_main30
;Calculator.c,97 :: 		aux2=8;
	MOVLW 8
	MOVWF _aux2+0 
	MOVLW 0
	MOVWF _aux2+1 
;Calculator.c,98 :: 		}else if (portd.rd2==0){
	GOTO L_main31
L_main30:
	BTFSC PORTD+0, 2 
	GOTO L_main32
;Calculator.c,100 :: 		aux2 = 5;
	MOVLW 5
	MOVWF _aux2+0 
	MOVLW 0
	MOVWF _aux2+1 
;Calculator.c,101 :: 		}else if (portd.rd3==0){
	GOTO L_main33
L_main32:
	BTFSC PORTD+0, 3 
	GOTO L_main34
;Calculator.c,103 :: 		aux2 = 2;}
	MOVLW 2
	MOVWF _aux2+0 
	MOVLW 0
	MOVWF _aux2+1 
L_main34:
L_main33:
L_main31:
L_main29:
;Calculator.c,104 :: 		portb.rb1=1; //desativa a segunda coluna
	BSF PORTB+0, 1 
;Calculator.c,106 :: 		portb.rb2=0; //ativa a terceira coluna
	BCF PORTB+0, 2 
;Calculator.c,107 :: 		if (portd.rd0==0);
	BTFSC PORTD+0, 0 
	GOTO L_main35
	GOTO L_main36
L_main35:
;Calculator.c,109 :: 		else if (portd.rd1==0){
	BTFSC PORTD+0, 1 
	GOTO L_main37
;Calculator.c,110 :: 		aux2 = 9;
	MOVLW 9
	MOVWF _aux2+0
MOVLW 0
	MOVWF _aux2+1 
;Calculator.c,111 :: 		}else if (portd.rd2==0){
	GOTO L_main38
L_main37:
	BTFSC PORTD+0, 2 
	GOTO L_main39
;Calculator.c,113 :: 		aux2 = 6;
	MOVLW 6
	MOVWF _aux2+0 
	MOVLW 0
	MOVWF _aux2+1 
;Calculator.c,114 :: 		}else if (portd.rd3==0){
	GOTO L_main40
L_main39:
	BTFSC PORTD+0, 3 
	GOTO L_main41
;Calculator.c,116 :: 		aux2 = 3;}
	MOVLW 3
	MOVWF _aux2+0 
	MOVLW 0
	MOVWF _aux2+1 
L_main41:
L_main40:
L_main38:
L_main36:
;Calculator.c,117 :: 		portb.rb2=1; //desativa a terceira coluna
	BSF PORTB+0, 2 
;Calculator.c,119 :: 		portb.rb0=0; //ativa a primeira coluna
	BCF PORTB+0, 0 
;Calculator.c,120 :: 		if (portd.rd0==0);
	BTFSC PORTD+0, 0 
	GOTO L_main42
	GOTO L_main43
L_main42:
;Calculator.c,122 :: 		else if (portd.rd1==0){
	BTFSC PORTD+0, 1 
	GOTO L_main44
;Calculator.c,124 :: 		aux2 = 7;
	MOVLW 7
	MOVWF _aux2+0 
	MOVLW 0
	MOVWF _aux2+1 
;Calculator.c,125 :: 		}else if (portd.rd2==0){
	GOTO L_main45
L_main44:
	BTFSC PORTD+0, 2 
	GOTO L_main46
;Calculator.c,127 :: 		aux2 = 4;
	MOVLW 4
	MOVWF _aux2+0 
	MOVLW 0
	MOVWF _aux2+1 
;Calculator.c,128 :: 		}else if (portd.rd3==0){
	GOTO L_main47
L_main46:
	BTFSC PORTD+0, 3 
	GOTO L_main48
;Calculator.c,130 :: 		aux2 = 1;}
	MOVLW 1
	MOVWF _aux2+0 
	MOVLW 0
	MOVWF _aux2+1 
L_main48:
L_main47:
L_main45:
L_main43:
;Calculator.c,131 :: 		portb.rb0=1; //desativa a primeira coluna
	BSF PORTB+0, 0 
;Calculator.c,133 :: 		};
	GOTO L_main26
L_main27:
;Calculator.c,134 :: 		inttostr(aux2,H);
	MOVF _aux2+0, 0 
	MOVWF FARG_IntToStr_input+0 
	MOVF _aux2+1, 0 
	MOVWF FARG_IntToStr_input+1 
	MOVLW _H+0
	MOVWF FARG_IntToStr_output+0 
	MOVLW hi_addr(_H+0)
	MOVWF FARG_IntToStr_output+1 
	CALL _IntToStr+0, 0
;Calculator.c,135 :: 		Lcd_Out(2,1,H);
	MOVLW 2
	MOVWF FARG_Lcd_Out_row+0 
	MOVLW 1
	MOVWF FARG_Lcd_Out_column+0 
	MOVLW _H+0
	MOVWF FARG_Lcd_Out_text+0 
	MOVLW hi_addr(_H+0)
	MOVWF FARG_Lcd_Out_text+1 
	CALL _Lcd_Out+0, 0
;Calculator.c,136 :: 		while(flag == -1){
L_main49:
	MOVLW 255
	XORWF _flag+1, 0 
	BTFSS STATUS+0, 2 
	GOTO L__main58
	MOVLW 255
	XORWF _flag+0, 0 
L__main58:
	BTFSS STATUS+0, 2 
	GOTO L_main50
;Calculator.c,137 :: 		portb.rb2=0; //ativa a terceira coluna
	BCF PORTB+0, 2 
;Calculator.c,138 :: 		if (portd.rd0==0){
	BTFSC PORTD+0, 0 
	GOTO L_main51
;Calculator.c,139 :: 		res = aux1 + aux2;
	MOVF _aux2+0, 0 
	ADDWF _aux1+0, 0 
	MOVWF R0 
	MOVF _aux2+1, 0 
	ADDWFC _aux1+1, 0 
	MOVWF R1 
	MOVF R0, 0 
	MOVWF _res+0 
	MOVF R1, 0 
	MOVWF _res+1 
;Calculator.c,140 :: 		inttostr(res,H);
	MOVF R0, 0 
	MOVWF FARG_IntToStr_input+0 
	MOVF R1, 0 
	MOVWF FARG_IntToStr_input+1 
	MOVLW _H+0
	MOVWF FARG_IntToStr_output+0 
	MOVLW hi_addr(_H+0)
	MOVWF FARG_IntToStr_output+1 
	CALL _IntToStr+0, 0
;Calculator.c,141 :: 		LCD(H);
	MOVLW _H+0
	MOVWF FARG_LCD_texto+0 
	MOVLW hi_addr(_H+0)
	MOVWF FARG_LCD_texto+1 
	CALL _LCD+0, 0
;Calculator.c,142 :: 		flag = 0;}
	CLRF _flag+0 
	CLRF _flag+1 
L_main51:
;Calculator.c,143 :: 		portb.rb2=1; //desativa a terceira coluna
	BSF PORTB+0, 2 
;Calculator.c,145 :: 		portb.rb0=0; //ativa a primeira coluna
	BCF PORTB+0, 0 
;Calculator.c,146 :: 		if (portd.rd0==0){
	BTFSC PORTD+0, 0 
	GOTO L_main52
;Calculator.c,147 :: 		res = aux1 - aux2;
	MOVF _aux2+0, 0 
	SUBWF _aux1+0, 0 
	MOVWF R0 
	MOVF _aux2+1, 0 
	SUBWFB _aux1+1, 0 
	MOVWF R1 
	MOVF R0, 0 
	MOVWF _res+0 
	MOVF R1, 0 
	MOVWF _res+1 
;Calculator.c,148 :: 		inttostr(res,H);
	MOVF R0, 0 
	MOVWF FARG_IntToStr_input+0 
	MOVF R1, 0 
	MOVWF FARG_IntToStr_input+1 
	MOVLW _H+0
	MOVWF FARG_IntToStr_output+0 
	MOVLW hi_addr(_H+0)
	MOVWF FARG_IntToStr_output+1 
	CALL _IntToStr+0, 0
;Calculator.c,149 :: 		LCD(H);
	MOVLW _H+0
	MOVWF FARG_LCD_texto+0 
	MOVLW hi_addr(_H+0)
	MOVWF FARG_LCD_texto+1 
	CALL _LCD+0, 0
;Calculator.c,150 :: 		flag = 0;}
	CLRF _flag+0 
	CLRF _flag+1 
L_main52:
;Calculator.c,151 :: 		portb.rb0=1; //desativa a primeira coluna
	BSF PORTB+0, 0 
;Calculator.c,153 :: 		};
	GOTO L_main49
L_main50:
;Calculator.c,154 :: 		flag = -1;
	MOVLW 255
	MOVWF _flag+0 
	MOVLW 255
	MOVWF _flag+1 
;Calculator.c,155 :: 		aux1 = -1;
	MOVLW 255
	MOVWF _aux1+0 
	MOVLW 255
	MOVWF _aux1+1 
;Calculator.c,156 :: 		aux2 = -1;
	MOVLW 255
	MOVWF _aux2+0 
	MOVLW 255
	MOVWF _aux2+1 
;Calculator.c,157 :: 		res = 0;
	CLRF _res+0 
	CLRF _res+1 
;Calculator.c,158 :: 		delay_ms(1000);
	MOVLW 11
	MOVWF R11, 0
	MOVLW 38
	MOVWF R12, 0
	MOVLW 93
	MOVWF R13, 0
L_main53:
	DECFSZ R13, 1, 1
	BRA L_main53
	DECFSZ R12, 1, 1
	BRA L_main53
	DECFSZ R11, 1, 1
	BRA L_main53
	NOP
	NOP
;Calculator.c,159 :: 		Lcd_Out(1,1,"End");
	MOVLW 1
	MOVWF FARG_Lcd_Out_row+0 
	MOVLW 1
	MOVWF FARG_Lcd_Out_column+0 
	MOVLW ?lstr2_Calculator+0
	MOVWF FARG_Lcd_Out_text+0 
	MOVLW hi_addr(?lstr2_Calculator+0)
	MOVWF FARG_Lcd_Out_text+1 
	CALL _Lcd_Out+0, 0
;Calculator.c,160 :: 		}
	GOTO L_main0
;Calculator.c,161 :: 		}
L_end_main:
	GOTO $+0
; end of _main
Calculator/Pronto/Calculator/Calculator.bmk
<BOOKMARKS/>
Calculator/Pronto/Calculator/Calculator.brk
<BREAKS/>
Calculator/Pronto/Calculator/Calculator.c
// LCD module connections
sbit LCD_RS at RE2_bit;
sbit LCD_EN at RE1_bit;
sbit LCD_D4 at RD4_bit;
sbit LCD_D5 at RD5_bit;
sbit LCD_D6 at RD6_bit;
sbit LCD_D7 at RD7_bit;
sbit LCD_RS_Direction at TRISE2_bit;
sbit LCD_EN_Direction at TRISE1_bit;
sbit LCD_D4_Direction at TRISD4_bit;
sbit LCD_D5_Direction at TRISD5_bit;
sbit LCD_D6_Direction at TRISD6_bit;
sbit LCD_D7_Direction at TRISD7_bit;
// End LCD mocule connection
// funcao para escrever no LCD
void LCD(char texto[16]){
 Lcd_Cmd(_LCD_CLEAR);
 Lcd_Out(1,4,texto);
}
//declaracao de variaveis
 int aux1 = -1;
 int aux2 = -1;
 int flag = -1;
 int res = 0;
 char H[7];
 
void main() {
 Lcd_Cmd(_LCD_CLEAR); //limpa o LCD
 ADCON1=0x0f; //desativa portas AD
 trisd=0x0f; //ob00001111
 portb=0xff; //ob11111111
 trisb=0xf8; //ob11111000
 Lcd_Init(); //inicializa o LCD
 Lcd_Cmd(_LCD_CURSOR_OFF); //Desabilita o cursor
 
 while(1){
// while para captura do primeiro digito
 while(aux1==-1){
 portb.rb1=0; //ativa a segunda coluna
 if (portd.rd0==0){
 aux1=0;
 }else if (portd.rd1==0){
 aux1=8;
 }else if (portd.rd2==0){
 aux1 = 5;
 }else if (portd.rd3==0){
 aux1 = 2;}
 portb.rb1=1; //desativa a segunda coluna
 portb.rb2=0; //ativa a terceira coluna
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux1 = 9;
 }else if (portd.rd2==0){
 aux1 = 6;
 }else if (portd.rd3==0){
 aux1 =
3;}
 portb.rb2=1; //desativa a terceira coluna
 portb.rb0=0; //ativa a primeira coluna
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux1 = 7;
 }else if (portd.rd2==0){
 aux1 = 4;
 }else if (portd.rd3==0){
 aux1 = 1;}
 portb.rb0=1; //desativa a primeira coluna
 };
 Lcd_Cmd(_LCD_CLEAR); // limpa o LCD
 inttostr(aux1,H); // converte o primeiro digito para uma string
 Lcd_Out(1,1,H); // escreve o primeiro digito no LCD
 delay_ms(200); // delay
 LCD_Out(2,1,"->"); // indica que o software esta pronto para capturar o segundo digito
 
 // while para captura do segundo digito
 
 while(aux2==-1){
 portb.rb1=0; //ativa a segunda coluna
 if (portd.rd0==0){
 aux2=0;
 }else if (portd.rd1==0){
 aux2=8;
 }else if (portd.rd2==0){
 aux2 = 5;
 }else if (portd.rd3==0){
 aux2 = 2;}
 portb.rb1=1; //desativa a segunda coluna
 portb.rb2=0; //ativa a terceira coluna
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux2 = 9;
 }else if (portd.rd2==0){
 aux2 = 6;
 }else if (portd.rd3==0){
 aux2 = 3;}
 portb.rb2=1; //desativa a terceira coluna
 portb.rb0=0; //ativa a primeira coluna
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux2 = 7;
 }else if (portd.rd2==0){
 aux2 = 4;
 }else if (portd.rd3==0){
 aux2 = 1;}
 portb.rb0=1; //desativa a primeira coluna
 };
 inttostr(aux2,H); // converte o segundo digito para uma string
 Lcd_Out(2,1,H); // escreve o segundo digito no LCD
 
 // while para capturar a operacao matematica
 
 while(flag == -1){
 portb.rb2=0; //ativa a terceira coluna
 if (portd.rd0==0){
 res = aux1 + aux2; // faz a operecao de soma
 inttostr(res,H); // converte o resultado da operacao para uma string
 LCD(H); // escreve o resultado da operacao no LCD
 flag = 0;} // reseta o valor da flag
 portb.rb2=1; //desativa a terceira coluna
 portb.rb0=0; //ativa a primeira coluna
 if (portd.rd0==0){
 res = aux1 - aux2; // faz a operecao de subtracao
 inttostr(res,H); // converte o resultado da operacao para uma string
 LCD(H); // escreve o resultado da operacao no LCD
 flag = 0;} // reseta o valor da flag
 portb.rb0=1; //desativa a primeira coluna
 };
 
 // reseta os valores das variaveis
 flag = -1;
 aux1 = -1;
 aux2 = -1;
 res = 0;
 
 delay_ms(1000); // delay
 Lcd_Out(1,1,"End"); // indica que o programa chegou ao fim e esta pronot para fazer outra conta
}
}
Calculator/Pronto/Calculator/Calculator.c.ini
[Position]
Line=44
Column=6
[FoldedLines]
Count=0
Calculator/Pronto/Calculator/Calculator.cfg
 
 
 P18F4550
 
 12
 
 $300000:$0001
 
 
 $300001:$000C
 
 
 $300002:$0019
 
 
 $300003:$001E
 
 
 $300005:$0000
 
 
 $300006:$0080
 
 
 $300008:$000F
 
 
 $300009:$00C0
 
 
 $30000A:$000F
 
 
 $30000B:$00E0
 
 
 $30000C:$000F
 
 
 $30000D:$0040
 
 
 
Calculator/Pronto/Calculator/Calculator.cp
#line 1 "C:/Users/Aluno/Desktop/Calculator/Calculator.c"
sbit LCD_RS at RE2_bit;
sbit LCD_EN at RE1_bit;
sbit LCD_D4 at RD4_bit;
sbit LCD_D5 at RD5_bit;
sbit LCD_D6 at RD6_bit;
sbit LCD_D7 at RD7_bit;
sbit LCD_RS_Direction at TRISE2_bit;
sbit LCD_EN_Direction at TRISE1_bit;
sbit LCD_D4_Direction at TRISD4_bit;
sbit LCD_D5_Direction at TRISD5_bit;
sbit LCD_D6_Direction at TRISD6_bit;
sbit LCD_D7_Direction at TRISD7_bit;
void LCD(char texto[16]){
 Lcd_Cmd(_LCD_CLEAR);
 Lcd_Out(1,4,texto);
}
 int aux1 = -1;
 int aux2 = -1;
 int flag = -1;
 int res = 0;
 char H[7];
void main() {
 Lcd_Cmd(_LCD_CLEAR);
 ADCON1=0x0f;
 trisd=0x0f;
 portb=0xff;
 trisb=0xf8;
 Lcd_Init();
 Lcd_Cmd(_LCD_CURSOR_OFF);
 while(1){
 while(aux1==-1){
 portb.rb1=0;
 if (portd.rd0==0){
 aux1=0;
 }else if (portd.rd1==0){
 aux1=8;
 }else if (portd.rd2==0){
 aux1 = 5;
 }else if (portd.rd3==0){
 aux1 = 2;}
 portb.rb1=1;
 portb.rb2=0;
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux1 = 9;
 }else if (portd.rd2==0){
 aux1 = 6;
 }else if (portd.rd3==0){
 aux1 = 3;}
 portb.rb2=1;
 portb.rb0=0;
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux1 = 7;
 }else if (portd.rd2==0){
 aux1 = 4;
 }else if (portd.rd3==0){
 aux1 = 1;}
 portb.rb0=1;
 };
 Lcd_Cmd(_LCD_CLEAR);
 inttostr(aux1,H);
 Lcd_Out(1,1,H);
 delay_ms(200);
 LCD_Out(2,1,"->");
 while(aux2==-1){
 portb.rb1=0;
 if (portd.rd0==0){
 aux2=0;
 }else if (portd.rd1==0){
 aux2=8;
 }else if (portd.rd2==0){
 aux2 = 5;
 }else if (portd.rd3==0){
 aux2 = 2;}
 portb.rb1=1;
 portb.rb2=0;
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux2 = 9;
 }else if (portd.rd2==0){
 aux2 = 6;
 }else if (portd.rd3==0){
 aux2 = 3;}
 portb.rb2=1;
 portb.rb0=0;
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux2 = 7;
 }else if (portd.rd2==0){
 aux2 = 4;
 }else if (portd.rd3==0){
 aux2 = 1;}
 portb.rb0=1;
 };
 inttostr(aux2,H);
 Lcd_Out(2,1,H);
 while(flag == -1){
 portb.rb2=0;
 if (portd.rd0==0){
 res = aux1 + aux2;
 inttostr(res,H);
 LCD(H);
 flag = 0;}
 portb.rb2=1;
 portb.rb0=0;
 if (portd.rd0==0){
 res = aux1 - aux2;
 inttostr(res,H);
 LCD(H);
 flag = 0;}
 portb.rb0=1;
 };
 flag = -1;
 aux1 = -1;
 aux2 = -1;
 res = 0;
 delay_ms(1000);
 Lcd_Out(1,1,"End");
}
}
Calculator/Pronto/Calculator/Calculator.dbg
Calculator/Pronto/Calculator/Calculator.dct
 
______
____doifc
___boot_delay128k
___boot_delay12k
___boot_delay16k
___boot_delay24k
___boot_delay32k
___boot_delay48k
___boot_delay4k
___boot_delay64k
___boot_delay8k
___mdb4
___mdb5
___mdb6
___mdb7
___menable
___mrs
__ca2aw
__cc2d
__cc2dw
__cca2aw
__ccs2s
__cs2s
__f16_errno
__flash_size
__fzins
__low_savebsr
__low_savestatus
__low_savewreg
__ps2_caps
__ps2_num
__ps2_scroll
__ps2_shift
__spi_lcd8_db0
__spi_lcd8_db1
__spi_lcd8_db2
__spi_lcd8_db3
__spi_lcd8_db4
__spi_lcd8_db5
__spi_lcd8_db6
__spi_lcd8_db7
__spi_lcd8_enable
__spi_lcd8_rs
__spi_lcd8_rw
_canspi_config_all_msg
_canspi_config_all_valid_msg
_canspi_config_dbl_buffer_bit
_canspi_config_dbl_buffer_off
_canspi_config_dbl_buffer_on
_canspi_config_default
_canspi_config_line_filter_bit
_canspi_config_line_filter_off
_canspi_config_line_filter_on
_canspi_config_msg_bits
_canspi_config_msg_type_bit
_canspi_config_phseg2_prg_bit
_canspi_config_phseg2_prg_off
_canspi_config_phseg2_prg_on
_canspi_config_sample_bit
_canspi_config_sample_once
_canspi_config_sample_thrice
_canspi_config_std_msg
_canspi_config_valid_std_msg
_canspi_config_valid_xtd_msg
_canspi_config_xtd_msg
_canspi_filter_b1_f1
_canspi_filter_b1_f2
_canspi_filter_b2_f1
_canspi_filter_b2_f2
_canspi_filter_b2_f3
_canspi_filter_b2_f4
_canspi_mask_b1
_canspi_mask_b2
_canspi_mode_bits
_canspi_mode_config
_canspi_mode_listen
_canspi_mode_loop
_canspi_mode_normal
_canspi_mode_sleep
_canspi_rx_dbl_buffered
_canspi_rx_filter_1
_canspi_rx_filter_2
_canspi_rx_filter_3
_canspi_rx_filter_4
_canspi_rx_filter_5
_canspi_rx_filter_6
_canspi_rx_filter_bits
_canspi_rx_invalid_msg
_canspi_rx_overflow
_canspi_rx_rtr_frame
_canspi_rx_xtd_frame
_canspi_tx_frame_bit
_canspi_tx_no_rtr_frame
_canspi_tx_priority_0
_canspi_tx_priority_1
_canspi_tx_priority_2
_canspi_tx_priority_3
_canspi_tx_priority_bits
_canspi_tx_rtr_bit
_canspi_tx_rtr_frame
_canspi_tx_std_frame
_canspi_tx_xtd_frame
_cf_command
_cf_cyl_hi
_cf_cyl_lo
_cf_data
_cf_error
_cf_features
_cf_head
_cf_identify_cmd
_cf_read_sec_cmd
_cf_sec_cnt
_cf_sec_num
_cf_status
_cf_write_sec_cmd
_ch
_command
_doprntf
_doprnti
_doprntl
_doprntout
_flash_erase
_flash_write_latch
_glcd_horizontal
_glcd_vertical
_i2c_ack
_i2c_nack
_lcd_blink_cursor_on
_lcd_clear
_lcd_cursor_off
_lcd_first_row
_lcd_fourth_row
_lcd_move_cursor_left
_lcd_move_cursor_right
_lcd_return_home
_lcd_second_row
_lcd_shift_left
_lcd_shift_right
_lcd_third_row
_lcd_turn_off
_lcd_turn_on
_lcd_underline_on
_rs485_start_byte
_rs485_stop_byte
_s1d13700_horizontal
_s1d13700_vertical
_sin_deg
_spi_clk_idle_high
_spi_clk_idle_low
_spi_data_sample_end
_spi_data_sample_middle
_spi_ethernet_24j600_broadcast
_spi_ethernet_24j600_crc
_spi_ethernet_24j600_multicast
_spi_ethernet_24j600_unicast
_spi_ethernet_broadcast
_spi_ethernet_crc
_spi_ethernet_multicast
_spi_ethernet_unicast
_spi_glcd_horizontal
_spi_glcd_vertical
_spi_high_2_low
_spi_low_2_high
_spi_master_osc_div16
_spi_master_osc_div4
_spi_master_osc_div64
_spi_master_tmr2
_spi_slave_ss_dis
_spi_slave_ss_enable
_spi_t6963c_horizontal
_spi_t6963c_vertical
_t6963c_horizontal
_t6963c_vertical
a
abchannelhsampfactor
abchannelhuffactablemap
abchannelhuffdctablemap
abchannelmap
abchannelquanttablemap
abchanneltype
abchannelvsampfactor
abdatabuffer
abden
abden_bit
abdovf
abdovf_bit
abhuffacsymbol
abhuffacsymlen
abhuffdcsymbol
abhuffdcsymlen
abs
access
ackdt
ackdt_bit
acken
acken_bit
ackstat
ackstat_bit
acos
acqt0
acqt0_bit
acqt1
acqt1_bit
acqt2
acqt2_bit
actvie
actvie_bit
actvif
actvif_bit
adc_get_sample
adc_get_sample_ptr
adc_init
adc_read
adcon0
adcon1
adcon2
adcs0
adcs0_bit
adcs1
adcs1_bit
adcs2
adcs2_bit
add_32x32_fp
adden
adden_bit
addr0
addr0_bit
addr0_uaddr_bit
addr1
addr1_bit
addr1_uaddr_bit
addr2
addr2_bit
addr2_uaddr_bit
addr3
addr3_bit
addr3_uaddr_bit
addr4
addr4_bit
addr5
addr5_bit
addr6
addr6_bit
aden
aden_bit
adfm
adfm_bit
adie
adie_bit
adif
adif_bit
adip
adip_bit
adon
adon_bit
adres
adresh
adresl
an0
an0_bit
an1
an1_bit
an2
an2_bit
an3
an3_bit
an4
an4_bit
asin
asoneblock
asprevdcvalue
atan
atan2
atof
atoi
atol
aux1
aux2
awhuffacsymstart
awhuffdcsymstart
awquanttable
b0
b1
b2
b3
b4
b5
b6
b7
banked
baudcon
baudctl
bbitsavailable
bblocksinonepass
bcd2dec
bcd2dec16
bchannels
bclie
bclie_bit
bclif
bclif_bit
bclip
bclip_bit
bdatabits
berror
bf
bf_bit
bfirstbit
bgst
bgst_bit
bhufftables
bljfif
blquantuses16bits
bmajorrev
bminorrev
bor
bor_bit
brg16
brg16_bit
brgh
brgh_bit
bsr
bsubsampletype
btoee
btoee_bit
btoef
btoef_bit
btsee
btsee_bit
btsef
btsef_bit
button
byte2double
bytetohex
bytetostr
c
c_bit
c1inv
c1inv_bit
c1out
c1out_bit
c2inv
c2inv_bit
c2out
c2out_bit
canspigetoperationmode
canspiinitialize
canspiread
canspisetbaudrate
canspisetfilter
canspisetmask
canspisetoperationmode
canspiwrite
ccp1
ccp1_bit
ccp1as
ccp1con
ccp1del
ccp1ie
ccp1ie_bit
ccp1if
ccp1if_bit
ccp1ip
ccp1ip_bit
ccp1m0
ccp1m0_bit
ccp1m1
ccp1m1_bit
ccp1m2
ccp1m2_bit
ccp1m3
ccp1m3_bit
ccp2con
ccp2ie
ccp2ie_bit
ccp2if
ccp2if_bit
ccp2ip
ccp2ip_bit
ccp2m0
ccp2m0_bit
ccp2m1
ccp2m1_bit
ccp2m2
ccp2m2_bit
ccp2m3
ccp2m3_bit
ccpr1
ccpr1h
ccpr1l
ccpr2
ccpr2h
ccpr2l
ceil
cf_detect
cf_disable
cf_enable
cf_fat_append
cf_fat_assign
cf_fat_delete
cf_fat_get_file_date
cf_fat_get_file_date_modified
cf_fat_get_file_size
cf_fat_get_swap_file
cf_fat_init
cf_fat_quickformat
cf_fat_read
cf_fat_reset
cf_fat_rewrite
cf_fat_set_file_date
cf_fat_write
cf_init
cf_issue_id_command
cf_read_byte
cf_read_init
cf_read_sector
cf_write_byte
cf_write_init
cf_write_sector
cfgs
cfgs_bit
character8x7
chs0
chs0_bit
chs1
chs1_bit
chs2
chs2_bit
chs3
chs3_bit
cis
cis_bit
ck
ck_bit
ck1spp
ck1spp_bit
ck2spp
ck2spp_bit
cke
cke_bit
ckp
ckp_bit
cl_aqua
cl_aqua_16bit
cl_black
cl_black_16bit
cl_blue
cl_blue_16bit
cl_fuchsia
cl_fuchsia_16bit
cl_gray
cl_gray_16bit
cl_green
cl_green_16bit
cl_lime
cl_lime_16bit
cl_maroon
cl_maroon_16bit
cl_navy
cl_navy_16bit
cl_olive
cl_olive_16bit
cl_purple
cl_purple_16bit
cl_red
cl_red_16bit
cl_silver
cl_silver_16bit
cl_teal
cl_teal_16bit
cl_white
cl_white_16bit
cl_yellow
cl_yellow_16bit
clk1en
clk1en_bit
clkcfg0
clkcfg0_bit
clkcfg1
clkcfg1_bit
cm0
cm0_bit
cm1
cm1_bit
cm2
cm2_bit
cmcon
cmie
cmie_bit
cmif
cmif_bit
cmip
cmip_bit
comfrem
compare_double
cos
cose3
cosh
cr
crc16ee
crc16ee_bit
crc16ef
crc16ef_bit
crc5ee
crc5ee_bit
crc5ef
crc5ef_bit
cren
cren_bit
crlf
csen
csen_bit
csrc
csrc_bit
cvr0
cvr0_bit
cvr1
cvr1_bit
cvr2
cvr2_bit
cvr3
cvr3_bit
cvrcon
cvref
cvref_bit
cvren
cvren_bit
cvroe
cvroe_bit
cvrr
cvrr_bit
cvrss
cvrss_bit
d
d_a
d_a_bit
d_bit
d_not_a
d_not_a_bit
data_address
data_address_bit
dc
dc_bit
dc1b0
dc1b0_bit
dc1b1
dc1b1_bit
dc2b0
dc2b0_bit
dc2b1
dc2b1_bit
dec2bcd
dec2bcd16
delay_100ms
delay_10ms
delay_10us
delay_1ms
delay_1sec
delay_1us
delay_22us
delay_500us
delay_50us
delay_5500us
delay_5ms
delay_80us
delay_8ms
delay_cyc
dfn8ee
dfn8ee_bit
dfn8ef
dfn8ef_bit
dir_
dir__bit
div
div_16x16_s
div_16x16_s_l
div_16x16_u
div_32x32_fp
div_32x32_s
div_32x32_u
div_8x8_s
div_8x8_u
done
done_bit
double2byte
double2int
double2longint
double2longword
double2word
eccp1as
eccp1con
eccp1del
eccpas0
eccpas0_bit
eccpas1
eccpas1_bit
eccpas2
eccpas2_bit
eccpase
eccpase_bit
eeadr
eecon1
eecon2
eedata
eeie
eeie_bit
eeif
eeif_bit
eeip
eeip_bit
eepgd
eepgd_bit
eeprom_read
eeprom_write
endp0
endp0_bit
endp1
endp1_bit
endp2
endp2_bit
endp3
endp3_bit
epcondis
epcondis_bit
epcondis_uep1_bit
epcondis_uep10_bit
epcondis_uep11_bit
epcondis_uep12_bit
epcondis_uep13_bit
epcondis_uep14_bit
epcondis_uep15_bit
epcondis_uep2_bit
epcondis_uep3_bit
epcondis_uep4_bit
epcondis_uep5_bit
epcondis_uep6_bit
epcondis_uep7_bit
epcondis_uep8_bit
epcondis_uep9_bit
ephshk
ephshk_bit
ephshk_uep1_bit
ephshk_uep10_bit
ephshk_uep11_bit
ephshk_uep12_bit
ephshk_uep13_bit
ephshk_uep14_bit
ephshk_uep15_bit
ephshk_uep2_bit
ephshk_uep3_bit
ephshk_uep4_bit
ephshk_uep5_bit
ephshk_uep6_bit
ephshk_uep7_bit
ephshk_uep8_bit
ephshk_uep9_bit
epinen
epinen_bit
epinen_uep1_bit
epinen_uep10_bit
epinen_uep11_bit
epinen_uep12_bit
epinen_uep13_bit
epinen_uep14_bit
epinen_uep15_bit
epinen_uep2_bit
epinen_uep3_bit
epinen_uep4_bit
epinen_uep5_bit
epinen_uep6_bit
epinen_uep7_bit
epinen_uep8_bit
epinen_uep9_bit
epouten
epouten_bit
epouten_uep1_bit
epouten_uep10_bit
epouten_uep11_bit
epouten_uep12_bit
epouten_uep13_bit
epouten_uep14_bit
epouten_uep15_bit
epouten_uep2_bit
epouten_uep3_bit
epouten_uep4_bit
epouten_uep5_bit
epouten_uep6_bit
epouten_uep7_bit
epouten_uep8_bit
epouten_uep9_bit
epstall
epstall_bit
epstall_uep1_bit
epstall_uep10_bit
epstall_uep11_bit
epstall_uep12_bit
epstall_uep13_bit
epstall_uep14_bit
epstall_uep15_bit
epstall_uep2_bit
epstall_uep3_bit
epstall_uep4_bit
epstall_uep5_bit
epstall_uep6_bit
epstall_uep7_bit
epstall_uep8_bit
epstall_uep9_bit
equals_double
exp
expander_init
expander_init_advanced
expander_read_byte
expander_read_porta
expander_read_portab
expander_read_portb
expander_set_directionporta
expander_set_directionportab
expander_set_directionportb
expander_set_pullupsporta
expander_set_pullupsportab
expander_set_pullupsportb
expander_write_byte
expander_write_porta
expander_write_portab
expander_write_portb
f
f16_boot_template
f16_filedesc
f16_sector
fabs
fast
ferr
ferr_bit
fixsign32
flag
flash_erase_64
flash_erase_write_64
flash_read
flash_read_n_bytes
flash_write_32
floattostr
floor
flts
flts_bit
fo_horizontal
fo_horizontal_16bit
fo_vertical
fo_vertical_16bit
font_glcd_5x7
font_glcd_character8x7
font_glcd_system3x5
font_glcd_system5x7
font5x7
fontsystem5x7_v2
freadneedsupdate
free
free_bit
freemem
frexp
frm0
frm0_bit
frm1
frm1_bit
frm10
frm10_bit
frm2
frm2_bit
frm3
frm3_bit
frm4
frm4_bit
frm5
frm5_bit
frm6
frm6_bit
frm7
frm7_bit
frm8
frm8_bit
frm9
frm9_bit
fsect
fsen
fsen_bit
fsr0
fsr0h
fsr0l
fsr0ptr
fsr1
fsr1h
fsr1l
fsr1ptr
fsr2
fsr2h
fsr2l
fsr2ptr
fullbits
gcen
gcen_bit
gen_enable
gen_read
gen_write
get_fosc_khz
gie
gie_bit
gie_gieh
gie_gieh_bit
gieh
gieh_bit
giel
giel_bit
glcd_box
glcd_circle
glcd_circle_fill
glcd_defaultfont
glcd_dot
glcd_ext_image
glcd_ext_partialimage
glcd_fill
glcd_get_ext_data_ptr
glcd_h_line
glcd_image
glcd_init
glcd_line
glcd_partialimage
glcd_read_data
glcd_rectangle
glcd_rectangle_round_edges
glcd_rectangle_round_edges_fill
glcd_set_ext_buffer
glcd_set_ext_font_adv
glcd_set_font
glcd_set_font_adv
glcd_set_page
glcd_set_side
glcd_set_x
glcd_v_line
glcd_write_char
glcd_write_char_adv
glcd_write_const_text
glcd_write_const_text_adv
glcd_write_const_text_return_pos
glcd_write_data
glcd_write_text
glcd_write_text_adv
glcd_write_text_return_pos
go
go_bit
go_done
go_done_bit
go_not_done
go_not_done_bit
h
halfbits
hid_disable
hid_enable
hid_read
hid_write
hlvdcon
hlvden
hlvden_bit
hlvdie
hlvdie_bit
hlvdif
hlvdif_bit
hlvdin
hlvdin_bit
hlvdip
hlvdip_bit
hlvdl0
hlvdl0_bit
hlvdl1
hlvdl1_bit
hlvdl2
hlvdl2_bit
hlvdl3
hlvdl3_bit
i2c_dat
i2c_dat_bit
i2c_read
i2c_read_bit
i2c_start_
i2c_start__bit
i2c_stop_
i2c_stop__bit
i2c1_init
i2c1_is_idle
i2c1_rd
i2c1_repeated_start
i2c1_start
i2c1_stop
i2c1_wr
ics_auto
ics_off
idleie
idleie_bit
idleif
idleif_bit
idlen
idlen_bit
imagefileasarray
indf0
indf1
indf2
int0
int0_bit
int0e
int0e_bit
int0f
int0f_bit
int0ie
int0ie_bit
int0if
int0if_bit
int1
int1_bit
int1e
int1e_bit
int1f
int1f_bit
int1ie
int1ie_bit
int1if
int1if_bit
int1ip
int1ip_bit
int1p
int1p_bit
int2
int2_bit
int2double
int2e
int2e_bit
int2f
int2f_bit
int2ie
int2ie_bit
int2if
int2if_bit
int2ip
int2ip_bit
int2p
int2p_bit
intcon
intcon2
intcon3
intedg0
intedg0_bit
intedg1
intedg1_bit
intedg2
intedg2_bit
intsrc
intsrc_bit
inttohex
inttostr
inttostrwithzeros
iofs
iofs_bit
ipen
ipen_bit
ipr1
ipr2
ircf0
ircf0_bit
ircf1
ircf1_bit
ircf2
ircf2_bit
irvst
irvst_bit
isalnum
isalpha
iscntrl
isdigit
isgraph
islower
ispunct
isspace
isupper
isxdigit
ivrst
ivrst_bit
jpegdecoder
jpegdecoder_16bit
keypad_init
keypad_key_click
keypad_key_press
labs
lata
lata0
lata0_bit
lata1
lata1_bit
lata2
lata2_bit
lata3
lata3_bit
lata4
lata4_bit
lata5
lata5_bit
lata6
lata6_bit
latb
latb0
latb0_bit
latb1
latb1_bit
latb2
latb2_bit
latb3
latb3_bit
latb4
latb4_bit
latb5
latb5_bit
latb6
latb6_bit
latb7
latb7_bit
latc
latc0
latc0_bit
latc1
latc1_bit
latc2
latc2_bit
latc6
latc6_bit
latc7
latc7_bit
latd
latd0
latd0_bit
latd1
latd1_bit
latd2
latd2_bit
latd3
latd3_bit
latd4
latd4_bit
latd5
latd5_bit
latd6
latd6_bit
latd7
latd7_bit
late
late0
late0_bit
late1
late1_bit
late2
late2_bit
lcd
lcd_chr
lcd_chr_cp
lcd_cmd
lcd_d4
lcd_d4_direction
lcd_d5
lcd_d5_direction
lcd_d6
lcd_d6_direction
lcd_d7
lcd_d7_direction
lcd_en
lcd_en_direction
lcd_init
lcd_out
lcd_out_cp
lcd_rs
lcd_rs_direction
ldexp
ldiv
left_to_right
left_to_right_16bit
lf
log
log10
longint2double
longinttohex
longinttostrwithzeros
longjmp
longtostr
longword2double
longwordtohex
longwordtostr
longwordtostrwithzeros
ltrim
lvdcon
lvden
lvden_bit
lvdie
lvdie_bit
lvdif
lvdif_bit
lvdin
lvdin_bit
lvdip
lvdip_bit
lvdl0
lvdl0_bit
lvdl1
lvdl1_bit
lvdl2
lvdl2_bit
lvdl3
lvdl3_bit
lvv0
lvv0_bit
lvv1
lvv1_bit
lvv2
lvv2_bit
lvv3
lvv3_bit
main
malloc
man_break
man_receive
man_receive_init
man_send
man_send_init
man_synchro
max
max_files
memchr
memcmp
memcpy
memmove
memset
min
mm_error_
mm_freememtable
mm_init
mm_largestfreememblock
mm_nrfreeblocksused
mm_possiblyfragmented
mm_totalfreememsize
mmc_fat_activate
mmc_fat_append
mmc_fat_assign
mmc_fat_changedir
mmc_fat_close
mmc_fat_delete
mmc_fat_dir
mmc_fat_eof
mmc_fat_exists
mmc_fat_get_file_date
mmc_fat_get_file_date_modified
mmc_fat_get_file_size
mmc_fat_get_swap_file
mmc_fat_init
mmc_fat_makedir
mmc_fat_open
mmc_fat_quickformat
mmc_fat_read
mmc_fat_readn
mmc_fat_removedir
mmc_fat_rename
mmc_fat_renamedir
mmc_fat_reset
mmc_fat_rewrite
mmc_fat_seek
mmc_fat_set_file_date
mmc_fat_tell
mmc_fat_write
mmc_get_file_write_sector
mmc_init
mmc_init_vars
mmc_multi_read_sector
mmc_multi_read_start
mmc_multi_read_stop
mmc_read_cid
mmc_read_csd
mmc_read_sector
mmc_write_sector
modf
mul_16x16_s
mul_16x16_u
mul_32x32_fp
mul_32x32_s
mul_32x32_u
mul_8x8_s
n
n_bit
not_a
not_a_bit
not_address
not_address_bit
not_bor
not_bor_bit
not_done
not_done_bit
not_ipen
not_ipen_bit
not_pd
not_pd_bit
not_por
not_por_bit
not_rbpu
not_rbpu_bit
not_ri
not_ri_bit
not_t1sync
not_t1sync_bit
not_t3sync
not_t3sync_bit
not_to
not_to_bit
not_w
not_w_bit
not_write
not_write_bit
nr_free_blocks
nrm3232
nrm4032
oerr
oerr_bit
oespp
oespp_bit
osc2
osc2_bit
osccon
oscfie
oscfie_bit
oscfif
oscfif_bit
oscfip
oscfip_bit
osctune
osts
osts_bit
ov
ov_bit
ow_read
ow_reset
ow_write
p
p_bit
p1a
p1a_bit
p1m0
p1m0_bit
p1m1
p1m1_bit
pbcurrenthuffsymboltable
pbcurrenthuffsymlentable
pc
pcfg0
pcfg0_bit
pcfg1
pcfg1_bit
pcfg2
pcfg2_bit
pcfg3
pcfg3_bit
pcl
pclath
pclatu
pcu0
pcu0_bit
pcu1
pcu1_bit
pcu2
pcu2_bit
pcu3
pcu3_bit
pcu4
pcu4_bit
pd
pd_bit
pdc0
pdc0_bit
pdc1
pdc1_bit
pdc2
pdc2_bit
pdc3
pdc3_bit
pdc4
pdc4_bit
pdc5
pdc5_bit
pdc6
pdc6_bit
peie
peie_bit
peie_giel
peie_giel_bit
pen
pen_bit
pgc
pgc_bit
pgd
pgd_bit
pgm
pgm_bit
pidee
pidee_bit
pidef
pidef_bit
pie1
pie2
pir1
pir2
pktdis
pktdis_bit
plusw0
plusw1
plusw2
por
por_bit
porta
portb
portc
portd
porte
postdec0
postdec1
postdec2
postinc0
postinc1
postinc2
pow
ppb0
ppb0_bit
ppb1
ppb1_bit
ppbi
ppbi_bit
ppbrst
ppbrst_bit
pr2
preinc0
preinc1
preinc2
printout
prod
prodh
prodl
prsen
prsen_bit
ps2_config
ps2_key_read
psa
psa_bit
pssac0
pssac0_bit
pssac1
pssac1_bit
pssbd0
pssbd0_bit
pssbd1
pssbd1_bit
pwcurrenthuffsymstarttable
pwcurrentquanttable
pwm1_init
pwm1_set_duty
pwm1_start
pwm1_stop
pwm2_init
pwm2_set_duty
pwm2_start
pwm2_stop
r
r_bit
r_not_w
r_not_w_bit
r_w
r_w_bit
r0
r1
r10
r11
r12
r13
r14
r15
r16
r17
r18
r19
r2
r20
r3
r4
r5
r6
r7
r8
r9
ra0
ra0_bit
ra1
ra1_bit
ra2
ra2_bit
ra3
ra3_bit
ra4
ra4_bit
ra5
ra5_bit
ra6
ra6_bit
rand
rb0
rb0_bit
rb1
rb1_bit
rb2
rb2_bit
rb3
rb3_bit
rb4
rb4_bit
rb5
rb5_bit
rb6
rb6_bit
rb7
rb7_bit
rbie
rbie_bit
rbif
rbif_bit
rbip
rbip_bit
rbpu
rbpu_bit
rc0
rc0_bit
rc1
rc1_bit
rc2
rc2_bit
rc4
rc4_bit
rc5
rc5_bit
rc6
rc6_bit
rc7
rc7_bit
rcen
rcen_bit
rcidl
rcidl_bit
rcie
rcie_bit
rcif
rcif_bit
rcip
rcip_bit
rcmt
rcmt_bit
rcon
rcreg
rcsta
rd
rd_bit
rd0
rd0_bit
rd1
rd1_bit
rd16
rd16_bit
rd16_t1con_bit
rd2
rd2_bit
rd3
rd3_bit
rd4
rd4_bit
rd5
rd5_bit
rd6
rd6_bit
rd7
rd7_bit
rdpu
rdpu_bit
rdpu_porte_bit
rdspp
rdspp_bit
re0
re0_bit
re1
re1_bit
re2
re2_bit
re3
re3_bit
read_write
read_write_bit
res
res032
resume_
resume__bit
ri
ri_bit
rs485master_init
rs485master_receive
rs485master_send
rs485slave_init
rs485slave_receive
rs485slave_send
rsen
rsen_bit
rtrim
rx_
rx__bit
rx9
rx9_bit
rx9d
rx9d_bit
rxdtp
rxdtp_bit
s
s_bit
s1d13700_black
s1d13700_box
s1d13700_cgram_adr
s1d13700_circle
s1d13700_circle_fill
s1d13700_cs_down
s1d13700_cs_left
s1d13700_cs_right
s1d13700_cs_up
s1d13700_csrform
s1d13700_csrr
s1d13700_csrw
s1d13700_cursor_block
s1d13700_cursor_flash_1hz
s1d13700_cursor_flash_2hz
s1d13700_cursor_off
s1d13700_cursor_on
s1d13700_cursor_underscore
s1d13700_defaultfont
s1d13700_disp_off
s1d13700_disp_on
s1d13700_display_cursor
s1d13700_display_grlayer
s1d13700_display_txtlayer
s1d13700_dot
s1d13700_ext_image
s1d13700_ext_partialimage
s1d13700_fill
s1d13700_get_ext_data_ptr
s1d13700_grayscale
s1d13700_grfill
s1d13700_h_line
s1d13700_hdot_scr
s1d13700_image
s1d13700_init
s1d13700_layer_flash_16hz
s1d13700_layer_flash_2hz
s1d13700_layer_off
s1d13700_layer_on
s1d13700_line
s1d13700_memread
s1d13700_memwrite
s1d13700_overlay_and
s1d13700_overlay_or
s1d13700_overlay_xor
s1d13700_ovlay
s1d13700_partialimage
s1d13700_power_save
s1d13700_read_parameter
s1d13700_rectangle
s1d13700_rectangle_round_edges
s1d13700_rectangle_round_edges_fill
s1d13700_scroll
s1d13700_set_cursor
s1d13700_set_ext_buffer
s1d13700_set_ext_font_adv
s1d13700_set_font_adv
s1d13700_system_set
s1d13700_txtfill
s1d13700_v_line
s1d13700_white
s1d13700_write_char
s1d13700_write_char_adv
s1d13700_write_command
s1d13700_write_const_text
s1d13700_write_const_text_adv
s1d13700_write_const_text_return_pos
s1d13700_write_parameter
s1d13700_write_text
s1d13700_write_text_adv
s1d13700_write_text_return_pos
sboren
sboren_bit
sckp
sckp_bit
scs0
scs0_bit
scs1
scs1_bit
sdiv3232l
se0
se0_bit
sen
sen_bit
sendb
sendb_bit
setfdz32
setfov32
setfun32
setiov3224
setjmp
shorttohex
shorttostr
sin
sine3
sinh
smp
smp_bit
sofie
sofie_bit
sofif
sofif_bit
soft_i2c_break
soft_i2c_init
soft_i2c_read
soft_i2c_start
soft_i2c_stop
soft_i2c_write
soft_spi_init
soft_spi_read
soft_spi_write
soft_uart_break
soft_uart_init
soft_uart_read
soft_uart_write
sound_init
sound_play
spbrg
spbrgh
spen
spen_bit
spi_ethernet_24j600_arpcache
spi_ethernet_24j600_arpresolve
spi_ethernet_24j600_checksum
spi_ethernet_24j600_clearbitreg
spi_ethernet_24j600_confnetwork
spi_ethernet_24j600_delay
spi_ethernet_24j600_dhcpmsg
spi_ethernet_24j600_dhcpreceive
spi_ethernet_24j600_disable
spi_ethernet_24j600_dnsipaddr
spi_ethernet_24j600_dnsresolve
spi_ethernet_24j600_doarp
spi_ethernet_24j600_dodhcp
spi_ethernet_24j600_dodhcpleasetime
spi_ethernet_24j600_dodns
spi_ethernet_24j600_dopacket
spi_ethernet_24j600_dotcp
spi_ethernet_24j600_doudp
spi_ethernet_24j600_enable
spi_ethernet_24j600_ff
spi_ethernet_24j600_getbyte
spi_ethernet_24j600_getbytes
spi_ethernet_24j600_getdnsipaddress
spi_ethernet_24j600_getgwipaddress
spi_ethernet_24j600_getipaddress
spi_ethernet_24j600_getipmask
spi_ethernet_24j600_gwipaddr
spi_ethernet_24j600_init
spi_ethernet_24j600_init2
spi_ethernet_24j600_initdhcp
spi_ethernet_24j600_ipaddr
spi_ethernet_24j600_ipmask
spi_ethernet_24j600_ipswap
spi_ethernet_24j600_macaddr
spi_ethernet_24j600_macswap
spi_ethernet_24j600_memcmp
spi_ethernet_24j600_memcpy
spi_ethernet_24j600_pktlen
spi_ethernet_24j600_putbyte
spi_ethernet_24j600_putbytes
spi_ethernet_24j600_putconstbytes
spi_ethernet_24j600_putconststring
spi_ethernet_24j600_putstring
spi_ethernet_24j600_ramcopy
spi_ethernet_24j600_readaddr
spi_ethernet_24j600_readmem
spi_ethernet_24j600_readpacket
spi_ethernet_24j600_readphy
spi_ethernet_24j600_readreg
spi_ethernet_24j600_renewdhcp
spi_ethernet_24j600_rmtipaddr
spi_ethernet_24j600_sendudp
spi_ethernet_24j600_sendudp2
spi_ethernet_24j600_setbitreg
spi_ethernet_24j600_setrxreadaddress
spi_ethernet_24j600_subnetbroadcast
spi_ethernet_24j600_txpacket
spi_ethernet_24j600_usertimersec
spi_ethernet_24j600_writeaddr
spi_ethernet_24j600_writemem
spi_ethernet_24j600_writememory
spi_ethernet_24j600_writememory2
spi_ethernet_24j600_writephy
spi_ethernet_24j600_writereg
spi_ethernet_arpcache
spi_ethernet_arpresolve
spi_ethernet_checksum
spi_ethernet_clearbitreg
spi_ethernet_confnetwork
spi_ethernet_delay
spi_ethernet_dhcpmsg
spi_ethernet_dhcpreceive
spi_ethernet_disable
spi_ethernet_dnsipaddr
spi_ethernet_dnsresolve
spi_ethernet_doarp
spi_ethernet_dodhcp
spi_ethernet_dodhcpleasetime
spi_ethernet_dodns
spi_ethernet_dopacket
spi_ethernet_dotcp
spi_ethernet_doudp
spi_ethernet_enable
spi_ethernet_ff
spi_ethernet_getbyte
spi_ethernet_getbytes
spi_ethernet_getdnsipaddress
spi_ethernet_getgwipaddress
spi_ethernet_getipaddress
spi_ethernet_getipmask
spi_ethernet_gwipaddr
spi_ethernet_init
spi_ethernet_init2
spi_ethernet_initdhcp
spi_ethernet_ipaddr
spi_ethernet_ipmask
spi_ethernet_ipswap
spi_ethernet_macaddr
spi_ethernet_macswap
spi_ethernet_memcmp
spi_ethernet_memcpy
spi_ethernet_pktlen
spi_ethernet_putbyte
spi_ethernet_putbytes
spi_ethernet_putconstbytes
spi_ethernet_putconststring
spi_ethernet_putstring
spi_ethernet_ramcopy
spi_ethernet_readmem
spi_ethernet_readpacket
spi_ethernet_readphy
spi_ethernet_readreg
spi_ethernet_renewdhcp
spi_ethernet_rmtipaddr
spi_ethernet_sendudp
spi_ethernet_sendudp2
spi_ethernet_setbitreg
spi_ethernet_setrxreadaddress
spi_ethernet_subnetbroadcast
spi_ethernet_txpacket
spi_ethernet_usertimersec
spi_ethernet_writeaddr
spi_ethernet_writemem
spi_ethernet_writememory
spi_ethernet_writememory2
spi_ethernet_writephy
spi_ethernet_writereg
spi_glcd_box
spi_glcd_circle
spi_glcd_circle_fill
spi_glcd_const_write_text
spi_glcd_dot
spi_glcd_ext_image
spi_glcd_ext_partialimage
spi_glcd_fill
spi_glcd_get_ext_data_ptr
spi_glcd_h_line
spi_glcd_image
spi_glcd_init
spi_glcd_line
spi_glcd_partialimage
spi_glcd_read_data
spi_glcd_rectangle
spi_glcd_rectangle_round_edges
spi_glcd_rectangle_round_edges_fill
spi_glcd_set_ext_buffer
spi_glcd_set_ext_font_adv
spi_glcd_set_font
spi_glcd_set_font_adv
spi_glcd_set_page
spi_glcd_set_side
spi_glcd_set_x
spi_glcd_v_line
spi_glcd_write_char
spi_glcd_write_char_adv
spi_glcd_write_const_text_adv
spi_glcd_write_const_text_return_pos
spi_glcd_write_data
spi_glcd_write_text
spi_glcd_write_text_adv
spi_glcd_write_text_return_pos
spi_lcd_chr
spi_lcd_chr_cp
spi_lcd_cmd
spi_lcd_config
spi_lcd_out
spi_lcd_out_cp
spi_lcd8_chr
spi_lcd8_chr_cp
spi_lcd8_cmd
spi_lcd8_config
spi_lcd8_out
spi_lcd8_out_cp
spi_rd_ptr
spi_read
spi_set_active
spi_t6963c_box
spi_t6963c_circle
spi_t6963c_circle_fill
spi_t6963c_clearbit
spi_t6963c_config
spi_t6963c_defaultfont
spi_t6963c_display
spi_t6963c_dot
spi_t6963c_ext_image
spi_t6963c_ext_partialimage
spi_t6963c_fill
spi_t6963c_fontwidth
spi_t6963c_get_ext_data_ptr
spi_t6963c_grheight
spi_t6963c_grhomeaddr
spi_t6963c_grmemsize
spi_t6963c_grwidth
spi_t6963c_image
spi_t6963c_line
spi_t6963c_negbit
spi_t6963c_partialimage
spi_t6963c_rectangle
spi_t6963c_rectangle_round_edges
spi_t6963c_rectangle_round_edges_fill
spi_t6963c_set_cursor
spi_t6963c_set_ext_buffer
spi_t6963c_set_ext_font_adv
spi_t6963c_set_font_adv
spi_t6963c_setbit
spi_t6963c_setptr
spi_t6963c_sprite
spi_t6963c_texthomeaddr
spi_t6963c_txtcols
spi_t6963c_txtmemsize
spi_t6963c_waitready
spi_t6963c_write_char
spi_t6963c_write_char_adv
spi_t6963c_write_const_text
spi_t6963c_write_const_text_adv
spi_t6963c_write_const_text_return_pos
spi_t6963c_write_text
spi_t6963c_write_text_adv
spi_t6963c_write_text_return_pos
spi_t6963c_writecommand
spi_t6963c_writedata
spi_wr_ptr
spi_write
spi1_init
spi1_init_advanced
spi1_read
spi1_write
spp0
spp0_bit
spp1
spp1_bit
spp2
spp2_bit
spp3
spp3_bit
spp4
spp4_bit
spp5
spp5_bit
spp6
spp6_bit
spp7
spp7_bit
sppbusy
sppbusy_bit
sppcfg
sppcon
sppdata
sppen
sppen_bit
sppeps
sppie
sppie_bit
sppif
sppif_bit
sppip
sppip_bit
sppown
sppown_bit
sprintf
sprinti
sprintl
sqrt
srand
sren
sren_bit
sspadd
sspbuf
sspcon1
sspcon2
sspen
sspen_bit
sspie
sspie_bit
sspif
sspif_bit
sspip
sspip_bit
sspm0
sspm0_bit
sspm1
sspm1_bit
sspm2
sspm2_bit
sspm3
sspm3_bit
sspov
sspov_bit
sspstat
stallie
stallie_bit
stallif
stallif_bit
status
stkful
stkful_bit
stkovf
stkovf_bit
stkptr
stkptr0
stkptr0_bit
stkptr1
stkptr1_bit
stkptr2
stkptr2_bit
stkptr3
stkptr3_bit
stkptr4
stkptr4_bit
stkunf
stkunf_bit
strcat
strchr
strcmp
strcpy
strcspn
strlen
strncat
strncmp
strncpy
strpbrk
strrchr
strspn
strstr
strtok
sub_32x32_fp
suspnd
suspnd_bit
swap
swdte
swdte_bit
swdten
swdten_bit
sync
sync_bit
system3x5
t08bit
t08bit_bit
t0cki
t0cki_bit
t0con
t0cs
t0cs_bit
t0ie
t0ie_bit
t0if
t0if_bit
t0ip
t0ip_bit
t0ps0
t0ps0_bit
t0ps1
t0ps1_bit
t0ps2
t0ps2_bit
t0se
t0se_bit
t13cki
t13cki_bit
t1ckps0
t1ckps0_bit
t1ckps1
t1ckps1_bit
t1con
t1oscen
t1oscen_bit
t1osi
t1osi_bit
t1oso
t1oso_bit
t1run
t1run_bit
t1sync
t1sync_bit
t2ckps0
t2ckps0_bit
t2ckps1
t2ckps1_bit
t2con
t2outps0
t2outps0_bit
t2outps1
t2outps1_bit
t2outps2
t2outps2_bit
t2outps3
t2outps3_bit
t3ccp1
t3ccp1_bit
t3ccp2
t3ccp2_bit
t3ckps0
t3ckps0_bit
t3ckps1
t3ckps1_bit
t3con
t3nsync
t3nsync_bit
t3sync
t3sync_bit
t6963c_box
t6963c_circle
t6963c_circle_fill
t6963c_defaultfont
t6963c_display
t6963c_dot
t6963c_ext_image
t6963c_ext_partialimage
t6963c_fill
t6963c_fontwidth
t6963c_get_ext_data_ptr
t6963c_grheight
t6963c_grhomeaddr
t6963c_grmemsize
t6963c_grwidth
t6963c_image
t6963c_init
t6963c_line
t6963c_partialimage
t6963c_rectangle
t6963c_rectangle_round_edges
t6963c_rectangle_round_edges_fill
t6963c_set_cursor
t6963c_set_ext_buffer
t6963c_set_ext_font_adv
t6963c_set_font_adv
t6963c_setptr
t6963c_sprite
t6963c_texthomeaddr
t6963c_txtcols
t6963c_txtmemsize
t6963c_waitready
t6963c_write_char
t6963c_write_char_adv
t6963c_write_const_text
t6963c_write_const_text_adv
t6963c_write_const_text_return_pos
t6963c_write_text
t6963c_write_text_adv
t6963c_write_text_return_pos
t6963c_writecommand
t6963c_writedata
tablat
tan
tanh
tblptr
tblptrh
tblptrl
tblptru
tft_16bit_circle
tft_16bit_color16bittorgb
tft_16bit_defaultfont
tft_16bit_dot
tft_16bit_ext_image
tft_16bit_ext_partial_image
tft_16bit_fill_screen
tft_16bit_get_ext_data_ptr
tft_16bit_getcurrentcolor
tft_16bit_h_line
tft_16bit_image
tft_16bit_image_jpeg
tft_16bit_line
tft_16bit_partial_image
tft_16bit_rectangle
tft_16bit_rectangle_round_edges
tft_16bit_rgbtocolor16bit
tft_16bit_rotate_180
tft_16bit_set_active
tft_16bit_set_address_ptr
tft_16bit_set_brush
tft_16bit_set_default_mode
tft_16bit_set_ext_buffer
tft_16bit_set_ext_font
tft_16bit_set_font
tft_16bit_set_index
tft_16bit_set_index_ptr
tft_16bit_set_pen
tft_16bit_set_reg
tft_16bit_v_line
tft_16bit_write_char
tft_16bit_write_command
tft_16bit_write_command_ptr
tft_16bit_write_const_text
tft_16bit_write_const_text_return_pos
tft_16bit_write_data
tft_16bit_write_data_ptr
tft_16bit_write_text
tft_16bit_write_text_return_pos
tft_circle
tft_color16bittorgb
tft_defaultfont
tft_dot
tft_ext_image
tft_ext_partial_image
tft_fill_screen
tft_get_ext_data_ptr
tft_getcurrentcolor
tft_h_line
tft_image
tft_image_jpeg
tft_init
tft_init_hx8347g
tft_init_hx8352a
tft_init_ili9340
tft_init_ili9342
tft_init_ili9481
tft_init_r61526
tft_init_ssd1963
tft_init_ssd1963_8bit
tft_init_sst7715r
tft_line
tft_partial_image
tft_rectangle
tft_rectangle_round_edges
tft_rgbtocolor16bit
tft_rotate_180
tft_set_active
tft_set_address_ptr
tft_set_brush
tft_set_default_mode
tft_set_ext_buffer
tft_set_ext_font
tft_set_font
tft_set_index
tft_set_index_ptr
tft_set_pen
tft_set_reg
tft_ssd1963_8bit_set_index
tft_ssd1963_8bit_set_reg
tft_ssd1963_8bit_write_data
tft_ssd1963yt_8bit_write_command
tft_v_line
tft_write_char
tft_write_command
tft_write_command_ptr
tft_write_const_text
tft_write_const_text_return_pos
tft_write_data
tft_write_data_ptr
tft_write_text
tft_write_text_return_pos
time_datetoepoch
time_epochtodate
time_jd1970
tmr0h
tmr0ie
tmr0ie_bit
tmr0if
tmr0if_bit
tmr0ip
tmr0ip_bit
tmr0l
tmr0on
tmr0on_bit
tmr1cs
tmr1cs_bit
tmr1h
tmr1ie
tmr1ie_bit
tmr1if
tmr1if_bit
tmr1ip
tmr1ip_bit
tmr1l
tmr1on
tmr1on_bit
tmr2
tmr2ie
tmr2ie_bit
tmr2if
tmr2if_bit
tmr2ip
tmr2ip_bit
tmr2on
tmr2on_bit
tmr3cs
tmr3cs_bit
tmr3h
tmr3ie
tmr3ie_bit
tmr3if
tmr3if_bit
tmr3ip
tmr3ip_bit
tmr3l
tmr3on
tmr3on_bit
to_
to__bit
tolower
top_to_bottom
top_to_bottom_16bit
tosh
tosl
tosu
toupper
toutps0
toutps0_bit
toutps1
toutps1_bit
toutps2
toutps2_bit
toutps3
toutps3_bit
tp_calibrate_bottom_left
tp_calibrate_upper_right
tp_get_calibration_consts
tp_get_coordinates
tp_init
tp_press_detect
tp_set_adc_threshold
tp_set_calibration_consts
tp_tft_calibrate_max
tp_tft_calibrate_min
tp_tft_get_calibration_consts
tp_tft_get_coordinates
tp_tft_init
tp_tft_press_detect
tp_tft_rotate_180
tp_tft_set_adc_threshold
tp_tft_set_calibration_consts
tp_tft_set_default_mode
trisa
trisa0
trisa0_bit
trisa1
trisa1_bit
trisa2
trisa2_bit
trisa3
trisa3_bit
trisa4
trisa4_bit
trisa5
trisa5_bit
trisa6
trisa6_bit
trisb
trisb0
trisb0_bit
trisb1
trisb1_bit
trisb2
trisb2_bit
trisb3
trisb3_bit
trisb4
trisb4_bit
trisb5
trisb5_bit
trisb6
trisb6_bit
trisb7
trisb7_bit
trisc
trisc0
trisc0_bit
trisc1
trisc1_bit
trisc2
trisc2_bit
trisc6
trisc6_bit
trisc7
trisc7_bit
trisd
trisd0
trisd0_bit
trisd1
trisd1_bit
trisd2
trisd2_bit
trisd3
trisd3_bit
trisd4
trisd4_bit
trisd5
trisd5_bit
trisd6
trisd6_bit
trisd7
trisd7_bit
trise
trise0
trise0_bit
trise1
trise1_bit
trise2
trise2_bit
trmt
trmt_bit
trnie
trnie_bit
trnif
trnif_bit
tun0
tun0_bit
tun1
tun1_bit
tun2
tun2_bit
tun3
tun3_bit
tun4
tun4_bit
tx
tx_bit
tx9
tx9_bit
tx9d
tx9d_bit
txckp
txckp_bit
txen
txen_bit
txie
txie_bit
txif
txif_bit
txip
txip_bit
txreg
txsta
ua
ua_bit
uaddr
uart_data_ready
uart_rd_ptr
uart_rdy_ptr
uart_read
uart_read_text
uart_set_active
uart_tx_idle
uart_tx_idle_ptr
uart_wr_ptr
uart_write
uart_write_text
uart1_data_ready
uart1_init
uart1_read
uart1_read_text
uart1_tx_idle
uart1_write
uart1_write_text
ucfg
ucon
ueie
ueir
uep0
uep1
uep10
uep11
uep12
uep13
uep14
uep15
uep2
uep3
uep4
uep5
uep6
uep7
uep8
uep9
uerrie
uerrie_bit
uerrif
uerrif_bit
ufrmh
ufrml
uie
uir
uldiv
uoemon
uoemon_bit
upuen
upuen_bit
urstie
urstie_bit
urstif
urstif_bit
usb_break
usb_interrupt_proc
usb_polling_proc
usben
usben_bit
usbie
usbie_bit
usbif
usbif_bit
usbip
usbip_bit
ustat
uteye
uteye_bit
utrdis
utrdis_bit
vcfg0
vcfg0_bit
vcfg1
vcfg1_bit
vdelay_advanced_ms
vdelay_ms
vdirmag
vdirmag_bit
vrefm
vrefm_bit
vrefp
vrefp_bit
w
wblocknumber
wbufferindex
wbufferlen
wcol
wcol_bit
wdtcon
wheight
word2double
wordtohex
wordtostr
wordtostrwithzeros
wprevx
wprevy
wr
wr_bit
wreg
wren
wren_bit
wrerr
wrerr_bit
wrestartinterval
wrspp
wrspp_bit
ws0
ws0_bit
ws1
ws1_bit
ws2
ws2_bit
ws3
ws3_bit
wue
wue_bit
wwidth
wworkbits
xtoi
z
z_bit
Calculator/Pronto/Calculator/Calculator.dlt
Calculator/Pronto/Calculator/Calculator.docx
// Sistemas Embarcados 
//Rodrigo Reviglio Weishaupt 
//201020656
//Calculadora 
// LCD module connections
sbit LCD_RS at RE2_bit;
sbit LCD_EN at RE1_bit;
sbit LCD_D4 at RD4_bit;
sbit LCD_D5 at RD5_bit;
sbit LCD_D6 at RD6_bit;
sbit LCD_D7 at RD7_bit;
sbit LCD_RS_Direction at TRISE2_bit;
sbit LCD_EN_Direction at TRISE1_bit;
sbit LCD_D4_Direction at TRISD4_bit;
sbit LCD_D5_Direction at TRISD5_bit;
sbit LCD_D6_Direction at TRISD6_bit;
sbit LCD_D7_Direction at TRISD7_bit;
// End LCD mocule connection
// funcao para escrever no LCD
void LCD(char texto[16]){
 Lcd_Cmd(_LCD_CLEAR);
 Lcd_Out(1,4,texto);
}
//declaracao de variaveis
 int aux1 = -1;
 int aux2 = -1;
 int flag = -1;
 int res = 0;
 char H[7];
 
void main() {
 Lcd_Cmd(_LCD_CLEAR); //limpa o LCD
 ADCON1=0x0f; //desativa portas AD
 trisd=0x0f; //ob00001111
 portb=0xff; //ob11111111
 trisb=0xf8; //ob11111000
 Lcd_Init(); //inicializa o LCD
 Lcd_Cmd(_LCD_CURSOR_OFF); //Desabilita o cursor
 
 while(1){
// while para captura do primeiro digito
 while(aux1==-1){
 portb.rb1=0; //ativa a segunda coluna
 if (portd.rd0==0){
 aux1=0;
 }else if (portd.rd1==0){
 aux1=8;
 }else if (portd.rd2==0){
 aux1 = 5;
 }else if (portd.rd3==0){
 aux1 = 2;}
 portb.rb1=1; //desativa a segunda coluna
 portb.rb2=0; //ativa a terceira coluna
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux1 = 9;
 }else if (portd.rd2==0){
 aux1 = 6;
 }else if (portd.rd3==0){
 aux1 = 3;}
 portb.rb2=1; //desativa a terceira coluna
 portb.rb0=0; //ativa a primeira coluna
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux1 = 7;
 }else if (portd.rd2==0){
 aux1 = 4;
 }else if (portd.rd3==0){
 aux1 = 1;}
 portb.rb0=1; //desativa a primeira coluna
 };
 Lcd_Cmd(_LCD_CLEAR); // limpa o LCD
 inttostr(aux1,H); // converte o primeiro digito para uma string
 Lcd_Out(1,1,H); // escreve o primeiro digito no LCD
 delay_ms(200); // delay
 LCD_Out(2,1,"->"); // indica que o software esta pronto para capturar o segundo digito
 
 // while para captura do segundo digito
 
 while(aux2==-1){
 portb.rb1=0; //ativa a segunda coluna
 if (portd.rd0==0){
 aux2=0;
 }else if (portd.rd1==0){
 aux2=8;
 }else if (portd.rd2==0){
 aux2 = 5;
 }else if (portd.rd3==0){
 aux2 = 2;}
 portb.rb1=1; //desativa a segunda coluna
 portb.rb2=0; //ativa a terceira coluna
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux2 = 9;
 }else if (portd.rd2==0){
 aux2 = 6;
 }else if (portd.rd3==0){
 aux2 = 3;}
 portb.rb2=1; //desativa a terceira coluna
 portb.rb0=0; //ativa a primeira coluna
 if (portd.rd0==0);
 else if (portd.rd1==0){
 aux2 = 7;
 }else if (portd.rd2==0){
 aux2 = 4;
 }else if (portd.rd3==0){
 aux2 = 1;}
 portb.rb0=1; //desativa a primeira coluna
 };
 inttostr(aux2,H); // converte o segundo digito para uma string
 Lcd_Out(2,1,H); // escreve o segundo digito no LCD
 
 // while para capturar a operacao matematica
 
 while(flag == -1){
 portb.rb2=0; //ativa a terceira coluna
 if (portd.rd0==0){
 res = aux1 + aux2; // faz a operecao de soma
 inttostr(res,H); // converte o resultado da operacao para uma string
 LCD(H); // escreve o resultado da operacao no LCD
 flag = 0;} // reseta o valor da flag
 portb.rb2=1; //desativa a terceira coluna
 portb.rb0=0; //ativa a primeira coluna
 if (portd.rd0==0){
 res = aux1 - aux2; // faz a operecao de subtracao
 inttostr(res,H); // converte o resultado da operacao para uma string
 LCD(H); // escreve o resultado da operacao no LCD
 flag = 0;} // reseta o valor da flag
 portb.rb0=1; //desativa a primeira coluna
 };
 
 // reseta os valores das variaveis
 flag = -1;
 aux1 = -1;
 aux2 = -1;
 res = 0;
 
 delay_ms(1000); // delay
 Lcd_Out(1,1,"End"); // indica que o programa chegou ao fim e esta pronot para fazer outra conta
}
}
Calculator/Pronto/Calculator/Calculator.hex
:10000000D1EF01F00000000000EF00F00000000060
:0A0010000000000000000000F3D71C
:06001C00000000001200CC
:100022000F0E0C6E470E0D6E0D2EFED70C2EFCD74A
:06003200000000001200B6
:0A003800210E0D6E0D2EFED71200F2
:100042003EBE02D0839E01D0838E3EBC02D0839CF2
:1000520001D0838C3EBA02D0839A01D0838A3EB803
:1000620002D0839801D0838824B002D0848401D046
:1000720084948482D2DF84923EB602D0839E01D0E1
:10008200838E3EB402D0839C01D0838C3EB202D0D8
:10009200839A01D0838A3EB002D0839801D08388AC
:1000A20024B002D0848401D084948482B6DF849206
:0C00B20024A002D0B5DF01D0BEDF120098
:1000BE00086A096A100E0C6E0134083609360450AF
:1000CE00085E0550D8A0053C095ED8B007D0045094
:1000DE0008260550D8B0053C0926D89000360136C2
:0600EE000C2EEAD71200FF
:0C00F40024903DC03EF0A3DF24801200E9
:100100000FD0800E366E19D0C00E366E16D0940EFB
:10011000366E13D0D40E366E10D0800E366E0DD0E3
:100120003650010AEEE03650020AEEE03650030A7D
:10013000EEE03650040AEEE0F0D73704006E365099
:10014000002600C036F000C03EF07BDF24903A6A03
:100150003A503824E96E000E3920EA6EEE520BE078
:100160003A503824E96E000E3920EA6EEECF3DF0A9
:0A017000C1DF3A2AEDD72480120007
:10017A003A6A050E3A5C0AE23A503824E16E000EF9
:10018A003920E26E200EE66E3A2AF3D73A50382426
:10019A00E16E000E3920E26EE66A3A063A503824D9
:1001AA003B6E000E39203C6E0A0E046E000E056E80
:1001BA0036C000F037C001F07DDF08C000F009C08A
:1001CA0001F0300E00263BC0E1FF3CC0E2FF00C058
:1001DA00E6FF0A0E046E000E056E36C000F037C048
:1001EA0001F068DF00C036F001C037F0000E0118D8
:1001FA0002E1000E001801E102D03A06CFD7120040
:10020A00969296949598959A959C959E84928494A4
:10021A00839E839C839A8398FFDEFEDEFDDE838ABB
:10022A0083888482F6DE8492F7DE8482F2DE849208
:10023A00F3DE8482EEDE8492EFDE83988482E9DE46
:10024A008492EADE8482E5DE8492839A838E8482B3
:10025A00E0DE8492E1DE839E83888482DADE849201
:10026A0083988482D6DE8492D7DE8482D2DE849218
:10027A0083888482CEDE8492CFDE83988482C9DE2C
:10028A008492838E838C838A83888482C2DE84925A
:06029A00C3DE2480120007
:1002A0000900F5CFE6FF0006FBE10106F9E11200C7
:1002B000010E3E6EC6DE010E366E040E376E2CC089
:0A02C00038F02DC039F01CDF1200E9
:1002CA00326A336A2CC034F02DC035F0800E2D18F6
:1002DA00006E800E005C02E1000E2C5C0BE2010E47
:1002EA00326E000E336E2C500008346E2DC035F07D
:1002FA00000E355634C036F035C037F02EC038F00F
:10030A002FC039F035DF060E306E000E316E000E4A
:10031A00006E3150005C02E13050000819E23050A2
:10032A002E24E16E31502F20E26E010E305C006EF9
:10033A00000E3158016E00502E24E96E01502F2014
:10034A00EA6EEECFE6FF010E305E000E315ADFD7BD
:10035A002EC0E1FF2FC0E2FF200EE66E32503310AE
:10036A001AE0306A316A30502E24E96E31502F205B
:10037A00EA6EEE50200A03E1304A312AF4D7010E20
:10038A00305E000E315A30502E24E16E31502F204B
:08039A00E26E2D0EE66E12006A
:1003A200FF0E156EFF0E166EFF0E176EFF0E186E05
:1003B200450E196E6E0E1A6E640E1B6E1C6A1D6A55
:1003C2001E6A2D0E1F6E3E0E206E216AFF0E226ED9
:1003D200FF0E236E010E3E6E33DE0F0EC16E0F0E48
:1003E200956EFF0E816EF80E936E0EDF0C0E3E6E52
:1003F20027DEFF0E231802E1FF0E22184EE1819242
:1004020083B003D0226A236A14D083B205D0080EC7
:10041200226E000E236E0DD083B405D0050E226E1F
:10042200000E236E06D083B604D0020E226E000E9A
:10043200236E8182819483B001D014D083B205D01F
:10044200090E226E000E236E0DD083B405D0060E67
:10045200226E000E236E06D083B604D0030E226EE7
:10046200000E236E8184819083B001D014D083B2B8
:1004720005D0070E226E000E236E0DD083B405D078
:10048200040E226E000E236E06D083B604D0010E37
:10049200226E000E236E8180ACD7010E3E6ED0DD3F
:1004A20022C02CF023C02DF0250E2E6E000E2F6ED2
:1004B2000BDF010E366E010E376E250E386E000E02
:1004C200396E1DDE030E0B6E080E0C6E770E0D6E6E
:1004D2000D2EFED70C2EFCD70B2EFAD7020E366E3F
:1004E200010E376E1F0E386E000E396E08DEFF0EDB
:1004F200161802E1FF0E15184EE1819283B003D067
:10050200156A166A14D083B205D0080E156E000E55
:10051200166E0DD083B405D0050E156E000E166E44
:1005220006D083B604D0020E156E000E166E8182BE
:10053200819483B001D014D083B205D0090E156E18
:10054200000E166E0DD083B405D0060E156E000E89
:10055200166E06D083B604D0030E156E000E166E0C
:100562008184819083B001D014D083B205D0070E6C
:10057200156E000E166E0DD083B405D0040E156EE6
:10058200000E166E06D083B604D0010E156E000E54
:10059200166E8180ACD715C02CF016C02DF0250E3A
:1005A2002E6E000E2F6E90DE020E366E010E376E2C
:1005B200250E386E000E396EA2DDFF0E181802E10C
:1005C200FF0E17183DE1819483B01AD015502224F2
:1005D200006E16502320016E00C01DF001C01EF0F7
:1005E20000C02CF001C02DF0250E2E6E000E2F6ED5
:1005F2006BDE250E2C6E000E2D6E59DE176A186A00
:100602008184819083B01AD01550225C006E1650FE
:100612002358016E00C01DF001C01EF000C02CF076
:1006220001C02DF0250E2E6E000E2F6E4DDE250E12
:100632002C6E000E2D6E3BDE176A186A8180BDD7C4
:10064200FF0E176EFF0E186EFF0E226EFF0E236E48
:10065200FF0E156EFF0E166E1D6A1E6A0B0E0B6ED6
:10066200260E0C6E5D0E0D6E0D2EFED70C2EFCD7D7
:100672000B2EFAD700000000010E366E010E376E07
:0E068200190E386E000E396E3ADDB3D6FFD772
:020000040030CA
:0E000000010C191EFF0080FF0FC00FE00F4023
:00000001FF
Calculator/Pronto/Calculator/Calculator.log
0	1	mikroCPIC1618.exe -MSF -DBG -pP18F4550 -DL -O11111114 -fo8 -N"C:\Users\Aluno\Desktop\Calculator\Calculator.mcppi" -SP"C:\Program Files (x86)\mikroC PRO for PIC\defs\" -SP"C:\Program Files (x86)\mikroC PRO for PIC\uses\P18\" -SP"C:\Users\Aluno\Desktop\Calculator\" -SP"C:\Users\Aluno\Desktop\" "Calculator.c" "Calculator.c" "__Lib_Math.mcl" "__Lib_MathDouble.mcl" "__Lib_System.mcl" "__Lib_Delays.mcl" "__Lib_CType.mcl" "__Lib_CString.mcl" "__Lib_CStdlib.mcl" "__Lib_CMath.mcl" "__Lib_MemManager.mcl" "__Lib_Conversions.mcl" "__Lib_Sprintf.mcl" "__Lib_PrintOut.mcl" "__Lib_Sprinti.mcl" "__Lib_Sprintl.mcl" "__Lib_Time.mcl" "__Lib_Trigonometry.mcl" "__Lib_Button.mcl" "__Lib_Keypad4x4.mcl" "__Lib_Manchester.mcl" "__Lib_OneWire.mcl" "__Lib_PS2.mcl" "__Lib_Sound.mcl" "__Lib_SoftI2C.mcl" "__Lib_SoftSPI.mcl" "__Lib_SoftUART.mcl" "__Lib_ADC_A_D.mcl" "__Lib_EEPROM_256.mcl" "__Lib_FLASH_w32_e64.mcl" "__Lib_I2C_b10.mcl" "__Lib_PWM_c21.mcl" "__Lib_SPI_b10c7.mcl" "__Lib_UART_c67.mcl" "__Lib_USB_genHID.mcl" "__Lib_PortExpander.mcl" "__Lib_CANSPI.mcl" "__Lib_CF.mcl" "__Lib_CFFat16.mcl" "__Lib_GlcdFonts.mcl" "__Lib_Glcd.mcl" "__Lib_LcdConsts.mcl" "__Lib_Lcd.mcl" "__Lib_Mmc.mcl" "__Lib_MmcFat16.mcl" "__Lib_MmcFat16Constants.mcl" "__Lib_RS485.mcl" "__Lib_S1D13700.mcl" "__Lib_T6963C.mcl" "__Lib_SPIGlcd.mcl" "__Lib_SPILcd.mcl" "__Lib_SPILcd8.mcl" "__Lib_SPIT6963C.mcl" "__Lib_EthEnc28j60.mcl" "__Lib_TFT.mcl" "__Lib_TFT_16bit.mcl" "__Lib_TouchPanel_TFT.mcl" "__Lib_EthEnc24j600.mcl" "__Lib_TouchPanel.mcl"	 
diagnostics: 0	126	All files Preprocessed in 31 ms	 
diagnostics: 0	122	Compilation Started	Calculator.c
diagnostics: 161	123	Compiled Successfully	Calculator.c
diagnostics: 0	122	Compilation Started	Calculator.c
diagnostics: 161	123	Compiled Successfully	Calculator.c
diagnostics: 0	127	All files Compiled in 78 ms	 
diagnostics: 0	125	Project Linked Successfully	Calculator.mcppi
diagnostics: 0	128	Linked in 328 ms	 
diagnostics: 0	129	Project 'Calculator.mcppi' completed: 531 ms	 
diagnostics: 0	103	Finished successfully: 08 abr 2015, 10:54:18	Calculator.mcppi
Calculator/Pronto/Calculator/Calculator.lst
; LST file generated by mikroListExporter - v.2.0 
; Date/Time: 08/04/2015 10:54:18
;----------------------------------------------
;Address Opcode 	ASM
0x0000	0xF001EFD1 	GOTO 930
0x0004	0x0000 	NOP
0x0006	0x0000 	NOP
0x0008	0xF000EF00 	GOTO 0
0x000C	0x0000 	NOP
0x000E	0x0000 	NOP
0x0010	0x0000 	NOP
0x0012	0x0000 	NOP
0x0014	0x0000 	NOP
0x0016	0x0000 	NOP
0x0018	0xD7F3 	BRA 0
_Delay_1us:
;__Lib_Delays.c,7 :: 		void Delay_1us() {
;__Lib_Delays.c,8 :: 		Delay_us(1);
0x001C	0x0000 	NOP
0x001E	0x0000 	NOP
;__Lib_Delays.c,9 :: 		}
L_end_Delay_1us:
0x0020	0x0012 	RETURN 0
; end of _Delay_1us
_Delay_5500us:
;__Lib_Delays.c,31 :: 		void Delay_5500us() {
;__Lib_Delays.c,32 :: 		Delay_us(5500);
0x0022	0x0E0F 	MOVLW 15
0x0024	0x6E0C 	MOVWF R12, 0
0x0026	0x0E47 	MOVLW 71
0x0028	0x6E0D 	MOVWF R13, 0
L_Delay_5500us5:
0x002A	0x2E0D 	DECFSZ R13, 1, 0
0x002C	0xD7FE 	BRA L_Delay_5500us5
0x002E	0x2E0C 	DECFSZ R12, 1, 0
0x0030	0xD7FC 	BRA L_Delay_5500us5
0x0032	0x0000 	NOP
0x0034	0x0000 	NOP
;__Lib_Delays.c,33 :: 		}
L_end_Delay_5500us:
0x0036	0x0012 	RETURN 0
; end of _Delay_5500us
_Delay_50us:
;__Lib_Delays.c,19 :: 		void Delay_50us() {
;__Lib_Delays.c,20 :: 		Delay_us(50);
0x0038	0x0E21 	MOVLW 33
0x003A	0x6E0D 	MOVWF R13, 0
L_Delay_50us2:
0x003C	0x2E0D 	DECFSZ R13, 1, 0
0x003E	0xD7FE 	BRA L_Delay_50us2
;__Lib_Delays.c,21 :: 		}
L_end_Delay_50us:
0x0040	0x0012 	RETURN 0
; end of _Delay_50us
_Lcd_Cmd:
;__Lib_Lcd.c,18 :: 		
;__Lib_Lcd.c,20 :: 		
0x0042	0xBE3E 	BTFSC FARG_Lcd_Cmd_out_char, 7 
0x0044	0xD002 	BRA L__Lcd_Cmd21
0x0046	0x9E83 	BCF LCD_D7, BitPos(LCD_D7+0) 
0x0048	0xD001 	BRA L__Lcd_Cmd22
L__Lcd_Cmd21:
0x004A	0x8E83 	BSF LCD_D7, BitPos(LCD_D7+0) 
L__Lcd_Cmd22:
;__Lib_Lcd.c,21 :: 		
0x004C	0xBC3E 	BTFSC FARG_Lcd_Cmd_out_char, 6 
0x004E	0xD002 	BRA L__Lcd_Cmd23
0x0050	0x9C83 	BCF LCD_D6, BitPos(LCD_D6+0) 
0x0052	0xD001 	BRA L__Lcd_Cmd24
L__Lcd_Cmd23:
0x0054	0x8C83 	BSF LCD_D6, BitPos(LCD_D6+0) 
L__Lcd_Cmd24:
;__Lib_Lcd.c,22 :: 		
0x0056	0xBA3E 	BTFSC FARG_Lcd_Cmd_out_char, 5 
0x0058	0xD002 	BRA L__Lcd_Cmd25
0x005A	0x9A83 	BCF LCD_D5, BitPos(LCD_D5+0) 
0x005C	0xD001 	BRA L__Lcd_Cmd26
L__Lcd_Cmd25:
0x005E	0x8A83 	BSF LCD_D5, BitPos(LCD_D5+0) 
L__Lcd_Cmd26:
;__Lib_Lcd.c,23 :: 		
0x0060	0xB83E 	BTFSC FARG_Lcd_Cmd_out_char, 4 
0x0062	0xD002 	BRA L__Lcd_Cmd27
0x0064	0x9883 	BCF LCD_D4, BitPos(LCD_D4+0) 
0x0066	0xD001 	BRA L__Lcd_Cmd28
L__Lcd_Cmd27:
0x0068	0x8883 	BSF LCD_D4, BitPos(LCD_D4+0) 
L__Lcd_Cmd28:
;__Lib_Lcd.c,25 :: 		
0x006A	0xB024 	BTFSC __Lib_Lcd_cmd_status, BitPos(__Lib_Lcd_cmd_status+0) 
0x006C	0xD002 	BRA L__Lcd_Cmd29
0x006E	0x8484 	BSF LCD_RS, BitPos(LCD_RS+0) 
0x0070	0xD001 	BRA L__Lcd_Cmd30
L__Lcd_Cmd29:
0x0072	0x9484 	BCF LCD_RS, BitPos(LCD_RS+0) 
L__Lcd_Cmd30:
;__Lib_Lcd.c,28 :: 		
0x0074	0x8284 	BSF LCD_EN, BitPos(LCD_EN+0) 
;__Lib_Lcd.c,29 :: 		
0x0076	0xDFD2 	RCALL _Delay_1us
;__Lib_Lcd.c,30 :: 		
0x0078	0x9284 	BCF LCD_EN, BitPos(LCD_EN+0) 
;__Lib_Lcd.c,33 :: 		
0x007A	0xB63E 	BTFSC FARG_Lcd_Cmd_out_char, 3 
0x007C	0xD002 	BRA L__Lcd_Cmd31
0x007E	0x9E83 	BCF LCD_D7, BitPos(LCD_D7+0) 
0x0080	0xD001 	BRA L__Lcd_Cmd32
L__Lcd_Cmd31:
0x0082	0x8E83 	BSF LCD_D7, BitPos(LCD_D7+0) 
L__Lcd_Cmd32:
;__Lib_Lcd.c,34 :: 		
0x0084	0xB43E 	BTFSC FARG_Lcd_Cmd_out_char, 2 
0x0086	0xD002
BRA L__Lcd_Cmd33
0x0088	0x9C83 	BCF LCD_D6, BitPos(LCD_D6+0) 
0x008A	0xD001 	BRA L__Lcd_Cmd34
L__Lcd_Cmd33:
0x008C	0x8C83 	BSF LCD_D6, BitPos(LCD_D6+0) 
L__Lcd_Cmd34:
;__Lib_Lcd.c,35 :: 		
0x008E	0xB23E 	BTFSC FARG_Lcd_Cmd_out_char, 1 
0x0090	0xD002 	BRA L__Lcd_Cmd35
0x0092	0x9A83 	BCF LCD_D5, BitPos(LCD_D5+0) 
0x0094	0xD001 	BRA L__Lcd_Cmd36
L__Lcd_Cmd35:
0x0096	0x8A83 	BSF LCD_D5, BitPos(LCD_D5+0) 
L__Lcd_Cmd36:
;__Lib_Lcd.c,36 :: 		
0x0098	0xB03E 	BTFSC FARG_Lcd_Cmd_out_char, 0 
0x009A	0xD002 	BRA L__Lcd_Cmd37
0x009C	0x9883 	BCF LCD_D4, BitPos(LCD_D4+0) 
0x009E	0xD001 	BRA L__Lcd_Cmd38
L__Lcd_Cmd37:
0x00A0	0x8883 	BSF LCD_D4, BitPos(LCD_D4+0) 
L__Lcd_Cmd38:
;__Lib_Lcd.c,38 :: 		
0x00A2	0xB024 	BTFSC __Lib_Lcd_cmd_status, BitPos(__Lib_Lcd_cmd_status+0) 
0x00A4	0xD002 	BRA L__Lcd_Cmd39
0x00A6	0x8484 	BSF LCD_RS, BitPos(LCD_RS+0) 
0x00A8	0xD001 	BRA L__Lcd_Cmd40
L__Lcd_Cmd39:
0x00AA	0x9484 	BCF LCD_RS, BitPos(LCD_RS+0) 
L__Lcd_Cmd40:
;__Lib_Lcd.c,40 :: 		
0x00AC	0x8284 	BSF LCD_EN, BitPos(LCD_EN+0) 
;__Lib_Lcd.c,41 :: 		
0x00AE	0xDFB6 	RCALL _Delay_1us
;__Lib_Lcd.c,42 :: 		
0x00B0	0x9284 	BCF LCD_EN, BitPos(LCD_EN+0) 
;__Lib_Lcd.c,44 :: 		
0x00B2	0xA024 	BTFSS __Lib_Lcd_cmd_status, BitPos(__Lib_Lcd_cmd_status+0) 
0x00B4	0xD002 	BRA L_Lcd_Cmd0
;__Lib_Lcd.c,45 :: 		
0x00B6	0xDFB5 	RCALL _Delay_5500us
0x00B8	0xD001 	BRA L_Lcd_Cmd1
L_Lcd_Cmd0:
;__Lib_Lcd.c,47 :: 		
0x00BA	0xDFBE 	RCALL _Delay_50us
L_Lcd_Cmd1:
;__Lib_Lcd.c,48 :: 		
L_end_Lcd_Cmd:
0x00BC	0x0012 	RETURN 0
; end of _Lcd_Cmd
_Div_16x16_U:
;__Lib_Math.c,102 :: 		
;__Lib_Math.c,109 :: 		
0x00BE	0x6A08 	CLRF R8, 0
;__Lib_Math.c,110 :: 		
0x00C0	0x6A09 	CLRF R9, 0
;__Lib_Math.c,111 :: 		
0x00C2	0x0E10 	MOVLW 16
;__Lib_Math.c,112 :: 		
0x00C4	0x6E0C 	MOVWF R12, 0
;__Lib_Math.c,113 :: 		
0x00C6	0x3401 	RLCF R1, 0, 0
;__Lib_Math.c,114 :: 		
0x00C8	0x3608 	RLCF R8, 1, 0
;__Lib_Math.c,115 :: 		
0x00CA	0x3609 	RLCF R9, 1, 0
;__Lib_Math.c,116 :: 		
0x00CC	0x5004 	MOVF R4, 0, 0
;__Lib_Math.c,117 :: 		
0x00CE	0x5E08 	SUBWF R8, 1, 0
;__Lib_Math.c,118 :: 		
0x00D0	0x5005 	MOVF R5, 0, 0
;__Lib_Math.c,119 :: 		
0x00D2	0xA0D8 	BTFSS STATUS, 0, 0
;__Lib_Math.c,120 :: 		
0x00D4	0x3C05 	INCFSZ R5, 0, 0
;__Lib_Math.c,121 :: 		
0x00D6	0x5E09 	SUBWF R9, 1, 0
;__Lib_Math.c,122 :: 		
0x00D8	0xB0D8 	BTFSC STATUS, 0, 0
;__Lib_Math.c,123 :: 		
0x00DA	0xD007 	BRA $+16
;__Lib_Math.c,124 :: 		
0x00DC	0x5004 	MOVF R4, 0, 0
;__Lib_Math.c,125 :: 		
0x00DE	0x2608 	ADDWF R8, 1, 0
;__Lib_Math.c,126 :: 		
0x00E0	0x5005 	MOVF R5, 0, 0
;__Lib_Math.c,127 :: 		
0x00E2	0xB0D8 	BTFSC STATUS, 0, 0
;__Lib_Math.c,128 :: 		
0x00E4	0x3C05 	INCFSZ R5, 0, 0
;__Lib_Math.c,129 :: 		
0x00E6	0x2609 	ADDWF R9, 1, 0
;__Lib_Math.c,130 :: 		
0x00E8	0x90D8 	BCF STATUS, 0, 0
;__Lib_Math.c,131 :: 		
0x00EA	0x3600 	RLCF R0, 1, 0
;__Lib_Math.c,132 :: 		
0x00EC	0x3601 	RLCF R1, 1, 0
;__Lib_Math.c,133 :: 		
0x00EE	0x2E0C 	DECFSZ R12, 1, 0
;__Lib_Math.c,134 :: 		
0x00F0	0xD7EA 	BRA $-42
;__Lib_Math.c,136 :: 		
L_end_Div_16x16_U:
0x00F2	0x0012 	RETURN 0
; end of _Div_16x16_U
_Lcd_Chr_CP:
;__Lib_Lcd.c,50 :: 		
;__Lib_Lcd.c,52 :: 		
0x00F4	0x9024 	BCF __Lib_Lcd_cmd_status, BitPos(__Lib_Lcd_cmd_status+0) 
;__Lib_Lcd.c,53 :: 		
0x00F6	0xF03EC03D 	MOVFF FARG_Lcd_Chr_CP_out_char, FARG_Lcd_Cmd_out_char
0x00FA	0xDFA3 	RCALL _Lcd_Cmd
;__Lib_Lcd.c,54 :: 		
0x00FC	0x8024 	BSF __Lib_Lcd_cmd_status, BitPos(__Lib_Lcd_cmd_status+0) 
;__Lib_Lcd.c,55 :: 		
L_end_Lcd_Chr_CP:
0x00FE	0x0012 	RETURN 0
; end of _Lcd_Chr_CP
_Lcd_Out:
;__Lib_Lcd.c,184 :: 		
;__Lib_Lcd.c,187 :: 		
0x0100	0xD00F 	BRA L_Lcd_Out11
;__Lib_Lcd.c,188 :: 		
L_Lcd_Out13:
0x0102	0x0E80 	MOVLW 128
0x0104	0x6E36 	MOVWF FARG_Lcd_Out_row 
0x0106	0xD019 	BRA L_Lcd_Out12
;__Lib_Lcd.c,189 :: 		
L_Lcd_Out14:
0x0108	0x0EC0 	MOVLW 192
0x010A	0x6E36 	MOVWF FARG_Lcd_Out_row 
0x010C	0xD016 	BRA L_Lcd_Out12
;__Lib_Lcd.c,190 :: 		
L_Lcd_Out15:
0x010E	0x0E94 	MOVLW 148
0x0110	0x6E36 	MOVWF FARG_Lcd_Out_row 
0x0112	0xD013 	BRA L_Lcd_Out12
;__Lib_Lcd.c,191 :: 		
L_Lcd_Out16:
0x0114	0x0ED4 	MOVLW 212
0x0116	0x6E36 	MOVWF FARG_Lcd_Out_row 
0x0118	0xD010 	BRA L_Lcd_Out12
;__Lib_Lcd.c,192 :: 		
L_Lcd_Out17:
0x011A	0x0E80 	MOVLW 128
0x011C	0x6E36 	MOVWF FARG_Lcd_Out_row 
;__Lib_Lcd.c,193 :: 		
0x011E	0xD00D 	BRA L_Lcd_Out12
L_Lcd_Out11:
0x0120	0x5036 	MOVF FARG_Lcd_Out_row, 0 
0x0122	0x0A01 	XORLW 1
0x0124	0xE0EE 	BZ L_Lcd_Out13
0x0126	0x5036 	MOVF FARG_Lcd_Out_row, 0 
0x0128	0x0A02 	XORLW 2
0x012A	0xE0EE 	BZ L_Lcd_Out14
0x012C	0x5036 	MOVF FARG_Lcd_Out_row, 0 
0x012E	0x0A03 	XORLW 3
0x0130	0xE0EE 	BZ L_Lcd_Out15
0x0132	0x5036 	MOVF FARG_Lcd_Out_row, 0 
0x0134	0x0A04 	XORLW 4
0x0136	0xE0EE 	BZ L_Lcd_Out16
0x0138	0xD7F0 	BRA L_Lcd_Out17
L_Lcd_Out12:
;__Lib_Lcd.c,194 :: 		
0x013A	0x0437 	DECF FARG_Lcd_Out_column, 0 
0x013C	0x6E00 	MOVWF R0 
0x013E	0x5036 	MOVF FARG_Lcd_Out_row, 0 
0x0140	0x2600 	ADDWF R0, 1 
0x0142	0xF036C000 	MOVFF R0, FARG_Lcd_Out_row
;__Lib_Lcd.c,196 :: 		
0x0146	0xF03EC000 	MOVFF R0, FARG_Lcd_Cmd_out_char
0x014A	0xDF7B 	RCALL _Lcd_Cmd
;__Lib_Lcd.c,197 :: 		
0x014C	0x9024 	BCF __Lib_Lcd_cmd_status, BitPos(__Lib_Lcd_cmd_status+0) 
;__Lib_Lcd.c,198 :: 		
0x014E	0x6A3A 	CLRF Lcd_Out_i_L0 
;__Lib_Lcd.c,199 :: 		
L_Lcd_Out18:
0x0150	0x503A 	MOVF Lcd_Out_i_L0, 0 
0x0152	0x2438 	ADDWF FARG_Lcd_Out_text, 0 
0x0154	0x6EE9 	MOVWF FSR0L 
0x0156	0x0E00 	MOVLW 0
0x0158	0x2039 	ADDWFC FARG_Lcd_Out_text+1, 0 
0x015A	0x6EEA 	MOVWF FSR0H 
0x015C	0x52EE 	MOVF POSTINC0, 1 
0x015E	0xE00B 	BZ L_Lcd_Out19
;__Lib_Lcd.c,200 :: 		
0x0160	0x503A 	MOVF Lcd_Out_i_L0, 0 
0x0162	0x2438 	ADDWF FARG_Lcd_Out_text, 0 
0x0164	0x6EE9 	MOVWF FSR0L 
0x0166	0x0E00 	MOVLW 0
0x0168	0x2039 	ADDWFC FARG_Lcd_Out_text+1, 0 
0x016A	0x6EEA 	MOVWF FSR0H 
0x016C	0xF03DCFEE 	MOVFF POSTINC0, FARG_Lcd_Chr_CP_out_char
0x0170	0xDFC1 	RCALL _Lcd_Chr_CP
0x0172	0x2A3A 	INCF Lcd_Out_i_L0, 1 
0x0174	0xD7ED 	BRA L_Lcd_Out18
L_Lcd_Out19:
;__Lib_Lcd.c,201 :: 		
0x0176	0x8024 	BSF __Lib_Lcd_cmd_status, BitPos(__Lib_Lcd_cmd_status+0) 
;__Lib_Lcd.c,202 :: 		
L_end_Lcd_Out:
0x0178	0x0012 	RETURN 0
; end of _Lcd_Out
_WordToStr:
;__Lib_Conversions.c,84 :: 		
;__Lib_Conversions.c,89 :: 		
0x017A	0x6A3A 	CLRF WordToStr_len_L0 
L_WordToStr6:
0x017C	0x0E05 	MOVLW 5
0x017E	0x5C3A 	SUBWF WordToStr_len_L0, 0 
0x0180	0xE20A 	BC L_WordToStr7
;__Lib_Conversions.c,90 :: 		
0x0182	0x503A 	MOVF WordToStr_len_L0, 0 
0x0184	0x2438 	ADDWF FARG_WordToStr_output, 0 
0x0186	0x6EE1 	MOVWF FSR1L 
0x0188

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais