Quiero duplicar las salidas y entradas en este codigo para AVR

Hola tengo este codigo que funciona correctamente pero con una sola entrada y una sola salida.
http://pastebin.com/cnCnQkv5
Esta escrito para Attiny13 pero para duplicarlo tengo que pasarlo a Attiny85 porque se queda al 99,6% full la memoria.


Mi intencion es tener dos entradas y dos salidas en el mismo micro que tengan la misma funcion.
Este es mi intento de duplicar http://pastebin.com/Wg67Egxy pero no funciona se activa el primer modo al activar la entrada y no sale de ahi. No tengo mucha idea de C pero medio medio voy entendiendolo.

Alguien que domine de AVR's ??

Un saludo.
 
Hola, para más sencillo es menor que aclares que hace el programa en sí para así ver la forma de optimizarlo y ajustarlo a las dos salidas y entradas que requieres.

Saludos
 
Cierto es, bueno explicacion al canto. Este micro controla un par de power leds de 10W con por ahora 8 AMC7135 en paralelo para regular corriente aplicandole la salida pwm del micro.

Cuando alimentamos el circuito este envia un pulso a las salidas para avisar de la conexion ( BLINK_ON_POWER), y se coloca en el primer modo del listado (MODES). Al realizar una pulsacion corta se avanza un modo, asi sucesivamente sin pasar por el modo 0. Dependiendo que modo este activo el PWM es FAST o PHASE.

Cuando la pulsacion es larga si esta en un modo distinto de 0 se apaga, y se enciende en el modo FULL_MODE, si esta en modo 0.

Cuando no hay pulsaciones el micro entra en sleep y una pulsacion lo despierta.

Mediante el divisor de tension que hay montado en el pin PB2 monitorea el voltaje y si es bajo reduce un modo y si es critico pone modo 0.

Este es un esquema del montaje.


Un saludo.
 
Hola
el diodo creo que lo utilizas para programar directamente en el circuito, no estoy seguro.

Normalmente la alimentacion del micro y la de los drivers vienen separadas, es lo recomendable, no es muy seguro estar sensando la alimentacion del micro ya que esta debe ser estable pero de poca corriente 40mA o por ahi.
Al parecer quieres añadir PB0 PWM pero quieres que trabaje igual a PB1 PWM?
Viste el data del micro para que trabajes con dos PWM?

si quieres que trabaje igual al PB1 ,no podrias añadir más salidas en paralelo? si tienes problemas de corriente es por que no tienes fuentes separadas lo que comente, lo demas seria recalcular valores para sensar en el divisor de corriente que debe ir a la fuente del driver de los leds.

No olvides que proteus es una herramienta muy util para simular los micros, debes poder ver la salida PWM sin ningun problema si todo esta bien. Cuenta con el micro attiny85 y el attiny13.

Salu2
 
Última edición:
Bueno ericksm te explico mejor.

El diodo es un shottky se usa para proteger contra inversion de polaridad el micro, el circuito esta alimentado por baterias de li-ion de 3,7v.

Quiero que PB0 haga lo mismo que en el primer codigo hace PB1 pero no simultaneamente vamos que quiero poder controlar cada led de manera independiente con su correspondiente pulsador.

En proteus lo intenté simular pero sin muy buenos resultados pero aun asi tengo el hardware necesario para probarlo.

UN saludo.
 
Esto hace el codigo con una salida configurada nada mas. Lo que quiero es añadirle un pulsador mas conectado en PB4 y un led mas en PB0

Este video lo muestra.



Un saludo.
 
Segun se puede apreciar lo que buscas es setear mediante el pulsador el valor del PWM a 10%, 30%, 60%, 100% y luego a 0% para volver a comenzar el ciclo. Con dos pulsadores y dos salidas.

En el codigo parece haber más cosas, pero los comentarios estan en ingles, siendo este un foro de habla hispana, si buscas ayuda te hubieras tomado la molestia de cambiar los comentarios para poder recibir ayuda oportuna.
pero si es como lo que comente al principio, todo seria más simple.

Salu2
 
Última edición:
Ericksim estamos en el 2015 yo creo que 2 terminos en ingles no es impedimento para alguien que sepa programar en codigo C orientado a microcontroladores AVR. Tampoco es molestia para mi cambiarlo pero confio en la inteligencia de los foreros y no doy por hecho que solo saben español.
 
Atrás
Arriba