Professional Documents
Culture Documents
9/12/2003 Slide 1
9/12/2003 Slide 2
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 3
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 4
Praticidade de Programao em C
G G G G G
G G G G
Programao estruturada Programao com o uso de Bibliotecas Possibilidade de inserir cdigo em Assembly Implementao de rotinas de delay (atraso) Criao de expresses matemticas com variveis de 8,16,32 bits e ponto flutuante Criao de rotinas de interrupo Seleo de Banco de RAM Seleo de Pgina de memria de Programa Configurao dos Perifricos
9/12/2003 Slide 5
9/12/2003 Slide 6
9/12/2003 Slide 7
9/12/2003 Slide 8
9/12/2003 Slide 9
9/12/2003 Slide 10
9/12/2003 Slide 11
9/12/2003 Slide 12
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 13
9/12/2003 Slide 14
9/12/2003 Slide 15
9/12/2003 Slide 16
9/12/2003 Slide 17
9/12/2003 Slide 18
9/12/2003 Slide 19
9/12/2003 Slide 20
9/12/2003 Slide 21
9/12/2003 Slide 22
9/12/2003 Slide 23
9/12/2003 Slide 24
9/12/2003 Slide 25
9/12/2003 Slide 26
9/12/2003 Slide 27
9/12/2003 Slide 28
9/12/2003 Slide 29
9/12/2003 Slide 30
9/12/2003 Slide 31
9/12/2003 Slide 32
9/12/2003 Slide 33
9/12/2003 Slide 34
9/12/2003 Slide 35
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 36
Comandos da Linguagem C
Comando: if (expr) {bloco de comandos;} else {bloco de comandos;} switch (expr) { case cexpr: stmt; default:stmt; } Exemplo if (x==25) x=1; else x=x+1; switch (cmd) { case 0:printf("cmd 0"); break; case 1:printf("cmd 1"); break; default:printf("badcmd" );}
Slide 37
9/12/2003
Comandos da Linguagem C
while (expr) stmt; While{ (get_rtcc()!=0) putc('n'); } do { putc(c=getc()); } while (c!=0); for (i=1;i<=10;++i){ printf("%u\r\n",i); } #byte portb = 0x06 loop: portb = portb ^ 0x01 goto loop;
Slide 38
9/12/2003
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 39
Funes Matemticas abs() Retorna o valor absoluto de um sinal. exp() Retorna o valor de ex (e = 2,718282). floor() Retorna o menor nmero inteiro que menor que o valor especificado. ceil() Retorna o menor nmero inteiro que maior que o valor especificado. labs() Retorna o valor absoluto de um nmero inteiro. modf() Retorna a parte inteira e a parte fracionria de um nmero fracionrio. fmod() Retorna o resto da diviso de dois nmeros fracionrios.
9/12/2003 Slide 40
Funes Matemticas fabs() Retorna o valor absoluto de um nmero fracionrio (ponto flutuante). log() Calcula o Ln (logaritmo natural) do nmero especificado. log10() Calcula o valor do logaritmo de base 10 do nmero especificado. frexp() Decompe o nmero em uma mantissa na faixa de 0.5 a 1 e um expoente inteiro tal que o nmero ser igual mantissa * 2 exp. ldexp() Multiplica um valor por 2 exp. sqrt() Retorna a Raiz quadrada do valor especificado.
9/12/2003 Slide 41
Funes Matemticas cos() Retorna o valor do coseno. acos() Retorna o valor do arco coseno. cosh() Retorna o valor do coseno hiperblico. sin() Retorna o valor do seno. asin() Retorna o valor do arco seno. sinh() Retorna o valor do seno hiperblico. tan() Retorna o valor da tangente. tanh() Retorna o valor da tangente hiperblica atan() Retorna o arco tangente.
9/12/2003 Slide 42
Funes de Manipulao de Caracteres atol(), atoL(), atol32(), atof() Converte uma string em um valor inteiro de 8, 16 ou 32 bits, ou em um float. tolower() Converte um caractere no seu correspondente minsculo. toupper() Converte um caractere no seu correspondente maisculo. isalnum() Verifica se o caractere uma letra ou nmero. isalpha() Verifica se o caractere uma letra. isdigit() Verifica se o caractere um nmero. islower() Verifica se o caractere uma letra minscula. isupper() Verifica se o caractere uma letra maiscula.
Slide 43
9/12/2003
Funes de Manipulao de Caracteres isspace() Verifica se o caractere um espao. isxdigit() Verifica se o caractere um digito hexadecimal. iscntrl() Verifica se um caractere de controle. isgraph() Verifica se um caractere grfico. isprint() Verifica se um caractere pode ser impresso. ispunct() Verifica se o caractere diferente de letra ou nmero. ismoung() Verifica se o caractere est contido em uma string. strlen() Retorna a quantidade de caractere em uma string.
9/12/2003 Slide 44
Funes de Manipulao de Caracteres strcpy() Copia o contedo de uma string para outra. strncpy() Copia um determinado nmero de caractere de uma string para outra. strcmp(), strncmp(), stricmp() Compara duas strings e retorna: maior, menor ou igual. strcat() Concatena uma string dentro de outra. strstr() Localiza uma string dentro de outra. strchr(), strrchr() localiza um caractere em uma string. strtok() Retorna um ponteiro para a prxima ocorrncia de uma palavra em um string.
9/12/2003 Slide 45
Funes de Manipulao de Caracteres strspn(), strcspn() Conta o nmero de caracteres presentes em uma string e que aparecem tambm em outra. strpbrk() Localiza um caractere de uma string em outra string. strlwr() Converte os caracteres de uma string em minsculo. sprintf() Imprime uma string ou constante de caracteres em outra string.
9/12/2003 Slide 46
Operadores + Soma. Subtrao. * Multiplicao. / Diviso. % Resto da diviso = Atribuio & Operao AND bit a bit | Operao IOR bit a bit ^ Operao XOR bit a bit ! Operao NEGATION bit a bit
Slide 47
9/12/2003
Operadores << Rotao a esquerda >> Rotao a direita ++ Incremento -Decremento == Igual != Diferente > Maior < Menor >= Maior ou igual <= Menor ou igual
Slide 48
9/12/2003
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 49
Funes para RS232 I/O getc(), getch(), getchar(), gets() fgetc(), fgets(), get_string() putc(), putchar(), puts() fputc(), fputs() printf(), fprintf() kbhit(), set_uart_speed() perror(), assert(),
9/12/2003 Slide 50
9/12/2003 Slide 51
9/12/2003 Slide 52
9/12/2003 Slide 53
9/12/2003 Slide 54
Funes para manipulao de bit e byte shift_right(), shift_left() rotate_right(), rotate_left() bit_clear(), bit_set(), bit_test() swap() make8(), make16(), make32()
9/12/2003 Slide 55
Funes para manipulao de I/O (Entrada e Sada) output_low(), output_high(), output_float(), output_bit() output_a(), output_b(), output_c(), output_d(), output_e() input() input_a(), input_b(), input_c(), input_d(), input_e() port_b_pullups() set_tris_a(), set_tris_b(), set_tris_c(), set_tris_d(), set_tris_e()
9/12/2003 Slide 56
9/12/2003 Slide 57
Funes para manipulao de Timers setup_timer_0(), setup_rtcc(), setup_counter() setup_timer_1(), setup_timer_2(), setup_timer_3() set_rtcc(), set_timer_0(), set_timer_1(), set_timer_2(), set_timer_3() get_rtcc(), get_timer0(), get_timer1(), get_timer2(), get_timer3() setup_wdt(), restart_wdt()
9/12/2003 Slide 58
9/12/2003 Slide 59
Funes para manipulao da memria EEPROM e FLASH read_eeprom() write_eeprom() read_program_eeprom() write_program_eeprom() read_calibration()
9/12/2003 Slide 60
Funes para controle do processador sleep() reset_cpu(), restart_cause() enable_interrupts(), disable_interrupts() ext_int_edge() read_bank(), write_bank() label_address(), goto_address()
9/12/2003 Slide 61
SLIDE PRMIO
Envie Um E-mail
Para Microchip@artimar.com.br com o seguinte assunto:
1 Brinde Microchip
* Promoo Vlida por Tempo Lim itado e Somente 1 Brinde por Participante do Seminrio
9/12/2003 Slide 62
9/12/2003 Slide 63
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 64
9/12/2003 Slide 65
9/12/2003 Slide 66
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 67
Biblioteca de Funes para EEPROM 2401.c 2402.c 2404.c 2408.c 24128.c 2416.c 24256.c 2432.c 2465.c
9/12/2003 Slide 68
Biblioteca de Funes para EEPROM 25160.c 25320.c 25640.c 25C080.c 9346.c 9356.c 9356SPI.c 9366.c AT25256.c
9/12/2003 Slide 69
9/12/2003 Slide 70
9/12/2003 Slide 71
9/12/2003 Slide 72
Biblioteca de Funes para conversor Analgico Digital AD7705.c AD7715.c AD8320.c AD8400.c
9/12/2003 Slide 73
Biblioteca de Funes para comunicao serial CRC.c Input.c Loader.c PIC_USB.h S7600.h SC28l19X.c Smtp.h USB.h USB.c
9/12/2003 Slide 74
9/12/2003 Slide 75
9/12/2003 Slide 76
Agenda
Praticidade de Programao em C Uso do compilador no MPLAB e editor da CCS Comandos da Linguagem C Funes do Compilador padro ANSI As funes especiais para o microcontrolador PIC A migrao do programa desenvolvido em C para outro modelo de PIC Biblioteca de funes da CCS Simulao e Depurao de programas
9/12/2003 Slide 77
9/12/2003 Slide 78
9/12/2003 Slide 79
9/12/2003 Slide 80
9/12/2003 Slide 81
9/12/2003 Slide 82
9/12/2003 Slide 83
9/12/2003 Slide 84
Fim
9/12/2003 Slide 85