TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: underwol2 en 11 de Febrero de 2010, 18:33:03
-
lo que quiero hacer es que con el pic16f84a pueda manejar varios leds con diferentes funciones
1) que encienda un led fijo en el pin rbo
2) un led intermitente en el rb1
3) leds con efecto en otros pines
en lenguaje C que lo pueda ejecutar con el CCS
en fin es poder manipular las salidas del pic con diferentes funciones
en salle uno pero cuando intente mezclar las dos funciones error
tendrá algun código con estas funciones que me lo pudieran facilitar para seguir practicando con los pic
el orden de de los pines no es importante solo es para practicar y aprender
-
Hola underwol2:
Puede fallar porque estarás usando delays, con lo que paras el micro por completo y con ello todos las salidas...sin el código es dificil decirte que es lo que te está fallando. La mejor manera de realizarlo es usando un temporizador para dar así diferentes parpadeos a los led.
Un saludete.
-
hola gracias por la respuesta el interés mio es poder utilizar los puertos con funciones diferentes y como todo principian te comienza con hacer encender leds ya e estado averiguando barios datos sobre pic como cambiar de puerto hacer titilar un led o varios led alavés pero quiero tener una mejor idea con respecto a este tema mi pregunta es practicamente como poner leds con funciones diferentes no interesa el pin solo era una idea de como colocarlos
gracias por las respuestas
-
hola a todos los que se interesaron en mi tema encontré guardado una carpeta con muchos ejemplos para pic 16f84 que utilizan librería.inc que me a facilitado las cosas de aprendizaje sobretodo cuando es uno novato en el tema de los pic
gracias por el interés en el tema :-/
-
Saludos underwol2
Creo que si quieres aprender verdaderamente deberias hacer los programas en el ensambaldor la verdad trabajr con el 16F84 para iniciar es muy buena elección pero creo que deberias meterte con la máquina y no simular y simular si no también programar un poco y observar como trabaja la máquina utilizando las ayudas por ejemplo el MPLAB el simulador PROTEUS etc.
-
hola en eso estoy asiendo practica con los ejercisios todos en ensamble asm que en contre guardados en una carpeta que tenia ase tiempo pero como no entendía la eche al olvido ahora comprendo algo mas sobre los pic y cuando la mire de nuevo mire varias oportunidades de practicar tiene librerías .inc así que los códigos del programa son bien cortos y mas fácil de en tender en el momento sigo con el tema de asignar funciones diferentes alos puertos rb
elogrado asignar 4 funciones diferentes con leds en el mismo pic aun tengo algunas dudas como coloque dos salidas diferentes con el mismo tiempo de retardo y no en parejan apaga una primero
en fin asido un adelanto significativo para mi en estos dias de lucha incansable con los pic 16f84a
gracias por responder :-/
-
¿Cómo es eso de que no emparejan? Quizá pueda ser porque activas primero una y luego otra...
una forma de hacer que enciendan al mismo tiempo sería algo así
; supongamos que queremos encender (llevar a 1) el bit 7 y el bit 0
movlw b'10000001' ; pongo en 1 los bits que quiero encender
iorwf portb
Siempre y cuando quieras practicarlo en asm
para hacerlo en ccs yo haría algo así...
#byte PuertoB = 0x6 // a la variable PuertoB le asigno la dirección del PORTB
luego, dentro del bucle del programa, haría
PuertoB |= 0b10000001 // la salida del puerto va a pasar a tener los bits 7 y 0 en alto y el resto permanecerá como estaba.
El utilizar "|=" es hacer un "or" entre el valor que ya tenía la variable (en este caso PuertoB, que se corresponde al PORTB) y el valor especificado a la derecha del "|="
-
hola gracias por la respuesta la voy a poner en practica haber como me va y te comento
para mi es importante lograr combinar diferentes funciones en los puertos rb de salida del pic esta para poder asignar funciones diferentes para activación de conmuta dores
y otros sistemas electronicos
sabes si se puede con un pic hacer un especie de potencio metro o en pocas palabras un control de volumen que aumente y disminuya el volumen si ocupar tantas salidas
grasias
-
Para dar una mejor ayuda, tendrías que especificar un poco más y/o mejor que es lo que tratás de hacer.
Si estás usando delays se complica un poco más porque no podés hacer nada hasta que pase el delay. En realidad, esto no es tan cierto, pero depende de como estés implementando las funcione.
Microchip tiene una línea de potenciometros digitales integrados que se controlan via protocolo serie I2C o SPI. Después busco y te paso si encuentro algo
-
hola AngelGris en el momento solo es practica no tengo un objetivo solo practicar y mirar fallo y error haber que puedo aprender esas practicas
en cuanto a mi pregunta de los potencio metros me interesa por el objetivo de poder utilizar el pic para regular voltaje por medio de otros componentes electrónicos
y otras funciones que incluye la misma función, como control de volumen la pregunta es que mire unas fuentes reguladas con pic en Internet
pero de tomas maneras me gustaría hacer fuentes reguladas con el pic ya que e tenido que usar potenciometros para regular el voltaje de las fuentes y de todo lo que requiera esa misma función
ejemplo para controlar un voltaje debe haber una variación de voltios
ejemplo
1v,2v,3v,4v,5v,6v,7v,8v,9v,10v,11v,12v
si miras el ejemplo ,el pic tendría que hacer una variación como la del ejemplo pero el pic sale 0v 05v tendria que utilizar otro método como amplificador operacional o controlar por medio de frecuencia bueno esa es la idea
similar a un control de volumen que convierte movimiento mecánico y lo convierte a variaciones eléctricas como el del ejemplo
de esta forma puedo controlar no solo una fuente regulada sino también otros circuitos que requieran variaciones eléctricas para que funcionen
pero lo que no se es si el pic pueda hacer esta función llaque no encontrado ningún ejemplo sencillo de algo parecido con el pic como potenciometro
-
Este es el link de microchip de los potes digitales http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=11026&mid=11&lang=en&pageId=79
También podés buscar AD5220, AD5241, AD5242 y otros mas que no recuerdo que son potes digitales y están en el Proteus 7.6 por lo tanto vas a poder simular su utilización también.
-
Hola creo que lo mejor seria que trabajaras con otro pic que tenga entradas analógicas como el 18F2550
-
el link es del 2010, no se si siga activo :?