si intentais hacer la simulacion de la grafica con la barra spacio, marca la señal dmx standar a 0, si se hace con el primer togle activado, verereis que la grafica marca el primer canal con toda claridad y si lo ejecutais con el segundo (rb1), marca el segundo canal tambien con claridad el la sonda (U2R0) luego el 16f84 saca lo correcto creo que el fallo esta en el 16f876 (ni se os ocurra pensar que estoy intentando enseñaros seria una gran temeridad ya que yo soy nulo en esto) teneis algun consejo para la implementacion de los displays y los 2 pulsadores, lo tengo medio solucionado pero ma da un gran retraso en global no lo veo factible e incluir esto en el main, sinceramente me parece extremadamente cutre y falta afinarlo.
#include <16f876.h>
//#fuses XT,NOWDT,NOPROTECT,PUT,NOLVP
#use delay (clock=4000000)
#use standard_io(B)
#use standard_io(A)
void main(void)
{
signed int uni=0,dec=0,cen=0;
int tab[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x67};
int max;
set_tris_b(0x00);
for(;

{
max=(uni+(dec*10)+(cen*100));
if(input(PIN_A3))
{
uni++;
if(uni>9){
uni=0;
dec++;
}
if(dec>9){
dec=0;
cen++;
}
if(cen>5){
cen=0; }
if(max>512){
uni=1;
dec=0;
cen=0;}
}
if(input(PIN_A4))
{
uni--;
if(uni<0){
uni=9;
dec--;
}
if(dec<0){
dec=9;
cen--;
}
if(cen<0){
cen=9;
}
if(max>512){
uni=1;
dec=0;
cen=0;}
}
output_high(PIN_A0);
output_high(PIN_A1);
output_low(PIN_A2);
output_b(tab[ uni ]);
delay_ms(10);
output_high(PIN_A0);
output_low(PIN_A1);
output_high(PIN_A2);
output_b(tab[ dec ]);
delay_ms(10);
output_low(PIN_A0);
output_high(PIN_A1);
output_high(PIN_A2);
output_b(tab[ cen ]);
delay_ms(10);
}
}