Archive For The “Dicas e Hacks” Category
Algumas vezes você precisa de mais do que o que tem. Eeu estou falando sobre os pinos do microcontrolador.
Veja bem: você tem que conectar 6 LEDs mas possui apenas três pinos do microcontrolador disponíveis. Utilizar outro microcontrolador não é sempre uma opção e outros circuitos decodificadores também não.
Agora veja: se você setar o pino um para “1” e o segundo para “0” (deixando o pino 3 no estado de alta impedância, como entrada) então você somente vai acender um LED. Você pode ligar dois leds ao mesmo tempo setando o terceiro pino para o estado “1” ou “0”, dependendo de qual LED adicional você pretende acender.
Se você precisar ligar todos os LEDs ao mesmo tempo, precisará mudar o estado dos pinos em uma freqüência mais alta para evitar a sensação dos LEDs piscando.
Com esse método você pode ligar até doze LEDs com apenas 4 pinos. Este é um método conveniente para ser utilizado com LEDs bicolores, quando dois LEDs são colocados no mesmo encapsulamento, mas em diferentes direções.
Este é um exemplo de código em C para o ARV-GCC de como controlar os LEDs. No exemplo, os LEDs estão conectados na porta B, entre os pinos 0 e 2.
Fragmento da função de controle:
unsigned char leds; // Os bits são os estados dos leds
void LEDs_refresh(void)
{
static unsigned char state; // Taxa de atualização atual
OFF(); // Coloca todos os pinos em alta impedância (entrada)
switch (state)
{
default:
CLR_0(); // Coloca o pino 0 baixo
if (leds & 1) {SET_1();} // Coloca o pino 1 alto para o led 1
if (leds & 2) {SET_2();} // Coloca o pino 2 alto para o led 2
state=1; // próximo estado
break;
case 1:
CLR_1(); // Coloca o pino 0 baixo
if (leds & 4) {SET_0();} // Coloca o pino 0 alto para o led 3
if (leds & 8 ) {SET_2();} // Coloca o pino 2 alto para o led 4
state=2; //próximo estado
break;
case 2:
CLR_2(); // Coloca o pino 2 em nível baixo
if (leds & 16) {SET_0();} // Coloca o pino 0 alto para o LED 5
if (leds & 32) {SET_1();} // Coloca o pino 1 alto para o LED 6
state=0; // Próximo estado
break;
}//end switch
}
Esta função deve ser chamada com freqüência para evitar deixar visível a piscada dos LEDs. O melhor é utilizar a interrupção do timer.
O código completo do projeto está na caixa abaixo para download.
Algumas vezes os projetos eletrônicos possuem orçamento apertado e você não pode gastar com um conversor MAX 232. Aqui estão algumas alternativas.
Normalmente nós usamos um circuito com MAX 232 como esse:
O MAX 232 é um circuito integrado conversor de nível, que converte sinais TTL em RS232 e virse-versa. Ele fornece uma ótima rejeição de ruído e é mais robusto à descargas e curtos. Se o seu projeto for mais avançado, você deve utilizar um CI especializado para esta tarefa. No entanto, soluções especializadas são mais caras que as outras.
Este é um exemplo de circuito com transistor para executar a tarefa de conversão:
Alternativamente, RS232 pode ser conseguido utilizando portas lógicas. Isto é acessível quando sua aplicação já está utilizando elementos lógicos e há portas sobreando em algum CI. Como alguns PCs trabalhar bem apenas com tensões positivas, tudo que nós precisamos é inverter a lógica do sinal e para isso utilizamos as portas lógicas. Por exemplo, utilizando o CI CMOS CD4066B:
E, é claro, utilizando circuitos NAND e NOR:
E não se esqueça de alimentar os CI’s com 5V.
Versão em português por Eletronica.org.
Adaptado com autorização, do original em Science Prog.
Breve tabela contendo os valores comerciais destes componentes.
1.0ohm | 1.1ohm | 1.2ohm | 1.3ohm |
1.5ohm | 1.6ohm | 1.8ohm | 2.0ohm |
2.2ohm | 2.4ohm | 2.7ohm | 3.0ohm |
3.3ohm | 3.6ohm | 3.9ohm | 4.3ohm |
4.7ohm | 5.1ohm | 5.6ohm | 6.2ohm |
6.8ohm | 7.5ohm | 8.2ohm | 9.1ohm |
Para obter os demais valores basta multiplicar por: 10, 102, 103, 104, 105, 106,
Capacitores Comerciais
1.0F | 1.1F | 1.2F | 1.3F |
1.5F | 1.6F | 1.8F | 2.0F |
2.2F | 2.4F | 2.7F | 3.0F |
3.3F | 3.6F | 3.9F | 4.3F |
4.7F | 5.1F | 5.6F | 6.2F |
6.8F | 7.5F | 8.2F | 9.1F |
Para obter os demais valores multiplique pelos seus submultiplos: mili, micro, nano e pico.
Indutores Comerciais
1.0H | 1.1H | 1.2H | 1.3H |
1.5H | 1.6H | 1.8H | 2.0H |
2.2H | 2.4H | 2.7H | 3.0H |
3.3H | 3.6H | 3.9H | 4.3H |
4.7H | 5.1H | 5.6H | 6.2H |
6.8H | 7.5H | 8.2H | 9.1H |
Para obter os demais valores basta multiplicar por: 10-3, 10-6.
Fusíveis comerciais
0,1A | 0,315A | 1,25A | 3,15A | 6A | 20A |
0,125A | 0,35A | 1,5A | 3,5A | 7A | 25A |
0,15A | 0,4A | 1,6A | 3,15A | 8A | 30A |
0,2A | 0,5A | 2A | 3,5A | 9A | 40A |
0,25A | 0,8A | 2,5A | 4A | 10A | 50A |
0,3A | 1A | 3A | 5A | 15A |