C-18 EEPROM

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

C-18 EEPROM

Mensagempor roquetti » 18 Dez 2009 07:21

Pessoall,
Bom dia,
Eu comprei o livro " Microcontroladores PIC18 - linguagem C - C18" autor Alberto Noboru Miyadaira, editora érica, é bom o livro, mas tem pouca informação sobre o uso da EEPROM, alguém tem alguma apostila ou algum programa em C18 usando EEPROM que poderia me enviar?
pauloroquetti@yahoo.com.br
Obrigado.

EEPROM interna.
roquetti
Byte
 
Mensagens: 183
Registrado em: 27 Dez 2008 23:07
Localização: Jaguariúna - SP

Mensagempor Djalma Toledo Rodrigues » 18 Dez 2009 07:55

É bom o livro

Apenas bom, bom e caro. Poderia e deveria ser muito melhor.

--------------
O duro dos Livros Técnicos nacionais é a " Dedicatória":
Os caras dedicam os livros a pais, mulher, noiva, filhos, o c*****

Teve um colocou até esta pérola: "Também o menorzinho que se não ajudou também não atrapalhou"

" E eu com isso! "
(Robô ED)

Pois é, foi isso que o Robô ED me disse quando fui provoca-lo.

E eu com isso!

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor roquetti » 18 Dez 2009 08:15

Djalma Toledo Rodrigues escreveu:É bom o livro

Apenas bom, bom e caro. Poderia e deveria ser muito melhor.

--------------
O duro dos Livros Técnicos nacionais é a " Dedicatória":
Os caras dedicam os livros a pais, mulher, noiva, filhos, o c*****

Teve um colocou até esta pérola: "Também o menorzinho que se não ajudou também não atrapalhou"

" E eu com isso! "
(Robô ED)

Pois é, foi isso que o Robô ED me disse quando fui provoca-lo.

E eu com isso!

DJ


tem um capítulo completo sobre o uso do uC com memória SD, ainda não cheguei nesta parte mas pretendo usar esta parte, e tem um capítulo sobre usb parece ser completo, quanto as dedicatórias deve ser por influência dos italianos no Brasil, tudo gira em torno da mama, heheheheh.
roquetti
Byte
 
Mensagens: 183
Registrado em: 27 Dez 2008 23:07
Localização: Jaguariúna - SP

Re: C-18 EEPROM

Mensagempor e.guerreiro » 18 Dez 2009 10:36

roquetti escreveu:Pessoall,
Bom dia,
Eu comprei o livro " Microcontroladores PIC18 - linguagem C - C18" autor Alberto Noboru Miyadaira, editora érica, é bom o livro, mas tem pouca informação sobre o uso da EEPROM, alguém tem alguma apostila ou algum programa em C18 usando EEPROM que poderia me enviar?
pauloroquetti@yahoo.com.br
Obrigado.

EEPROM interna.


Roquetti,

Procure na pasta do C18 "C:\MCC18\h" o arquivo "EEP.h"

Abra o arquivo e veja quais as funções deve utilizar para ler e gravar na eeprom interna.


Falow
e.guerreiro
Bit
 
Mensagens: 6
Registrado em: 17 Abr 2007 10:35

Re: C-18 EEPROM

Mensagempor roquetti » 18 Dez 2009 11:55

e.guerreiro escreveu:
roquetti escreveu:Pessoall,
Bom dia,
Eu comprei o livro " Microcontroladores PIC18 - linguagem C - C18" autor Alberto Noboru Miyadaira, editora érica, é bom o livro, mas tem pouca informação sobre o uso da EEPROM, alguém tem alguma apostila ou algum programa em C18 usando EEPROM que poderia me enviar?
pauloroquetti@yahoo.com.br
Obrigado.

EEPROM interna.


Roquetti,

Procure na pasta do C18 "C:\MCC18\h" o arquivo "EEP.h"

Abra o arquivo e veja quais as funções deve utilizar para ler e gravar na eeprom interna.


Falow



Só tem isto:

#ifndef __EEP_H
#define __EEP_H
/******************************************************************************
// * EEPROM PERIPHERAL LIBRARY HEADER FILE
******************************************************************************
* FileName: EEP.h
* Dependencies: See include below
* Processor: PIC18
* Compiler: MCC18
* Company: Microchip Technology, Inc.
*
* Software License Agreement
* The software supplied herewith by Microchip Technology Incorporated
* (the “Company”) for its PICmicro® Microcontroller is intended and
* supplied to you, the Company’s customer, for use solely and
* exclusively on Microchip PICmicro Microcontroller products. The
* software is owned by the Company and/or its supplier, and is
* protected under applicable copyright laws. All rights are reserved.
* Any use in violation of the foregoing restrictions may subject the
* user to criminal sanctions under applicable laws, as well as to
* civil liability for the breach of the terms and conditions of this
* license.
*
* THIS SOFTWARE IS PROVIDED IN AN “AS IS” CONDITION. NO WARRANTIES,
* WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED
* TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
* PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. THE COMPANY SHALL NOT,
* IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL OR
* CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
*****************************************************************************/
#include <pconfig.h>

/* FUNCTION PROTOTYPES */
#if defined (EEP_V1) || defined (EEP_V2) || defined (EEP_V3)

void Busy_eep ( void );
unsigned char Read_b_eep( unsigned int badd );
void Write_b_eep( unsigned int badd, unsigned char bdata );

#endif


#endif
roquetti
Byte
 
Mensagens: 183
Registrado em: 27 Dez 2008 23:07
Localização: Jaguariúna - SP

Mensagempor Djalma Toledo Rodrigues » 18 Dez 2009 12:11

Dowload PIC18 da Érica
Descompacta e salva em C: (rais)

Parcial :

Código: Selecionar todos
{
   unsigned char cont_dado_escrito;
   
   EEADR  = endereco_reg; // Carrega o endereço da célula da memória EEPROM.
   
   for (cont_dado_escrito=0 ; cont_dado_escrito<quant_dado_escreve ; cont_dado_escrito++)
   {
   //Carrega o byte do buffer, para o registro de dado da memória EEPROM.
   EEDATA = dados_EEPROM [cont_dado_escrito];
   
   EECON1bits.EEPGD = 0;   //Seleciona a memória EEPROM.
   EECON1bits.CFGS = 0;    //Acesso a memória EEPROM.
   EECON1bits.WREN = 1;    //Habilita a escrita na memória.
   INTCONbits.GIE = 0;       //Desabilita as interrupções.
   EECON2 = 0x55;           //Carrega o valor 0x55 no registrador EECON2. (sequência obrigatória)
   EECON2 = 0xAA;           //Carrega o valor 0xAA no registrador EECON2. (sequência obrigatório)
   EECON1bits.WR = 1;       //Inicia o ciclo de escrita na memória EEPROM.

   while(EECON1bits.WR); //Aguarda a finalização da operação de escrita.

   INTCONbits.GIE = 1;    //Habilita as interrupções.
   EECON1bits.WREN = 0; //Desabilita a escrita na memória.
   
   if (EECON1bits.WRERR)
      return 1; //Operação terminada prematuramente.
   
   EEADR++;//Incrementa o endereço apontado.
   }
   return 0; //Operação concluída
}




unsigned char le_mem_EEPROM( unsigned char endereco_reg )
{
   EEADR = endereco_reg;   //Carrega o endereço da célula da memória EEPROM.
   EECON1bits.EEPGD = 0;   //Seleciona a memória EEPROM.
   EECON1bits.CFGS = 0;   //Acesso à memória EEPROM.
   EECON1bits.RD = 1;      //Inicia o ciclo de leitura da memória EEPROM.
   return EEDATA;           //Retorna o conteúdo da memória EEPROM.
}



DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor roquetti » 18 Dez 2009 12:19

Djalma Toledo Rodrigues escreveu:Dowload PIC18 da Érica
Descompacta e salva C: (rais)

Parcial :

Código: Selecionar todos
{
   unsigned char cont_dado_escrito;
   
   EEADR  = endereco_reg; // Carrega o endereço da célula da memória EEPROM.
   
   for (cont_dado_escrito=0 ; cont_dado_escrito<quant_dado_escreve ; cont_dado_escrito++)
   {
   //Carrega o byte do buffer, para o registro de dado da memória EEPROM.
   EEDATA = dados_EEPROM [cont_dado_escrito];
   
   EECON1bits.EEPGD = 0;   //Seleciona a memória EEPROM.
   EECON1bits.CFGS = 0;    //Acesso a memória EEPROM.
   EECON1bits.WREN = 1;    //Habilita a escrita na memória.
   INTCONbits.GIE = 0;       //Desabilita as interrupções.
   EECON2 = 0x55;           //Carrega o valor 0x55 no registrador EECON2. (sequência obrigatória)
   EECON2 = 0xAA;           //Carrega o valor 0xAA no registrador EECON2. (sequência obrigatório)
   EECON1bits.WR = 1;       //Inicia o ciclo de escrita na memória EEPROM.

   while(EECON1bits.WR); //Aguarda a finalização da operação de escrita.

   INTCONbits.GIE = 1;    //Habilita as interrupções.
   EECON1bits.WREN = 0; //Desabilita a escrita na memória.
   
   if (EECON1bits.WRERR)
      return 1; //Operação terminada prematuramente.
   
   EEADR++;//Incrementa o endereço apontado.
   }
   return 0; //Operação concluída
}




unsigned char le_mem_EEPROM( unsigned char endereco_reg )
{
   EEADR = endereco_reg;   //Carrega o endereço da célula da memória EEPROM.
   EECON1bits.EEPGD = 0;   //Seleciona a memória EEPROM.
   EECON1bits.CFGS = 0;   //Acesso à memória EEPROM.
   EECON1bits.RD = 1;      //Inicia o ciclo de leitura da memória EEPROM.
   return EEDATA;           //Retorna o conteúdo da memória EEPROM.
}



DJ




Faltou esta linha:

unsigned char escreve_mem_EEPROM(unsigned char endereco_reg, unsigned char *dados_EEPROM, unsigned char quant_dado_escreve)

bem...vou tentar fazer o que eu preciso com esta função, valeu, obrigado.
roquetti
Byte
 
Mensagens: 183
Registrado em: 27 Dez 2008 23:07
Localização: Jaguariúna - SP

Mensagempor e.guerreiro » 21 Dez 2009 08:52

Roquetti,


C:\MCC18\src\pmc_common\EEP


Nesta pasta estao os arquivos ".C"

É só incluir o EEP.h e usar as funções de leitura e escrita na EEPROM.


Falow
e.guerreiro
Bit
 
Mensagens: 6
Registrado em: 17 Abr 2007 10:35


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron

x