TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: bahiarca en 29 de Octubre de 2012, 00:18:57
-
Hola como el titulo dice tengo algunas dudas sobre programacion de pics algunas de ellas son con el 4550
1. Me paso con los 4550 y los 12F675, es que configuro el serial en el pic al 9600 y en la computadora para que ande bien tengo que setearla en la velocidad q esta en el pic/4 osea para 9600 en la pc le tengo que poner 2400, si lo seteo en 38400 en la pc le tengo que poner 9600...
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8) asi lo programe en un 4550
2. Puedo estar transmitiendo todo el tiempo por serial? osea dentro del WHILE principal??? por que si lo hago me ree alerda el micro
-
imagino que la frec del delay la tienes a la velocidad de la cpu, si estas usando PLL debes configurar esa velocidad en el #use delay(), ya que la rutina del rs232 va de la mano con los delays, si no configurar bien la velocidad pasa eso que no trabaja como quieres el pic.
verifica que no usas PLL o divisor de frecuencia.
Saludos!
-
Asi lo tengo configurado...
#include <18F4550.h>
#device adc=10
#FUSES NOWDT //No Watch Dog Timer
#FUSES WDT128 //Watch Dog Timer uses 1:128 Postscale
#FUSES HS //Internal Oscillator, HS used by USB
#FUSES NOPROTECT //Code not protected from reading
#FUSES BROWNOUT //Reset when brownout detected
#FUSES BORV43 //Brownout reset at 4.3V
#FUSES PUT //Power Up Timer
#FUSES NOCPD //No EE protection
#FUSES STVREN //Stack full/underflow will cause reset
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOWRT //Program memory not write protected
#FUSES NOWRTD //Data EEPROM not write protected
#FUSES IESO //Internal External Switch Over mode enabled
#FUSES FCMEN //Fail-safe clock monitor enabled
#FUSES NOPBADEN //PORTB pins are configured as digital I/O on RESET
#FUSES NOWRTC //configuration not registers write protected
#FUSES NOWRTB //Boot block not write protected
#FUSES NOEBTR //Memory not protected from table reads
#FUSES NOEBTRB //Boot block not protected from table reads
#FUSES NOCPB //No Boot Block code protection
#FUSES MCLR //Master Clear pin enabled
#FUSES LPT1OSC //Timer1 configured for low-power operation
#FUSES NOXINST //Extended set extension and Indexed Addressing mode disabled (Legacy mode)
#FUSES PLL1 //No PLL PreScaler
#FUSES CCP2B3 //MultiPlex pwmI
#use delay(clock=20000000) // Oscilador a 8Mhz
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8) // Configuracion del SERIAL
-
#use delay(clock=20000000) // Oscilador a 8Mhz
lo tienes puesto a 20Mhz, ponle 8000000
-
#use delay(clock=20000000) // Oscilador a 8Mhz
lo tienes puesto a 20Mhz, ponle 8000000
No eso pasa que era antes y deje el comentario asi.
-
¿Entonces le tienes puesto un cristal de 20mhz no?
-
¿Entonces le tienes puesto un cristal de 20mhz no?
Claro