Estou fazendo um programa para controle de porta paralela, mas estou com duvida pra fazer o seguinte.
meu programa tem 8 labels sendo elas:
bt(0),bt(1)...até...bt(7)
quando o byte que corresponde a cada label esta ativado na porta paralela a label fica com o backcolor vermelho e quando não está fica verde.
o envio de bytes é feito da seguinte maneira.. quando a pessoa clica no bt(0) por exemplo acontece isso:
Private Sub bt(0)_Click()
conta = Inp(Val("&H379"))
If bt(0).BackColor = &HFF00& Then
Out Val("&H378"), Val(conta + 1)
bt(0).BackColor = &HFF&
Else
Out Val("&H378"), Val(conta - 1)
bt(0).BackColor = &HFF00&
End If
End Sub
Reparem que eu enviei 1 byte
O valor de cada label é o seguinte?
bt(0)=1 byte
bt(1)=2 byte
bt(2)=4 byte
bt(3)=8 byte
bt(4)=16 byte
bt(5)=32 byte
bt(6)=64 byte
bt(7)=128 byte
por exemplo se eu der um click nas labels bt(0) que vale 1 byte e bt(1) que vale 2 bytes minha resposta conta = Inp(Val("&H379")) seria de 3 bytes e as 2 duas labels estariam com o backcolor vermelho,, agora de eu clicar novamente na bt(0) ele vai pegar a resposta que seria 3 e subtrair por 1 e a resposta que vai ficar 2,, ou seja,, só o bt(1) está ativo ou seja vermelho.
Minha pergunta é o seguinte como fazer no load no formulario uma função que pegue a reposta de quantos bytes estão sendo utilizados e deixe-os com o background vermelho sabendo que a soma de todos os bytes utilizados é 255 e 0 qaundo nenhum esta sendo utilizado.
Pergunta
Roberto Carvalho
Estou fazendo um programa para controle de porta paralela, mas estou com duvida pra fazer o seguinte.
meu programa tem 8 labels sendo elas:
bt(0),bt(1)...até...bt(7)
quando o byte que corresponde a cada label esta ativado na porta paralela a label fica com o backcolor vermelho e quando não está fica verde.
o envio de bytes é feito da seguinte maneira.. quando a pessoa clica no bt(0) por exemplo acontece isso:
Private Sub bt(0)_Click()
conta = Inp(Val("&H379"))
If bt(0).BackColor = &HFF00& Then
Out Val("&H378"), Val(conta + 1)
bt(0).BackColor = &HFF&
Else
Out Val("&H378"), Val(conta - 1)
bt(0).BackColor = &HFF00&
End If
End Sub
Reparem que eu enviei 1 byte
O valor de cada label é o seguinte?
bt(0)=1 byte
bt(1)=2 byte
bt(2)=4 byte
bt(3)=8 byte
bt(4)=16 byte
bt(5)=32 byte
bt(6)=64 byte
bt(7)=128 byte
por exemplo se eu der um click nas labels bt(0) que vale 1 byte e bt(1) que vale 2 bytes minha resposta conta = Inp(Val("&H379")) seria de 3 bytes e as 2 duas labels estariam com o backcolor vermelho,, agora de eu clicar novamente na bt(0) ele vai pegar a resposta que seria 3 e subtrair por 1 e a resposta que vai ficar 2,, ou seja,, só o bt(1) está ativo ou seja vermelho.
Minha pergunta é o seguinte como fazer no load no formulario uma função que pegue a reposta de quantos bytes estão sendo utilizados e deixe-os com o background vermelho sabendo que a soma de todos os bytes utilizados é 255 e 0 qaundo nenhum esta sendo utilizado.
Desde já agradeço.
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.