Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Lista de Exercícios – Temporizadores, ST e Memória 1 Para o projeto de um frequencimetro, gere algumas das temporizações indicadas abaixo, assumindo que a base de tempo é fornecida. Contadores de Pulsos Displays BT Base de tempo fx A geração das temporizações de controle de um freqüencímetro digital é apresentada na ífgura abaixo: Base de Tempo (BT) fX fX BT Memorização de contagem (M) Zerar contadores (ZC) tw = 1μs Supondo que tenhamos monoestáveis 74123, defina os parâmetros necessários (capacitores e resistores) deste monoestável para que tenhamos as larguras de pulso em M e ZC de tw=1μs. Use a curva do 74123 que fornece largura de pulsos em função de capacitância e resistências. Solução: O 74123 apresenta dois monoestáveis internos ao chip podemos pegar um para gerar o sinal de memorização (M) que transfere os dados das saídas dos contadores para a memória. Este sinal deve ser gerado ao se aplicar o sinal BT na entrada do monoestável. O segundo pode será usado para zerar os contadores depois que os dados contados na última janela da BT foram transferidos para a memória. Este último é gerado aplicando o sinal de M na entrada do segundo monoestável. Todos os dois monoestáveis devem fornecer largura de tw=1μs. Cálculo de Rext e Cext no 74123 para gerar estas larguras: Usando a gráfico abaixo que dá a largura de pulsos a partir de valores de capacitância e resistores. Assumindo capacitância de ≈ 30pF e sabendo que tW = 1μs (1000ns) então pelo gráfico teremos R como de ≈ 50KΩ. O nosso problema será resolvido usando resistências variáveis em serie com Rext para ajustes necessários. 2 Usando um contador de década comercial monte um divisor por sete a partir deste contador. 2.1 Calcule o D (Duty Cycle) da freqüência de saída deste divisor. 2.2 Supondo a frequecia de clock de 7 KHz, obtenha uma freqüência que corresponda esta freqüência de clock dividida por sete e possuindo um D de 50%. Para tanto aplique um monoestável feito a partir de um 555 na saída do divisor de freqüência. Contador de década Cl Q1Q2 Q0Q3 CK Solução: 2.1 A divisão de freqüência é sempre feita através de um contador onde o bit mais significativo deste contador divide a freqüência do clock pelo módulo de contagem, ou seja: contagemdemódulo ff ckBMS = Então para a divisão por sete precisamos um contador de módulo 7 (que conte de 0 a 6, por exemplo). Como é dado um contador de década, precisamos forçar que este contador saia de seu ciclo de contagem (de 0 a 9) e fique contando entre 0 e 6. Para isto vamos usar uma lógica combinacional que uma vez atinja o estado 6 transforme este em estado 0, usando uma entrada clear.. O circuito resposta da questão está abaixo, com saída em Q3 : Q1Q2 Q0Q3 Cl fCk/7 Ck Este divisor produzirá a temporização abaixo, na contagem entre 0 e 6 e a saída de bit mais significativo é o Q2 que apresentará a freqüência de fCk/7. O duty cycle (D) será de ≈ 42 % do período da onda obtida em Q2. Q1 0 0 1 1 0 0 1 0 0 1 1 0 0 1 0 Q0 0 1 0 1 0 1 0 0 1 0 1 0 1 0 0 Q2 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 Q3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Clock 2.2 Para obtermos uma onda quadrada a partir da onda de Q2 é pedido que se aplique um monoestável feito com o 555. Para tanto temos que calcular as resistências do monoestável dado na figura abaixo. tw ≈ 1,1 RC (respeitar R≥ 1 KΩ). O período do divisor será dado por 1 / (1 KHz) = 1ms. Então queremos uma largura de pulso de 0,5 ms. Com C ≈1000 pf temos : 0,5 ms ≈ 1,1 R(1000 pf ) e R= 450 KΩ 4 8 +V R C Entrada Saída 5 7 1 3 reset 2 6 10ηF 555 3 Projete, utilizando o componente 555, um circuito astável que gere pulsos com as seguintes características: espaçamento de 400 ms entre pulsos; duração de 500 ms. Estes pulsos do astável serão utilizados para acionar um monoestável sensível a transição positiva, também construído com 555, com resistor R = 10KΩ, e capacitor C = 41μF. Informe: a duração do pulso do monoestável; o duty cycle da onda resultante. Fórmulas: Astável: ( ) ( ) ⎩⎨ ⎧ ≥ Ω≥ + +≈+= +≈+== +==+= − pFC KR com RR RR tt tD CRRtt Tf CRRtCRtttT a ba ba LH H baLH bAHbLHL 500 1 2 .2 44,11 693,0693,0 1 Monoestável: tw ≈ 1,1 RC Solução : Astável: Ra = 57,7 KΩ, Rb = 14,43 KΩ e C=10μF ( ) ( ) 55,01.2 44,1 500693,0400693,0 900 ≈+=≈+≈ =+=== =+= LH H ba bAHbL HL tt tDeHz CRR f msCRRtemsCRt msttT Monoestável: tw ≈ 1,1 RC = 1,1 (10KΩ.41μF) = 451 ms. 50,0 900 450 ≈=D 4 8 +V R C Entrada Saída do Monoestável 5 7 1 3 reset 2 6 10ηF 555 C Saída do Astável 5 6 1 3 reset 2 555 4 8 7 Ra Rb 10ηF +V 4 Para o astável abaixo: 4.1 Calcule a freqüência de oscilação. 4.2 Ao aplicar a saída deste circuito em um monoestável redisparável com tw = 6,0 ms, determine a forma de onda e o Duty Cycle que sai no monoestável na sua saída Q. 0,1μF Saída do Astável 5 6 1 3 reset 2 555 4 8 7 15 K 33 K 10ηF +V Q Q M1 Solução : 4.1 TH = 0,69.(RA+ RB).C = 0,69.48K.0,1μF = 3,31ms TL = 0,69.RB.C = 0,69.33K.0,1 μF = 2,27ms T = TH + TL = 3,31 + 3,27 = 5,58ms f =1/T = 1/5,58ms = 179Hz 4.2 Q = 1 na saída do monoestável, não existe caracterização de uma onda retangular. 5 Construa um banco de memória com 4 K de endereços de RAM (com pastilhas de 2 K de endereços) e 4 K de endereços de ROM (pastilha de 4 K de endereços) para um processador de 4 bits. O endereço inicial deste banco, a ser ocupado pelo módulo de RAM, é 800H, e um espaço de 4 K de endereços deve ser deixado entre a RAM e a ROM, para expansão futura. Considerando que os chips de memória usados possuem barramento de dados com largura idêntica ao requerido para o banco de memória, obtenha: 5.1 O mapa de memória, com os endereços inicial e final de cada módulo; 5.2 Mostre o desenho do circuito do banco de memória projetado, com toda a lógica de decodificação. Solução: 5.1 Mapa da memória: - 0000H a 07FFH vazio (2K posições de 4 bits vazias); - 0800H a 0FFFH 2K de RAM com células de 4 bits; - 1000H a 17FFH 2K de RAM com células de 4 bits; - 1800H a 27FFH vazio (4K posições de 4 bits vazias); - 2800H a 37FFH 4K de ROM com células de 4 bits. 5.2 Projeto do Banco de Memória: A13 A12 A11 A10 A9 A0 E2 E1 E0 S7 S6 S5 S4 S3 S2 S1 S0 A0 ... A10 CS RAM 2kX4 R/W A0 ... A10 CS RAM 2kX4 R/W d4 ..............d0 A0 .. A11 CS ROM 4kX4 D4 ..............d0 Barramento de Dados d4....d0 R/W d4 ..............d0 6 Possuímos uma ROM de 2 K x 4 bits de dados. Porém as nossas necessidades determinam o uso de uma ROM de 8 K de endereços e 1 bit de dados. 6.1 Mostre através de um diagrama como fazer tal conversão utilizando-se 1 multiplexador 4 por 1; 6.2 Explique o que foi feito para tal conversão. Solução: 6.1 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 ROM 2K x 4 D3 D2 D1 D0 I3 I2 I1 I0 O Mux 4x1 S1 S0 A1 A0 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 6.2 O uso do mux faz com que as células armazenadas em cada espaço dos 2Kx4 tenham seus bits separados (acessados) a partir de um espaço de endereçamento de 8Kx1. Os bits A1 e A0 do barramento de endereços mapeiam os bits da célula acessada no espaço 8Kx1. No caso em cada célula da memória 2Kx4 temos quatro palavras consecutivas da memória 8Kx1. 7 Projete as áreas de memória RAM, ROM e de I/O (área reservada para dispositivos de entrada saída mapeada em memória) de um pequeno computador experimental com uma CPU de 8 bits. A memória ROM deve ter 2K posições endereçáveis. A memória RAM deve ser de 8K e estar no início do mapa de memória. A área reservada para I/O deve ter Kbytes (1 byte = 8 bits) e situar-se a partir do endereço 2800H. Devem ser usados chips ROM de 1K x 4 bits e RAM de 8K x 4 bits. Indique os endereços inicial e final de cada bloco (ROM, RAM e I/O) no mapa de memória e construa o diagrama do circuito. Solução: A13 A12 A11 A10 A9 A0 A0 ..... A9 CS ROM 1kX4 A0 ..... A9 CS ROM 1kX4 d7 ..............d4 Barramento de Dados d7....d0 d3 ..............d0 R/W A0 ..... A9 CS ROM 1kX4 A0 ..... A9 CS ROM 1kX4 d7 ..............d4 d3 ..............d0 A0 .....A12 CS RAM 8kX4 R/W d7 ..............d4 A0 ......A12 CS RAM 8kX4 R/W D3 ..............d0 E1 E0 S3 S2 S1 S0 En I/O 8 Examine o circuito abaixo que representa um banco de memória: 8.1 Determine a capacidade total e a largura de memória (tamanho de palavra) da estrutura apresentada na figura abaixo. 8.2 Em sua opinião, a memória poderia ser expandida além da capacidade constatada? Diga de quanto e a partir de que endereço. 8.3 Determine os endereços em hexadecimal onde começam e terminam cada partição da memória abaixo. 8.4 Qual memória será acessada quando o endereço (em hexadecimal) de uma célula for C76H e o fluxo de dados tomará que sentido se o sinal WR / do barramento de controle for 1/ =WR . A12 A11 A10 A9 A0 E1 E0 S3 S2 S1 S0 A0 ... A10 CS ROM 2kX8 A0 ... A10 CS ROM 2kX8 d7 ..............d0 A0 .. A9 CS RAM 1kX4 R/W d7 ..............d4 Barramento de Dados d7....d0 A0 .. A9 CS RAM 1kX4 R/W d3 ..............d0 R/W d7 ..............d0 Solução: 8.1 Capacidade total de memória do banco implementado: 5Kbytes; Largura de memória: 8 bits. 8.2 Esta memória possui 4K de ROM entre 0000H e 0FFFH e depois 1K de RAM entre os endereços hexadecimais 1800H e 1BFFH. Então teríamos espaço de memória disponível entre 1000H e 17FFH e o espaço entre 1C00H e 1FFFH. Ou seja, poderíamos estender a memória de 2K (entre 1000H e 17FF) e de 1K (entre 1C00H e 1FFFH): expansão total de 3Kbytes. 8.3 Mapa da Memória: A primeira ROM começa em 0000H e vai até 7FFH (ativada por S0); A segunda ROM começa em 0800H e vai até FFFH (ativada por S1); A RAM começa em 1800H e vai até 1BFFH (é ativada por S3 e 10A ). 8.4 A memória que é acessada e a ROM é que é decodificada por A12 = 0 e A11 = 1 (a que tem S1 conectado ao seu Chip Select). O Fluxo de dados só pode ser de leitura, portanto, 1/ =WR é irrelevante.