Nesse exemplo mostro como utilizar a EEPROM Interna ao microcontrolador.

Usar no Proteus 7.10 ou superior.


Fazer o download:[PIC][MIKROC][PROTEUS] Gravação da EEPROM Interna


Segue o código:

[sections] [section title=”Esquema Elétrico”]
[PIC][MIKROC][PROTEUS] Gravação da EEPROM Interna
[PIC][MIKROC][PROTEUS] Gravação da EEPROM Interna
[/section]

[section title="Código Fonte"]

/*
               DATEK Tecnologia Eletrônica Ltda.

********************************************************************************
 PROGRAMA EXEMPLO: Mostrar como usar a eeprom interna do pic.
         OBJETIVO: Aprender como usar a eeprom interna do pic.
            AUTOR: Fabio Mulero.[fabio@datek.com.br]
********************************************************************************
 MICROCONTROLADOR: PIC18F4550.

 PLACA DE DESENVOLVIMENTO: SIMULAÇÃO NO PROTEUS

 SOFTWARE: MikroC PRO for PIC Versão: 6.0

********************************************************************************
*/

// Variaveis globais
unsigned int uiValor=0,uiContador=0;
char txt[5];

// Alias
// Lcd pinout settings
sbit LCD_RS at RD0_bit;
sbit LCD_EN at RD1_bit;
sbit LCD_D4 at RD2_bit;
sbit LCD_D5 at RD3_bit;
sbit LCD_D6 at RD4_bit;
sbit LCD_D7 at RD5_bit;

// Pin direction
sbit LCD_RS_Direction at TRISD0_bit;
sbit LCD_EN_Direction at TRISD1_bit;
sbit LCD_D4_Direction at TRISD2_bit;
sbit LCD_D5_Direction at TRISD3_bit;
sbit LCD_D6_Direction at TRISD4_bit;
sbit LCD_D7_Direction at TRISD5_bit;

// Funções auxiliares

// Função principal
void main()
{
   ADCON1=0X0F;

   Lcd_Init();
   Lcd_Cmd(_LCD_CURSOR_OFF);
   Lcd_Cmd(_LCD_CLEAR);
   uiValor=0;
   while(1)
   {
      Lcd_Out(1,1,"Escrevendo:         ");   // Escreve na primeira linha do LCD
      WordToHex(uiContador, txt);            // Converte numero para texto
      Lcd_Out(1,14,txt);                     // Escreve numero convertido no LCD
      EEPROM_Write(uiContador,uiContador);   // Grava valor na EEProm
      Delay_ms(1000);                        // Aguarda 1 Segundo
      Lcd_Out(2,1,"Lendo:              ");   // Escreve na segunda linha do LCD
      uiValor = EEPROM_Read(uiContador);     // Le valor gravado na EEProm
      WordToHex(uiValor, txt);               // Converte numero para texto
      Lcd_Out(2,14,txt);                     // Escreve no LCD
      Delay_ms(1000);                        // Aguarda 1 Segundo
      uiContador++;                          // Incrementa variavel contador
   }//fim do while
}//fim do main



[/section]

[/sections]

[error]

DESAFIO:

Tem um erro nesse programa, quem descobrir coloque nos comentários o erro e a possível solução. [/error]
Obrigado e até o próximo post.

DATEK Tecnologia Eletrônica
[PIC][MIKROC][PROTEUS] Gravação da EEPROM Interna
Tags:                     

Deixe uma resposta

%d blogueiros gostam disto: