
Y aca va el programa:
Device = 16F877A
Xtal = 20
'BUS I2C *****************************************************************************
Declare SDA_Pin PORTC.4 'DECLARO CUALES PINES DEL PIC VAN A SER
Declare SCL_Pin PORTC.3 'SDA Y SCL CON UN BUS DE MENOS DE 8 MHZ
Declare Slow_Bus 1
'NUESTRAS VARIABLES DE TRABAJO *********************************************************
Symbol BB2 = %00000010 'BAND-SWITCH BYTE EN VHF BANDA ALTA
Symbol ADBW = %11000010 'ADRESS BYTE (TERMINA EN CERO = ESCRIBIREMOS FRECUENCIA EN EL SINTO)
Symbol CB = %11001110 'CONTROL BYTE(MODO NORMAL /AVANZAMOS POR PASOS DE 62.5 KHZ)
Symbol DIVIDER1 = %00001110 'DIVIDO POR 3632 PARA QUE EL OSCILADOR LOCAL QUEDE EN 227 MHZ
Symbol DIVIDER2 = %00110000 'ASI 181.25 MHZ + 45.75 MHZ = 227 MHZ (SINTONIZO CANAL 8)
Clear 'LIMPIO LA RAM AL INICIAR
DelayMS 300
Repeat
BStart 'INICIO EL CONTACTO I2C
BusOut ADBW 'ENVÍO EL BYTE DE ADDRESS PARA ESCRIBIR EN EL SINTO
BusOut DIVIDER1 'ENVÍO EL PRIMER BYTE DEL DIVISOR PROGRAMABLE (DIVIDER1)
BusOut DIVIDER2 'ENVÍO EL SEGUNDO BYTE DEL DIVISOR PROGRAMABLE (DIVIDER2)
BusOut CB 'ENVÍO EL CONTROL BYTE
BusOut BB2 'ENVÍO EL BAND-SWITCH BYTE (VHFH)
BStop 'TERMINO EL CONTACTO I2C
DelayMS 300
Until 1
-------------------------------------------------------------------------------------------------------
Estoy errando en la programacion? O tendre algun problema en el PIC? Deberia ser una cosa sencilla de programar y sin embargo me trae varios problemas