codigo de barras

Olá pessoal,
Estou desenvolvendo um leitor de codigo de barras, mas estou com uma dificuldade em pegar o valor das barras, estou fazendo assim:
Quando muda de nivel o sinal eu gero uma interrupcao externa e comeco a contar o tempo ate que gere uma nova interrupcao, ai eu consigo saber se tenho uma barra ou duas barras.
Mas nao esta dando muito certo o tempo é muito variavel e nao consigo ter precisao, alguem tem alguma dica?
Obrigado.
Estou desenvolvendo um leitor de codigo de barras, mas estou com uma dificuldade em pegar o valor das barras, estou fazendo assim:
Quando muda de nivel o sinal eu gero uma interrupcao externa e comeco a contar o tempo ate que gere uma nova interrupcao, ai eu consigo saber se tenho uma barra ou duas barras.
Mas nao esta dando muito certo o tempo é muito variavel e nao consigo ter precisao, alguem tem alguma dica?
Obrigado.