ENCICLOPÉDIA DE RÁDIO ELETRÔNICA E ENGENHARIA ELÉTRICA Sonda de cabo para controladores PIC. Enciclopédia de rádio eletrônica e engenharia elétrica Enciclopédia de eletrônica de rádio e engenharia elétrica / Microcontroladores O dispositivo descrito consiste em um transmissor e um receptor. No primeiro lado, as pontas dos fios são inseridas em pinças numeradas e, no segundo lado, a sonda toca as outras pontas. O display digital do receptor exibe o número do terminal ao qual um ou outro fio está conectado. Para determinar os números dos núcleos, você precisa identificar um deles e conectá-lo ao fio comum do receptor e do transmissor. O transmissor opera no modo distribuidor de pulso em dez pinos do microcontrolador (MCU). Cada um deles possui sua própria constante, à qual são adicionadas dezenas no momento em que seu código é alterado. Para garantir que todos os 80 ciclos de distribuição de pulsos sejam concluídos no mesmo período de tempo, cada um deles é concluído no intervalo de tempo entre uma interrupção e a próxima. As interrupções ocorrem quando o temporizador TMR0 transborda. Possui uma taxa de divisão predefinida selecionada para acomodar 80 pulsos de saída entre interrupções. Considere o algoritmo do programa transmissor (Fig. 1). Após iniciar o programa e inicializar os registros, o registro das dezenas é zerado. Seu valor é reescrito na porta A para comutação de multiplexadores. A seguir, as interrupções são habilitadas e, utilizando o número binário de dezenas, é encontrado seu valor decimal, que é adicionado à constante da primeira saída. A constante de saída (K) é determinada pelo seu número: para o primeiro é 1, para o segundo é 2, para o décimo é 10. Quando o valor das dezenas é zero, um número de pulsos aparece em cada saída igual ao número da saída. Em seguida, o programa verifica o registro K quanto à presença de zero. Se não estiver presente, um é subtraído do registro, o que é acompanhado pela mudança da saída para o estado único. Em seguida, uma pausa de 24 μs é mantida e a saída é comutada para o estado zero, que dura 30 μs (ou seja, o período de oscilação é de 54 μs). Depois disso, o programa verifica se há zero no registrador. Se o registro estiver vazio, ele entra em modo de espera de interrupção e, se seu valor não for zero, todo o ciclo de geração do pulso de saída é repetido. Assim, a saída é formada pela quantidade de pulsos que foi escrita no registro K. Após a inicialização dos registros, um pré-escalador com fator de divisão de 32 e um temporizador com fator de divisão de 137 (256 - 119) são ligados. Na frequência de cristal de 4 MHz, a interrupção de overflow do temporizador deve ocorrer em aproximadamente 4,38 ms (32-137 = 4384 µs), mas o retorno da interrupção é realizado pelo comando sem habilitação de interrupção. A este tempo soma-se o tempo dos ciclos antes da resolução da interrupção e, de fato, o tempo para a própria execução da interrupção (a duração média total deste tempo é de 16 ciclos). Além disso, o pré-escalador é zerado cada vez que o temporizador é definido, de modo que a pausa entre as interrupções é de 4,4 ms. Como não é difícil de calcular, 80 períodos de oscilação durarão 4,32 ms (54 µs x 80 = 4320 µs), ou seja, esse tempo cabe no intervalo entre as interrupções. Após o estouro do temporizador, o procedimento usual para salvar os valores do registro durante uma interrupção é executado e um é adicionado (e possivelmente subtraído) ao contador de interrupções. Os valores deste contador não são utilizados pelo programa, sendo necessário o próprio contador para realizar a interrupção. Mas é conveniente usar ao depurar um programa. Após a restauração dos valores do registro, uma interrupção é habilitada para gerar pulsos da próxima saída. Após a geração dos pulsos na décima saída, o registro de dezenas é aumentado em um e todo o ciclo é repetido com o comando para escrever o código binário de dezenas na porta A. No novo ciclo, o número de pulsos gerados em cada saída aumenta em dez. Quando o valor das dezenas chegar a oito, o ciclo de geração de pulso começará limpando o registro das dezenas. Assim, o valor máximo das dezenas é sete, e o número máximo de pulsos estará na décima saída (10 + 70 = 80). Todos os 80 ciclos de interrupção duram 0,352 s (4,4 ms x 80). Este tempo determina a duração garantida da pausa entre a emissão dos pulsos em cada saída. Para um único pulso na primeira saída, a duração da pausa aumentará quase um tempo igual ao tempo entre as interrupções, e para 80 pulsos na décima saída, a pausa entre os pulsos será igual a 0,352 s. Isto deve ser observado para entender melhor o funcionamento da parte receptora da sonda. O diagrama esquemático do transmissor é mostrado na fig. 2. Todos os bits da porta B do DD1 MK são configurados para saída e possuem coeficientes de um a oito. Os bits RAO-RA2 são utilizados para saída dos valores do registro de dezenas em código binário, RA3 e RA4 são utilizados como saídas com coeficientes de 9 e 10, respectivamente. Como a saída RA4 possui dreno aberto, ela é carregada pelo resistor R1. As entradas Y (pino 3) dos multiplexadores DD2-DD11 são conectadas aos bits da porta B, as entradas de endereço (A, B, C) são conectadas em paralelo e conectadas às saídas de dezenas de MKs. Assim, com um valor zero do registro de dezenas, um endereço zero será selecionado em todos os multiplexadores, e em suas saídas XO (pino 13) aparecerá um número de pulsos igual ao coeficiente de saída do MK, que está conectado ao Entrada Y do multiplexador. Na saída XO do microcircuito DD2 sempre haverá apenas um pulso, e na saída DD11 de mesmo nome - 10 pulsos. Quando o endereço do multiplexador aumenta em um, sua próxima saída (X1) será ligada e o número de pulsos nele aumentará em dez. Assim, apenas o seu próprio número de pulsos aparecerá sequencialmente em cada saída dos multiplexadores. A saída inferior (conforme diagrama) do transmissor (Comum) é conectada, conforme observado, a um fio conhecido, que será comum ao transmissor e ao receptor. O receptor da sonda de cabo opera segundo o princípio de um contador de dois dígitos. O algoritmo operacional de seu programa é mostrado na Fig. 3, e o diagrama do circuito está na Fig. 4. Após a inicialização e inicialização, o programa passa a realizar a indicação dinâmica de dois indicadores digitais LED com um cátodo comum. O tempo de exibição de um indicador é de 5 ms, ou seja, todo o ciclo de indicação é repetido com frequência de 100 Hz. O receptor utiliza dois tipos de interrupções: no overflow do timer TMR0 e nas mudanças de sinal na entrada RB0. Quando chega um pulso nesta entrada, os valores dos registros atuais são salvos. A seguir, o programa verifica a origem da interrupção. Se isso não ocorreu devido a um estouro do temporizador, então o contador de pulsos é incrementado, o temporizador é zerado (256 - 120 = 136) e o contador do pré-escalador é zerado. O programa restaura os valores do registro e a exibição continua. Assim, quando os pulsos chegam da entrada RBO, o temporizador é constantemente zerado, portanto uma interrupção de overflow do temporizador não é possível enquanto houver pulsos presentes nesta entrada. Se não houver pulsos na entrada por um longo período, ocorre uma interrupção devido ao estouro do temporizador. Para garantir uma operação confiável do receptor, o tempo entre as interrupções é ligeiramente reduzido em comparação com o transmissor e é igual a 4,38 ms. As interrupções de estouro do temporizador são contadas pelo contador de interrupções. A pausa entre os pulsos em cada saída do transmissor é igual a 80 interrupções, portanto o contador de interrupções no receptor pode contar até 80. Se durante esse tempo não houve pulsos de entrada, o programa escreve os valores dos registros do contador de pulsos para os registros de indicação e as leituras são atualizados. Isso acontece a cada 0,35 s. Os códigos de "firmware" para os microcontroladores transmissor e receptor são fornecidos na Tabela. 1 e 2 respectivamente. As saídas RB1-RB7 do microcontrolador DD1 comutam os elementos (segmentos) dos indicadores LED HG1, HG2, saídas RA0, RA1 - seus cátodos. Os pulsos da sonda são enviados para a entrada RB0. O grampo X1 é conectado a um núcleo de cabo conhecido, que serve como fio comum para o receptor e o transmissor. Se a saída do multiplexador transmissor não for selecionada pelo endereço, ela terá um nível indefinido e quando aparecerem pulsos no contador do receptor haverá um falso positivo (independentemente da resposta diferencial definida do contador: pode ser um diferencial de zero a um ou de um a zero). Para evitar pulsos falsos, a entrada é desviada pelo resistor R1. O receptor e o transmissor são alimentados por baterias compostas por três células AA ou AAA cada. Se você planeja trabalhar com o receptor por um longo período, é aconselhável usar uma bateria 3R12X. O receptor e o transmissor utilizam ressonadores de quartzo com frequência de 4 MHz. Sem quaisquer alterações nos circuitos ou programas, podem ser utilizados ressonadores com frequências mais baixas, até 1 MHz. Nesse caso, a taxa de atualização das leituras do indicador diminuirá correspondentemente, mas permanecerá em um valor aceitável à vista - até 25 Hz. O transmissor é montado em duas placas de circuito impresso, cada uma delas projetada para 40 saídas (a segunda difere da primeira por não possuir o chip DD1 e haver espaço para instalação do resistor R1). As placas são colocadas uma embaixo da outra, conectadas por meio de parafusos e postes roscados, e entre as placas é instalada uma caixa para três células de bateria (na área onde está localizado o chip DD1). As pinças para ligação dos fios na placa do transmissor são caseiras (Fig. 5). Eles consistem em dois suportes idênticos 2, dobrados no formato da letra “L” a partir de tiras de chapa de bronze ou latão com espessura de 0,4...0,5 e largura de 2,5 mm. Uma das extremidades das peças é limada até uma largura de aproximadamente 1 mm (com um comprimento de 1,5...2 mm dependendo da espessura do material das placas 1), na outra, um furo com diâmetro de 1,2 mm é perfurado, após o que as extremidades são dobradas. As partes serradas dos suportes são soldadas nas placas, conforme mostrado na Fig. 5. Para conectar o fio 3, as extremidades inferior e superior (conforme mostrado na figura) dos suportes são comprimidas até que os furos coincidam. Após a instalação, as pinças são numeradas de forma que ao girar o transmissor (quando a parte inferior vira superior e vice-versa), seus números fiquem visíveis. Autor: N.Zaets, vila de Veidenevka, região de Belgorod. Veja outros artigos seção Microcontroladores. Leia e escreva útil comentários sobre este artigo. Últimas notícias de ciência e tecnologia, nova eletrônica: Máquina para desbastar flores em jardins
02.05.2024 Microscópio infravermelho avançado
02.05.2024 Armadilha de ar para insetos
01.05.2024
Outras notícias interessantes: ▪ 793 Caminhão elétrico de mineração ▪ Controle de voz de condicionadores de ar LG ▪ Combustível de aviação a partir de óleo de soja ▪ Cultivo de frutos do mar em biorreatores Feed de notícias de ciência e tecnologia, nova eletrônica
Materiais interessantes da Biblioteca Técnica Gratuita: ▪ seção do site Materiais de referência. Seleção de artigos ▪ artigo Quando não bebi lágrimas do cálice do ser. expressão popular ▪ De onde vêm as superstições? Resposta detalhada ▪ artigo Criação e implementação de um OSMS ▪ artigo Melhoria do regulador de potência. Enciclopédia de rádio eletrônica e engenharia elétrica ▪ artigo Experiência com limalha de ferro. experimento físico
Deixe seu comentário neste artigo: Todos os idiomas desta página Página principal | Biblioteca | Artigos | Mapa do Site | Revisões do site www.diagrama.com.ua |