Autor Tema: Ayuda con PIC18F2685 y BUS CAN  (Leído 3191 veces)

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

Desconectado patagoma

  • PIC10
  • *
  • Mensajes: 2
Ayuda con PIC18F2685 y BUS CAN
« en: 06 de Mayo de 2009, 04:38:38 »
Muy buenas a dotos!
Soy un estudiante de 2do de ingenieria informatica, y mi conocimiento sobre pics y sobre el BUS CAN es muy limitada, por no decir nula.
La cuestion es que nos han mandado un trabajo que consiste en enviar una trama a traves del BUS CAN, utilizando el PIC18F2685.
Hasta ahora, aunque lo utilizasemos muy poco, habiamos estado utilizando el PIC16F876. Por lo que al cambiarnos de PIC estoy totalmente perdido. He estado buscando por internet, y lo unico que he encontrado sobre este pic es su datasheet, del cual pese a que mi nivel de ingles es medio-avanzado, no entiendo la mayoria de lo que pone.
El profesor, pese a haberle dicho que no encontramos informacion, ni de como configurar ni el pic ni el programador, sigue empeñado en que si la hay. El programa que quiere que utilizemos es el Winpic800, ya que han pedido programadores de la misma pagina. Aparte nos comento que deberiamos de hacer una placa aparte, pero su finalidad, la desconocemos.

Alguien que supiese sobre este tema, me podria ayudar con algo, sobre todo con la parte del pic??
Muchisimas gracias!

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4923
Re: Ayuda con PIC18F2685 y BUS CAN
« Respuesta #1 en: 06 de Mayo de 2009, 04:56:08 »
Hola Petagoma y Bienvenido a nuestros Foros Todopic !
Cuando desee informacion de algo por favor usa el buscador del Foro aqui nuestros amigo MGLSOFT  http://www.todopic.com.ar/foros/index.php?topic=19182.0
hizo un proyecto.
muchas suerte


Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7918
Re: Ayuda con PIC18F2685 y BUS CAN
« Respuesta #2 en: 06 de Mayo de 2009, 09:26:04 »
Hola Patagoma, bienvenido al Foro!!
Ante todo te pediria que pongas aqui que programador utilizas, ya que WinPic800 es el software que maneja ese programador y por mas que lo actualizes a su ultima version, es posible que tu programador no pueda grabar ese micro.
En caso que uses ese nuevo PIC, te recomiendo usar lenguaje C, ya que el Core de ese micro esta optimizado para C.

Tambien podrias seguir con el PIC16F876 que estas acostumbrado a usar, asociandolo con el MCP2515, que es un controlador CAN externo y se comunica por SPI con el micro.
Esto permite usar un micro sin CAN incorporado en el BUS CAN.

La ventaja adicional de la serie 18F es que tiene ECAN (Enhanced CAN) y eso permite utilizarlo con protocolos de redes industriales como CanOpen o DeviceNet.

Si precisas mas informacion date una vuelta por el tema Proyectos > Mis experiencias con el Bus CAN.
Alli hay muchisima informacion al respecto... :mrgreen:
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado patagoma

  • PIC10
  • *
  • Mensajes: 2
Re: Ayuda con PIC18F2685 y BUS CAN
« Respuesta #3 en: 10 de Mayo de 2009, 17:29:32 »
Antes de nada perdon por responder, el viernes tuve examen, y el fin de semana he estado fuera.
Lo primero, muchas gracias a los dos. El buscador si que lo utilice, y me daba como resultado el hilo de ese proyecto, pero al leer los primeros post, no entendia nada, y creo que no lei demasiado. Perdon por ello.

Para MGLSOFT:
El programador es el GTP-USB [plus] que aparece en la misma pagina de Winpic800(y el software imagino que utilizaremos el Winpic800). En un principio iba a llegar a principios de la semana pasada, pero por ahora no tenemos todavia noticias sobre el.
El PIC, por obligacion a de ser el 18F2685, ya que parece que al profesor se le ha metido algo en la cabeza y no hay forma de hacerle cambiar de parecer en ningun aspecto.
Ahora le voy a echar un vistazo mas a fondo al hilo de tu proyecto, haber si encuentro algo que me pueda servir.
Por otro lado, has comentado que se puede programar el pic en C(lo cual no sabia). He hecho una pequeña busqueda y he visto muchos codigos(ninguno hacia lo que necesito, pero puede servir para ver como se programa), pero estos estaban pensados para otros pics de la familia 18F. No se si sera una pregunta tonta, pero en general(salvando detalles) valdria el codigo para el pic que tengo que utilizar??

Muchas gracias!

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7918
Re: Ayuda con PIC18F2685 y BUS CAN
« Respuesta #4 en: 10 de Mayo de 2009, 18:03:28 »
Respecto al GTP USB+, te respondo que si programa tu PIC.
Citar
PIC18F2682/2685/4682/4685

28/40/44-Pin, Enhanced Flash Microcontrollers with
ECAN™ Technology, 10-Bit A/D and nanoWatt Technology

Power-Managed Modes:

• Run: CPU on, peripherals on
• Idle: CPU off, peripherals on
• Sleep: CPU off, peripherals off
• Idle mode currents down to 5.8 µA typical
• Sleep mode currents down to 0.1 µA typical
• Timer1 Oscillator: 1.1 µA, 32 kHz, 2V
• Watchdog Timer: 2.1 µA
• Two-Speed Oscillator Start-up

Flexible Oscillator Structure:

• Four Crystal modes, up to 40 MHz
• 4x Phase Lock Loop (PLL) – available for crystal
  and internal oscillators
• Two External RC modes, up to 4 MHz
• Two External Clock modes, up to 40 MHz
• Internal Oscillator Block:
  - 8 user-selectable frequencies, from 31 kHz to 8 MHz
  - Provides a complete range of clock speeds,
    from 31 kHz to 32 MHz when used with PLL
  - User-tunable to compensate for frequency drift
• Secondary Oscillator using Timer1 @ 32 kHz
• Fail-Safe Clock Monitor
   - Allows for safe shutdown if peripheral clock stops

Special Microcontroller Features:

• C compiler Optimized Architecture with optional
  Extended Instruction Set
• 100,000 Erase/Write Cycle Enhanced Flash
  Program Memory typical
• 1,000,000 Erase/Write Cycle Data EEPROM 
  Memory typical
• Flash/Data EEPROM Retention: > 40 years
• Self-Programmable under Software Control
• Priority Levels for Interrupts
• 8 x 8 Single-Cycle Hardware Multiplier
• Extended Watchdog Timer (WDT):
   - Programmable period from 41 ms to 131s
• Single-Supply 5V In-Circuit Serial
  Programming™ (ICSP™) via two pins
• In-Circuit Debug (ICD) via two pins
• Wide operating voltage range: 2.0V to 5.5V

Peripheral Highlights:

• High-Current Sink/source 25 mA/25 mA
• Three External Interrupts
• One Capture/Compare/PWM (CCP1) module
• Enhanced Capture/Compare/PWM (ECCP1) module
  (40/44-pin devices only):
  - One, two or four PWM outputs
  - Selectable polarity
  - Programmable dead time
  - Auto-shutdown and auto-restart
• Master Synchronous Serial Port (MSSP) module
  supporting 3-Wire SPI (all 4 modes) and I2C™
  Master and Slave modes
• Enhanced Addressable USART module:
  - Supports RS-485, RS-232 and LIN 1.3
  - RS-232 operation using internal oscillator
    block (no external crystal required)
  - Auto-wake-up on Start bit
  - Auto-Baud Detect
• 10-Bit, up to 11-Channel Analog-to-Digital   
  Converter module (A/D), up to 100 ksps:
  - Auto-acquisition capability
  - Conversion available during Sleep
• Dual Analog Comparators with Input Multiplexing
   
ECAN Module Features:

• Message bit rates up to 1 Mbps
• Conforms to CAN 2.0B ACTIVE Specification
• Fully Backward Compatible with PIC18XXX8 CAN
  modules
• Three Modes of Operation:
  - Legacy, Enhanced Legacy, FIFO
• Three Dedicated Transmit Buffers with Prioritization
• Two Dedicated Receive Buffers
• Six Programmable Receive/Transmit Buffers
• Three Full, 29-Bit Acceptance Masks
• 16 Full, 29-Bit Acceptance Filters w/Dynamic
  Association
• DeviceNet™ Data Byte Filter Support
• Automatic Remote Frame Handling
• Advanced Error Management Features
  28/40/44-Pin, Enhanced Flash Microcontrollers with
  ECAN™ Technology, 10-Bit A/D and nanoWatt Technology
Esto esta sacado de la ayuda sobre ese Pic en particular, y te puedo asegurar que si esta alli es porque lo programa bien.

Respecto al C, la ventaja es la portabilidad, es decir, realizas un programa y es muy facil portarlo a otro PIC o con minimos cambios a otra plataforma (en mi caso e portado software hecho para un microcontrolador Texas a un PIC18F, con solo 10 cambios en un programa de 1200 lineas de codigo).
Ademas si usas CCS o MikroC podras usar las librerias hechas para usar CAN sin problemas, desarrollando codigo muy rapidamente.
En ese caso te recomiendo empezarf practicando los ejemplos que trae el compilador y luego ir avanzando hacia el objetivo tuyo... :mrgreen: :mrgreen:
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.