Licenciatura em Engenharia Electrotécnica e de Computadores
3º ano – Ramo de TEC
Sistemas de Microcomputadores — 2002/2003
Problemas
Famílias lógicas e interfaces
B
Fig. 1 1 A figura 1 ilustra a ligação de uma saída do tipo
colector-aberto a uma pista numa carta de circuito impresso, onde é usada uma terminação do tipo Thevenin [1].
a) Calcule a corrente I supondo que se trata de uma saída do
inversor 74AHC05 (ver características em anexo). Justifique os valores das resistências usadas.
b) Suponha que esta terminação está colocada junto de uma entrada E, como se ilustra a seguir. Verifique a
compatibilidade das tensões dos níveis lógicos “0” e “1” em E com os níveis VIH e VIL, admitindo que E se trata (ver
características em anexo):
da entrada de um outro inversor 74AHC05 da porta 0 de um microcontrolador da família xC51 da entrada de uma latch 74LS373
Redimensione R1 e R2 nos casos em que verificar incompatibilidade.
c) Usando o método de Bergeron estime a evolução das tensões à saída do
integrado (ponto A) e no fim da pista (ponto B) na resposta a uma transição “1” “0”.
E
Fig. 2
2 Considere as características de saída dos componentes 74ALS373 e 74AHC373 (ver características eléctricas em anexo). Compare as estas famílias lógicas no que respeita à resistência de saída.
Saída de componente LS
Fig. 3
Saída de componente AHC
3 Considere as características ilustradas a seguir?
a) Como compara as famílias lógicas 74HC e 74LS quanto à margem de ruído? b) Justifique a evolução da potência dissipada apresentada por estas duas famílias. c) De entre as duas famílias por qual optaria para a realização de um sistema portátil?
Fig. 5 Fig. 6
74HC
74LS
1 2 3 4 5 6 1 2 3 4 5 6 V CC
-
0,1V
30%VCC
70%VC
C
H
H
H
H
L
L
L
L
4,5 V
5,5 V
Tensão de alimentação
0 0 Tensão de saída
V
O(V) Tensão de
entrada
V
(
IV
)
10-2 10-1 1 10 102 74LS 74HC 10 kHz 100 kHz 1 MHz 10MH V CC=5V C L =50pF P (mW)
4 Quais as diferenças fundamentais apresentadas pelas famílias 74HCxx, 74HCTxx, 74LSxx, e 74Fxx [4]? 5 Preencha o seguinte quadro identificando os casos em que há a possibilidade de interface directa entre
componentes das famílias lógicas indicadas. Nos casos em que tal não for possível sugira formas de a realizar [3][4]. De \ Para 74LVx 74AHCx 74Fx 74HCTx 74LVx 74AHCx 74Fx 74HCTx
7 Apresente e dimensione os circuitos de interface entre os componentes representados. Nos circuitos c) a f) considere que o componente a controlar é activado com a aplicação de um "1" na entrada da porta lógica. Circuito de controlo industrial, 24V 5 V Lógica CMOS a) Circuito de controlo industrial, 24V 5 V Lógica CMOS b) 5 V 74HC04 LED c) 3 V 74LV04 3V LED d) 5 V 74AHC08 12 V 200 mA 60 Ω 60 mH e) 5 V 74LS06 f) Fig. 7
8 a) Determine o valor da resistência R a usar nos seguintes circuitos de interface de um botão de pressão com o pino P1.0 de um microcontrolador da família 80C51, e com um terminal de entrada de um 74LS244. b) Como podem ser melhorados os circuitos de modo a evitar a ocorrência de oscilação (incerteza) do
valor lógico lido?
5V R Pino P1.0 do 80C51 Pino de entrada de um 74LS244 5V R Pino P1.0 do 80C51 Pino de entrada de um 74LS244 Fig. 8
Características: pinos do 8X51: VIL = 0,2VCC - 0,1; VIHmin = 0,2VCC + 0,9; IIH = II L≈ ± 50 µA; VOL(IOL = 1,6mA) = 0,45 V; VOH (IOH = - 60 µA) = 2,4 V
9 Projecte um circuito que permita gerar um sinal para estabelecer o sincronismo do funcionamento de um sistema baseado num microcontrolador com a tensão da rede de alimentação 220V/50Hz. Pretende-se que seja garantido isolamento galvânico.
10 Considere os três casos seguintes de ligações em barramentos: a) Considera realizável a ligação de 20 entradas
74LS04 à saída de um 74HC00? Justifique e apresente soluções alternativas.
b) Qual a frequência máxima admissível para o sinal (considere que o barramento é electricamente ideal).
5 V
Barramento 5 V 74AHC00
20x74LS04
Fig. 9 c) A saída AD0 do barramento de endereços de um
microprocessador é ligada a um bloco de memória RAM composto por 16 CIs DS2016, e a 3 entradas HCT da lógica de descodificação. Que precauções devem ser tomadas para garantir a integridade do sinal? RAM 16xDS2016 3 entradas HCT AD0 Fig. 10 d) Considere que a entrada Wait de um µprocessador
pode ser activada por 5 dispositivos diferentes, como representado ao lado. Que precauções devem ser tomadas para evitar a ocorrência de contenção no barramento causada pelo valor "0" numa saída, estando as outras a "1"?
Wait
1 i 5
Fig. 11
Arquitecturas de sistemas baseados em microprocessadores
11 Apresente o mapa de descodificação de endereços do seguinte circuito de memória.
CS CS AB0:AB11 DB0:DB7 AB14 MEMR AB15 AB12 AB13 AB14 2732A 2732A Fig. 12
12 A figura representa o circuito de condiciona-mento de sinal e conversão A/D de um sistema de medida baseado num microcontrolador (µC) da família 8xC51. O conversor D/A tem por finalidade eliminar na entrada a componente contínua do sinal a adquirir, de modo a que seja convertida para digital apenas a respectiva componente alternada. O sistema dispõe de 1 EPROM de 8 kBytes como memória de programa e de 56 kBytes de memória de dados
3 RAMs de 16kB e 1 EPROM de 8 kB sendo esta iniciada em 0000h. A descodificação de endereços da memória de dados é feita dividindo o espaço de endereçamento em 8 segmentos de 8 kB. A porta P1 do µC encontra-se livre. + -VDC vS=vs+VS vi=Gxv'S DAC ADC v'S µC D0:D7 G D0:D7 WR RD Fig. 13
a) Apresente um esquema eléctrico detalhado do sistema, identificando e justificando convenientemente cada uma das ligações, incluindo o circuito de descodificação de endereços e o respectivo mapa. Se optar pela utilização de lógica programável apresente as equações lógicas implementadas.
b) Escreva o código (em assembly ou em C, incluindo as directivas de compilação necessárias) da rotina adquire(), void adquire(void), que procede à aquisição continua de amostras do ADC e à sua memorização no vector amostras[100]. As amostras são adquiridas de modo que a mais recente toma a posição amostras[99] e todas as outras são deslocadas para a posição anterior, sendo perdida a da posição amostras[0]. Para anular a componente contínua do sinal de entrada o sistema envia para o DAC, com uma periodicidade de 8 amostras, o resultado da média das últimas 8 amostras adquiridas.
c) Apresente um circuito implementado com componentes discretos que, em alternativa aos circuitos integrados habitualmente usados, permita realizar a interface do sistema (apenas TXD e RXD) com a porta série de um PC (níveis EIA-232-C).
Características dos pinos do 8xC51: VIL = 0,2VCC - 0,1 V; VIhmin = 0,2VCC + 0,9 V; IIH=IIL≈ ±50 µA; VOL(IOL=1,6mA) = 0,45 V; VOH(IOH=-800µA) = 2,4 V. Características da porta série: Nível de comutação “1→0” VT+ ≈ 2 V; Nível de comutação “0→1” VT- ≈1V; RIN = 3 kΩ a 7 kΩ; ROUT =300 Ω.
d) Durante o funcionamento do sistema podem ocorrer interrupções geradas por um dispositivo externo ligado a /INT0. Apresente uma rotina para atendimento desta interrupção que envia pela porta série o conjunto dos 100 valores presentes em amostras[ ], e reinicializa o seu conteúdo preenchendo-o com 00h. Antes de finalizar, esta rotina carrega o conversor D/A com o valor presente na EPROM no endereço 0000h. [Não inclua nesta rotina o código de configuração dos registos de controlo da interrupção e da porta série.]
e) Apresente a rotina (em assembly ou em C) init(b), void init(unsigned char b), que configura o sistema para aceitar interrupções activas à transição descendente da entrada /INT0 e configura a porta série para funcionar a 10 bits (start bit, 8 bits, stop bit) à cadencia indicada pelo parâmetro b, de acordo com a seguinte tabela:
b 3 6 12 24 48 96 192
cadência 300 600 1200 2400 4800 9600 19200
13 Pretende-se desenvolver um sistema de processamento de informação baseado num microcontrolador (µC) da família 8X51. Este sistema deverá dispor de 16 kBytes de memória de programa e de 32 kBytes de memória de dados (B0) em ambos os casos compostos por um único dispositivo. Além destes deverá dispor ainda de um banco de 4 blocos de RAM (B1, B2, B3, B4) de 64kB cada, sobrepostos no mesmo espaço de endereçamento, sendo a porta P1 usada para controlar o acesso exclusivo a um dos blocos de RAM da memória de dados BO a B4.
a) Apresente um esquema eléctrico detalhado do sistema, identificando convenientemente cada uma das ligações, e o mapa de descodificação de endereços. Se utilizar lógica programável apresente as equações lógicas implementadas.
b) Escreva o código (em assembly ou em C), incluindo as directivas necessárias, da rotina processa() [void processa(unsigned char oper)] que lê o conteúdo dos blocos B1 e B2 dos endereços 0000h a FFFFh e faz:
• se oper = ’X’ então B3 = (B1 XNOR B2)
• se oper = ’C’ então B4 = maior(B1, B2) se B1 ≠ B2 ou B4 = 0 se B1 = B2.
c) Adicione ao sistema um sensor para monitorar a temperatura local. Este sensor tem 5 pinos sendo 2 de alimentação, 1 entrada série (ES), 1 entrada de relógio (ER), e 1 saída série (SS). Apresente o esquema eléctrico da ligação destes 3 pinos do sensor e de um LED à porta P1 do µC.
Características: pinos do 8X51: VIL = 0,2VCC - 0,1; VIhmin = 0,2VCC + 0,9; IIH = II L≈ ± 50 µA; VOL(IOL = 1,6 mA) = 0,45 V; VOH (IOH = - 60 µA) = 2,4 V;
pinos do sensor: VIhmin = 2,4 V, VIL = 0,8 V, IIH = IIL ≈ ±1 µA, VOL = 0,4 V @ IOL = 1,6 mA, IOH = 1 µA (colector aberto); LED VF=1,3V @ IF=3mA.
d) A temperatura é monitorada periodicamente por uma rotina gerada por interrupção do temporizador 0. Apresente o código desta rotina [void temp(void)] que envia para o sensor (pino ES) 10011001, e de seguida lê 2 bytes (pino SS) dos quais só aproveita o segundo (esta comunicação é feita gerando um ciclo de relógio, pino ER, por cada bit enviado ou recebido). Se o valor deste byte for superior a 32h o µC deve entrar em modo power-down e é acendido o LED. O LED é apagado quando o µC sair deste modo. [Não inclua nesta rotina o código de configuração dos registos de controlo da temporização e da interrupção.] e) Apresente o código do programa principal [void main(void)] e das rotinas init(), com(), e int(). main()
faz correr a rotina init() que activa o atendimento das interrupções necessárias, configura os temporizadores, e a porta série para uma transmissão de 10 bits (start bit, 8 bits, stop bit) a 9600 baud; faz correr a rotina int() que atende as interrupções do temporizador 0 e chama temp() se se perfizerem 10s; de seguida entra num ciclo fechado que corre a rotina com() seguida da rotina processa(). A rotina com() espera a recepção e retorna para uma variável global o comando a usar como argumento na rotina processa().
Anexo A – Séries de famílias lógicas
Família Descrição Família Descrição
74 True TTL 74L Low power
74S Schottky 74H High speed
74LS Low power - Schottky 74AS Advanced - Schottky
74ALS Advanced - Low power - Schottky 74F(AST) Fast - (Advanced - Schottky)
74C CMOS (verificar níveis de Vcc) 74HC (U) High speed - CMOS (Unbuffered output)
74HCT High speed - CMOS - entradas TTL 74AHC Advanced - High speed - CMOS
74AHCT Advanced - High speed - CMOS - entradas TTL 74FCT (-A,-T,-AT) Fast - CMOS - entradas TTL (speed variations)
74AC Advanced - CMOS 74ACT Advanced - CMOS - entradas TTL
74FACT AC, ACT (Q) series 74ACQ Advanced - CMOS - Quiet outputs
74ACTQ Advanced - CMOS - entradas TTL - Quiet outputs
Famílias de ligação a barramentos e linhas de transmissão
74ABT Advanced - BiCMOS - Technology 74ABTE ABT - Enhanced Transceiver Logic
74ABTH Technology - bus Hold Advanced - BiCMOS - 74BCT BiCMOS – entradas TTL
74BTL Backplane - Transceiver - Logic (BiCMOS) 74FB Futurebus+
74GTL Gunning - Transceiver - Logic 74GTLP GTL - Plus
Famílias de baixa tensão de alimentação
74ALB Advanced - Low Voltage - BiCMOS 74LV (U) Low - Voltage (Unbuffered output) (CMOS)
74LVC (R) (U) LV - CMOS (damping Resistor) (Unbuffered output) 74LVCH Low - Voltage - CMOS - bus Hold
74ALVC Advanced - Low - Voltage - CMOS 74LVT (R) (U) (Unbuffered output) (BiCMOS) LV - TTL (damping Resistor)
74LVTZ Low - Voltage - TTL - High Impedance power-up 74ALVC (R) ALV CMOS (bus Hold) (damping Resistor)
74ALVCH Advanced - Low - Voltage - CMOS - bus Hold 74LCX LV - CMOS (opera com tensões de 3V e de 5V)
74VCX LV - CMOS (opera com tensões de 1.8V e de 3.6V)
Anexo B – Característica de componentes
Extracto da folha de características do 74LS373
Extracto da folha de características da matriz de leds TBA/C-20.
Extracto da folha de características do 74AHC05
Bibliografia
[1] Texas Instruments “ Bergeron Method”, 1995.
[2] Texas Instruments “HCMOS Design Considerations”, Abril, 1996 (hcmos.pdf). [3] Philips Semiconductors, “User guide”, Novembro, 1997 (hcguide.pdf).
[4] Texas Instruments, “Designing with logic”, Junho, 1997 (design_guide.pdf).
[5] Texas Instruments, “SN54/74HCT CMOS Logic Family Applications and Restrictions”, Maio, 1996 (HC(T).pdf).