Documente Academic
Documente Profesional
Documente Cultură
SOFTWARE-PIC
RobotyPic son proyectos básicos de electrónica con microcontroladores PIC, de aplicación en el
mundo de la robótica didáctica, con archivos fuente creados mediante el compilador CCS PIC C COMPILER en
lenguajeC.
Para que el PIC comunique con la memoria eeprom, éste debe “conocer” su dirección ( de la memoria) en el bus
I2C. En concreto, para la eeprom empleada en este ejemplo, una M24512, el byte alto de su dirección está
fijado por el fabricante como Ah, mientras que el byte bajo se establece por el usuario según la combinación de
los niveles lógicos de tensión en las patillas E0, E1 y E2 además del bit de lectura-escritura que es el de menor
peso. Como aquí todas las patillas se han llevado a 0V, (combinación lógica: 0 : 0 : 0 : W=0/R =1) el byte bajo
será 0 más el valor del bit de lectura o escritura. Es decir, la dirección I2C de la eeprom será A0h para escribir
en ella y A1h para leer. Elige tu idioma
Suscríbete
Suscribete
¿Te ha gustado?
En los comentarios del programa se puede intuir su funcionamiento.
Si lo deseas puedes añadir un enlace
[+/-] Ver / Ocultar programa completo en C en cualquiera de tus blogs de blogger
con un simple "click".
//////////////////////////////////////////////////////////////////////////////// O bien agregarme a los favoritos de
// // tu explorador de internet.
// LECTURA-ESCRITURA EEPROM CON PIC //
// //
// (c) RobotyPic //
// //
////////////////////////////////////////////////////////////////////////////////
#use fast_io(B)
#define use_portb_lcd TRUE //Configuración puerto b control lcd
#define use_portb_kbd TRUE //Configuración puerto b control teclado
#include <lcd.c> //archivo para control del lcd Síguenos en...
#include <kbd.c> //archivo para control del teclado
/******************************************************************************/
/*********************** FUNCIÓN ESCRITURA EN EEPROM *************************/
Buscar en esta web
void escribir_en_eeprom(long int address, BYTE dato){
L293D
/*****************************************************************************/ MAX232
/*********************** FUNCIÓN LECTURA DE EEPROM ***************************/
LM555
SENSORES
SRF04, SRF05
BYTE lectura_de_eeprom(long int address){
BYTE dato; SRF08
i2c_start(); //Inicio de la transmisión...
TPA81
i2c_write(0xA0); //...con la dirección correspondiente a la eeprom en modo escritura
i2c_write(address>>8); //Envío parte alta dirección SHT10, SHT11, SHT15
i2c_write(address); //Envío parte baja dirección
i2c_start(); //Reinicio... SHT71, SHT75
i2c_write(0xA1); //...con eeprom en modo lectura
GP2Y0D810Z0F
dato=i2c_read(0); //Lectura del dato de la dirección enviada
i2c_stop(); //Fin de la transmisión TSOP1138
return(dato); //La función devuelve el dato leído
SEMICONDUCTORES
TSAL6200
}
PERIFÉRICOS
LCD03
/******************************************************************************/
/************************* PRESENTACIÓN LCD ***********************************/ SP03
EasyVR
lcd_putc("\fIntroduce \n");
lcd_putc("posicion en memo");
}
BÚSQUEDAS
/******************************************************************************/
/******************** FUNCIÓN PRINCIPAL ***************************************/
Software para proyectos
void main(){
Aplicación de software
Patillaje PIC16F876A
CONECTORES
Pines conector USB
Para verificar que el funcionamiento es correcto, tal como se muestra en esta simulación bajo proteus,
primeramente se lee el valor de una posición de memoria. Después se escribe un dato diferente en dicha
posición. Y finalmente se vuelve a leer para verificar que realmente leemos el dato introducido.
El proyecto contenido en el artículo ha sido diseñado y probado con éxito utilizando las siguientes
16F84 0 (0%)
versiones de software:
16F876 0 (0%)
- Windows xp y windows 7
16F877 0 (0%)
- Proteus V7.7 SP2
18F4550 0 (0%)
- CCS PIC C COMPILER v4.084
_________________________________________________________________________________
Ejemplos:
Webs Similares
int entrada = 5; //Declara la variable “entrada” como entero
(8 bits)y valor inicial 5
float resultado; //Declara “resultado” como flotante (32 bits)
y valor inicial 0
En esta tabla se pueden ver todos los tipos de variables que pueden ser empleadas
Además de los tipos definidos por defecto por el compilador CCS, también se pueden definir tipos
estandarizados mediante la directiva #Type:
#Type short=8
#Type int=16
#Type long=32
Serán variables de ámbito LOCAL cuando se emplean sólo en la función en la que son declaradas. De ámbito
GLOBAL cuando se emplean en cualquier función del programa, declaradas antes y fuera de cualquier
función.
directorio de blogs
Ejemplo:
directorio y promoción de blogs
#include <16f876a.h>
Directorio de Blogs
#use delay (clock=4000000)
No hay comentarios:
Publicar un comentario
Instalar Flash
CONTACTA - (Haz referencia del artículo sobre el que trata la consulta o comentario)
Nombre*
Email*
Mensaje*
Veri cation*
Enviar
Report abuse
RobotyPic (c)