quarta-feira, 30 de dezembro de 2009

Código de cores resistências - Programa em C

#include
#include

#define PRETO 0
#define CASTANHO 1
#define VERMELHO 2
#define LARANJA 3
#define AMARELO 4
#define VERDE 5
#define AZUL 6
#define VIOLETA 7
#define CINZENTO 8
#define BRANCO 9

#define PRETO_M 1
#define CASTANHO_M 10
#define VERMELHO_M 100
#define LARANJA_M 1000
#define AMARELO_M 10000
#define VERDE_M 100000
#define AZUL_M 1000000
#define VIOLETA_M 10000000
#define CINZENTO_M 100000000
#define BRANCO_M 1000000000

int main()
{
int x1;
int x2;
int x3;
int y1;
char opcao;

do
{
printf("\n\t*CODIGO DE CORES - RESISTENCIAS*\n\n");
printf("\t11-PRETO\n");
printf("\t22-CASTANHO\n");
printf("\t33-VERMELHO\n");
printf("\t44-LARANJA\n");
printf("\t55-AMARELO\n");
printf("\t66-VERDE\n");
printf("\t77-AZUL\n");
printf("\t88-VIOLETA\n");
printf("\t99-CINZENTO\n");
printf("\t00-BRANCO\n");
printf("\n\tQual e o seu codigo de cores?\n");
do
{
printf("\tPrimeira cor:");
scanf("%d",&x1);
if (x1==11)
y1=(PRETO*10);
if (x1==22)
y1=(CASTANHO*10);
if (x1==33)
y1=(VERMELHO*10);
if (x1==44)
y1=(LARANJA*10);
if (x1==55)
y1=(AMARELO*10);
if (x1==66)
y1=(VERDE*10);
if (x1==77)
y1=(AZUL*10);
if (x1==88)
y1=(VIOLETA*10);
if (x1==99)
y1=(CINZENTO*10);
if (x1==00)
y1=(BRANCO*10);

}
while (x1!=11 && x1!=22 && x1!=33 && x1!=44 && x1!=55 && x1!=66 && x1!=77 && x1!=88 && x1!=99 && x1!=00);

do
{
printf("\n\tSegunda cor:");
scanf("%d",&x2);

if (x2==11)
y1=(y1+PRETO);
if (x2==22)
y1=(y1+CASTANHO);
if (x2==33)
y1=(y1+VERMELHO);
if (x2==44)
y1=(y1+LARANJA);
if (x2==55)
y1=(y1+AMARELO);
if (x2==66)
y1=(y1+VERDE);
if (x2==77)
y1=(y1+AZUL);
if (x2==88)
y1=(y1+VIOLETA);
if (x2==99)
y1=(y1+CINZENTO);
if (x2==00)
y1=(y1+BRANCO);
}
while (x2!=11 && x2!=22 && x2!=33 && x2!=44 && x2!=55 && x2!=66 && x2!=77 && x2!=88 && x2!=99 && x2!=00);

do
{
printf("\n\tTerceira cor:");
scanf("%d",&x3);

if (x3==11)
y1=(y1*PRETO_M);
if (x3==22)
y1=(y1*CASTANHO_M);
if (x3==33)
y1=(y1*VERMELHO_M);
if (x3==44)
y1=(y1*LARANJA_M);
if (x3==55)
y1=(y1*AMARELO_M);
if (x3==66)
y1=(y1*VERDE_M);
if (x3==77)
y1=(y1*AZUL_M);
if (x3==88)
y1=(y1*VIOLETA_M);
if (x3==99)
y1=(y1*CINZENTO_M);
if (x3==00)
y1=(y1*BRANCO_M);
}
while (x3!=11 && x3!=22 && x3!=33 && x3!=44 && x3!=55 && x3!=66 && x3!=77 && x3!=88 && x3!=99 && x3!=00);


if (y1<1000)
printf("\n\tO valor da Resistencia e %d Ohm(s)",y1);
if (y1>1000 && y1<1000000)
{
y1=(y1/1000);
printf("\n\tO valor da Resistencia e %d KOhm(s)",y1);
}
if (y1>1000000 && y1<1000000000)
{
y1=(y1/100000);
printf("\n\tO valor da Resistencia e %d MOhm(s)",y1);
}

printf("\n\n\tSAIR? S/N");
scanf("%c",&opcao);
scanf("%c",&opcao);
system("cls");
}
while (opcao!='s');

system("PAUSE");
return 0;
}

DOWNLOAD deste programa

Circuito Integrado NE555

O circuito integrado (CI) NE555 é utilizado em circuitos de temporização. No interior do CI estão dois comparadores de tensão, um Flip-Flop, um transístor de descarga e uma rede de três resistências. As resistências ajudam a fixar os níveis de tensão dos comparadores, como são de valor igual, o primeiro comparador é referenciado a 2/3 da tensão Vcc e o comparador inferior é referenciado a 1/3 de Vcc. As saídas dos dois comparadores estão ligadas às entradas do Flip-Flop, que definem se a saída está no estado “Alto” ou “Baixo”.

Importa referir que os níveis de comparação de 1/3 e 2/3 de VCC existem quando o pino 5 não se encontra ligado. As temporizações em qualquer modo de funcionamento são implementadas à custa de uma malha RC externa.

1. GND – corresponde à massa da fonte de alimentação DC.
2. Trigger – efectua um disparo quando a tensão neste pino é
inferior a 1/3 de Vcc, colocando o Flip-Flop num estado “Alto”.
3. Output – corresponde à saída do CI 555.
4. Reset – impede o funcionamento do CI 555 quando este pino
está ligado a GND.
5. Control Voltage – permite modificar os níveis de Threshold e
de Trigger.
6. Threshold - se a tensão neste pino for superior a 2/3 de VCC, a
saída do comparador interno superior fica no estado “Alto”,
activando desta forma a entrada R do Flip-Flop e a saída do 555
fica no nível “Baixo”, activando ainda o transístor de descarga.
7. Discharge – descarrega o condensador da malha RC quando
Output está a um nível “Baixo”.
8 – VCC – Tensão positiva da fonte de alimentação DC.

DOWNLOAD do datasheet deste componente

domingo, 20 de dezembro de 2009