Autor Tema: rs485 + MODBUS + PIC 18f252  (Leído 3669 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado gauchosuizo

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 457
rs485 + MODBUS + PIC 18f252
« en: 26 de Mayo de 2004, 06:53:00 »
hola a todos

quien tiene idea del modbus?? Quiero conectar 2 PIC"s, uno como Master y otro como Slave. Para la comuicacion entre ellos, he elegido el protocollo del Modbus, o hay alguien que me pueda recomendar otro??

Estaria muy agradecido por cada informacion que reciba.

Gracias y saludos a todos desde Suiza, Pablo.
Saludos desde Suiza, Pablo.

Desconectado pacalaconcurso

  • PIC24F
  • *****
  • Mensajes: 718
RE: rs485 + MODBUS + PIC 18f252
« Respuesta #1 en: 26 de Mayo de 2004, 17:12:00 »
www.pacalaconcurso.com

busca y encontraras

Desconectado gauchosuizo

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 457
RE: rs485 + MODBUS + PIC 18f252
« Respuesta #2 en: 27 de Mayo de 2004, 06:52:00 »
hola pacala....

gracias por tu respuesta. Ya lo encontre y estoy estudiando el Code. Ese codigo es para un esclavo, yo tengo un esclavo y un maestro. Que debo corregir para que funcione como maestro?

Gracias por tu respuesta y muchos saludos desde Suiza.
Pablo
Saludos desde Suiza, Pablo.

Desconectado pacalaconcurso

  • PIC24F
  • *****
  • Mensajes: 718
RE: rs485 + MODBUS + PIC 18f252
« Respuesta #3 en: 27 de Mayo de 2004, 21:11:00 »
no es complicado...yo lo implemente en VB.NET sin mayor problema...
un buen comienzo es descargar el modbuspoll y ver como son las tramas que envia... si le das un par de vistazos al protocolo te montas el maestro para los comandos de lectura y escritura.

saludos

Desconectado gauchosuizo

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 457
RE: rs485 + MODBUS + PIC 18f252
« Respuesta #4 en: 02 de Junio de 2004, 09:03:00 »
hola pacala

yo trabajo con un XT de 4 MHz y hice el siguiente cambio:
Codigo:

#include <18f252.h>
//#org 0x1F00,0x1FFF {} //espacio  para el bootloader
//#device adc=10
#use delay(clock=4000000)
#fuses XT,NOWDT,NOLVP //Quarz, no Watchdog, no Low Voltage Program
//#fuses NOWDT,WDT128,HS, NOPROTECT, NOOSCSEN, BROWNOUT, BORV20, NOPUT, STVREN, NODEBUG, NOLVP, NOWRT, NOWRTD, NOWRTB, NOWRTC, NOCPD, NOCPB, NOEBTR, NOEBTRB
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8,enable=PIN_C2,errors)
//#use i2c(Master,slow,sda=PIN_C4,scl=PIN_C3,force_hw)





Cuando conecto el PIC a la pc, el programa "modbus pull" me da time out. He logrado que se conectara un par de veces, pero despues me da otra vez time out. Tiene que ver con el xt?? o hay otro problema??

Dado que yo no tengo ninguna eeprom, hice los siguientes cambios:
Codigo:

read_program_eeprom


por
Codigo:

read_ext_eeprom

y
Codigo:

write_program_eeprom


por
Codigo:

write_ext_eeprom



Yo estoy recien empezando con el c, por eso, no se si esto es correcto.

Bueno muchas gracias de antemano y saludos desde Suiza

Pablo
Saludos desde Suiza, Pablo.