Imagens de cabeçalho aleatórias... Recarregue a sua página para ver mais!

Picaxe – Controlo de Display de 7 Segmentos

O programa seguinte é um exemplo de como podemos ligar e controlar o funcionamento de um display de sete segmentos a partir de um microcontrolador Picaxe.
Para saber mais sobre os displays de sete segmentos veja o artigo anterior aqui.
. Primeiro apresentamos o esquema de ligação do display de 7 segmentos ao Picaxe.
De notar que usamos o divisor de tensão regulável, à esquerda na imagem, para poder controlar a tensão que entra na entrada 7 (valor analógico) e, deste modo podermos, no programa, controlar o tempo que o display fica aceso em cada número (o programa vai fazer, basicamente, contagens de 0 a 9 (em loop interminável), sendo os valores apresentados no display). Se a tensão que entrar no pino 7 do Picaxe for maior (cursor do potenciómetro mais para cima), o display ficará mais tempo em cada número que consitui a contagem de 0 a 9.
O display usado, neste caso, é de cátodo comum, como podem comprovar na primeira imagem.
. De seguida apresentamos o programa .bas que faz o display funcionar com acima foi referido, tendo ainda uma parte que faz piscar o ponto decimal do display, duas vezes, por cada contagem de 0 a 9 efectuada.
No final do artigo damos o link para descarregar o programa .bas propriamente dito, já pronto a ser corrido no PICAXE Programming Editor (download aqui).
. Depois mostramos uma imagem onde se pode ver quais os segmentos que mandamos, no programa, o display acender, em cada caso (cada número de 0 a 9)
.Finalmente, apresentamos uma imagem do programa a correr (simulação no PICAXE Programming Editor), sendo que, no caso da imagem, o contador se encontra no número 7 (apenas segmentos A, B e C acesos, para formar o dito número).

Dúvidas ou erros, enviar email, sff. Obrigado.

ligarPicaxeaDisplay7SegmentosCatodoComum_3

‘*****************************************************
‘ File Name : setesegmentos.bas
‘ Version : 1.0
‘ Description : PICAXE –> Display de Sete Segmentos
‘*****************************************************

‘ Use PICAXE 28X
#picaxe 28X

‘ Atribuição de Variáveis
symbol cnt = b0
symbol adc_val=b1
symbol seg_dot = 7

let pins = %00000000 ‘ Reset de todos os pinos das Saídas/Outputs

main:
for cnt=0 to 9
readadc 7,adc_val ‘ Lê o valor analógico na porta de entrada 7, para a variável adc_val / b1

gosub disp_val
pause adc_val
next cnt

‘ Limpa Saídas / Outputs
let pins = %00000000 ‘ Limpa/Reset todos os pins de Saídas / Outputs
pause 100

for cnt=0 to 2
high seg_dot
pause adc_val
low seg_dot
pause adc_val
next cnt

goto main ‘ Volta ao Início / main
end

disp_val:
select cnt
case 0
let pins = %00111111 ‘ 0 -> A=1,B=1,C=1,D=1,E=1,F=1,G=0,PONTO=0
case 1
let pins = %00000110 ‘ 1 -> A=0,B=1,C=1,D=0,E=0,F=0,G=0,PONTO=0
case 2
let pins = %01011011 ‘ 2 -> A=1,B=1,C=0,D=1,E=1,F=0,G=1,PONTO=0
case 3
let pins = %01001111 ‘ 3 -> A=1,B=1,C=1,D=1,E=0,F=0,G=1,PONTO=0
case 4
let pins = %01100110 ‘ 4 -> A=0,B=1,C=1,D=0,E=0,F=1,G=1,PONTO=0
case 5
let pins = %01101101 ‘ 5 -> A=1,B=0,C=1,D=1,E=0,F=1,G=1,PONTO=0
case 6
let pins = %01111101 ‘ 6 -> A=1,B=0,C=1,D=1,E=1,F=1,G=1,PONTO=0
case 7
let pins = %00000111 ‘ 7 -> A=1,B=1,C=1,D=0,E=0,F=0,G=0,PONTO=0
case 8
let pins = %01111111 ‘ 8 -> A=1,B=1,C=1,D=1,E=1,F=1,G=1,PONTO=0
case 9
let pins = %01101111 ‘ 9 -> A=1,B=1,C=1,D=1,E=0,F=1,G=1,PONTO=0
endselect
return

‘ EOF: setesegmentos.bas

7segmentos_2

case_7

Descarregar o programa aqui.

Posts Relacionados:

0Shares

0 comentários

Ainda não há comentários...

Mande uns "bitaites" preenchendo o formulário abaixo.

Deixe-nos um comentário