Baixe o app para aproveitar ainda mais
Prévia do material em texto
Interfaces e Periféricos CCE0230 Atividades Estruturadas PROFESSOR JUAN GUSTAVO RUBIN RA: 201308005491 Atividades Estruturadas Interfaces e Periféricos CCE0230 AE1: (Atividade Estruturada 1) Pesquise no livro texto ou em seu material de estudo a seguinte situação: Um microprocessador hipotético de 32 bits, cujas instruções de 32 bits são compostas de dois campos: o primeiro byte contém o código da operação e os demais contem um operando imediato ou um endereço de operando. a) Qual é a capacidade máxima de memória endereçável diretamente (em bytes)? Resp.: Sobram 24 bits para endereçar diretamente, pois temos apenas 8 bits para o código de operação (1º byte). Logo temos 224 endereços, que correspondem 224x22 (4 bytes por posição) = 64 Mbytes. b) Discuta qual o impacto sobre a velocidade do sistema caso o barramento do Microprocessador tenha: b1)um barramento local de endereço de 32 bits e um local de dados de 16 bits. Resp.: Gastamos 3 ciclos para operações de leitura (um para a passagem do endereço e os outros dois para a recuperação do dado) e 2 ciclos para escrita (um para a passagem do endereço da primeira parte do dado, e o outro para a segunda parte do dado). Neste caso com um barramento de endereços de 32 bits e barramento de dados de 16 bits. Logo temos boa performance em operações de leitura. b2)um barramento local de endereços de 16 bits e um barramento local de dados de 16 bits. Resp.: Para um barramento de endereços de 16 bits e barramento de dados de 16 bits, gastamos 4 ciclos para operações de leitura (dois para a passagem do endereço e dois para a recuperação do dado) e 2 ciclos para escrita (um para a primeira parte do endereço e da primeira parte do dado, e o outro para a segunda parte endereço e da segunda parte do dado). Logo sua performance para operações de leitura é inferior ao primeiro caso. AE2 Pesquise no livro texto ou em seu material de estudo as seguintes situações: Numa fábrica temos um micro controlador que define as funções básicas de uma linha de encher de frascos de perfume. Imagine uma esteira que vai deslocando os frascos vazios até uma posição fixa onde serão completados automaticamente com o perfume. Nesta linha de produção, indicar quando podemos ter: a) Uma interrupção por software. Resp.: A lógica aritmética deste sistema entrará em conflito, causando uma interrupção. Podemos ter uma interrupção por software se, por exemplo, o sistema identificar que chegou uma garrafa no ponto fixo para enche-la e logo inicia esse processo. Porém o sensor que acusa a presença desta garrafa para de enviar este sinal no meio deste processo. b) Uma interrupção de relógio. Resp.: Podemos ter uma interrupção por relógio para o sistema fazer a leitura das I/O’s conforme o tempo especificado. c) Uma interrupção de entrada / saída. Resp.: Podemos ter uma interrupção de entrada/saída quando um dos sensores (entrada) mudar sua posição (de 0 para 1 ou de 1 para 0), exigindo que seja lido antes da interrupção por relógio agir (tempo pré-definido). d) Uma interrupção por falha de hardware. Dicas: Tem que imaginar como esta linha pode operar (sensores, acionamentos outros). Resp.: Podemos ter uma interrupção por falha de hardware se houver uma falta de energia ou alguma parte do hardware (módulos, fonte de alimentação, etc.) parar de funcionar corretamente. AE3 Uma criança tem um carro a controle remoto que pode ir para frente e atrás, pode fazer curvas e mudar de velocidade. Como você pode imaginar, o sistema tem um transmissor (que é comandado pela criança) e um receptor que é composto de um microcontrolador (localizado no carro). Existem muitas opções para fazer os controles, você deverá imaginar alguma. a) Identifique as entradas, saídas, sensores e atuadores. (tem muitas de opções). ENTRADAS: Estas são acionadas no controle remoto e transmitidas ao Microcontrolador (no carrinho). - E1 = Acelerar para frente - E2 =Acelerar para trás - E3 = Virar à esquerda - E4 = Virar à direita SAÍDAS: Provindas do Microcontrolador, atuam no carrinho (motor e eixo). - S1 = Acelerar para frente - S2 = Acelerar para trás - S3 = Virar à esquerda - S4 = Virar à direita SENSORES: Os sensores de entrada são os push-button’s do controle remoto. ATUADORES: relés, motor e eixo do carrinho. b) Faça um diagrama de fluxo mostrando como as entradas alteram o fluxo do Programa. c) Mostre um diagrama de fluxo como o brinquedo pode operar sem interrupções e com interrupções. AE4 a) Na Estácio, na sala de atendimento aos alunos existem muitos computadores conectados a um sistema central, que é o provedor de dados para todo o sistema. Imagine que as portas de entrada e saída de cada computador sejam de 16 bits. Faça um desenho mostrando a comunicação paralela de 6 computadores. COMUNICAÇÃO PARALELA Computador A Computador B Transmissor Receptor b) identifique e explique 5 exemplos do uso residencial da comunicação serial. Portas de Entrada e Saída de 16 bits b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15 Portas de Entrada e Saída de 16 bits b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15 ESTACIO SALA DE ATEDIMENTO AOS ALUNOS TOPOLOGIA EM BARRAMENTO Resp.: 1º Sistema clássico de TV, onde temos o transmissor e o receptor. É mandado o sinal de um para o outro e ainda de modo de operação Simplex, onde tem apenas um sentido sempre (do transmissor para o receptor). 2º Rádio, que funciona de maneira similar ao primeiro exemplo, modo de operação Simplex de transmissor (antenas) para receptor (aparelho de rádio). 3º Rádio Nextel, comunicação serial também, porém com modo de operação Half- Duplex, do qual hora emite o sinal e hora recebe, porém nunca ao mesmo tempo. 4º Aparelhos de FAX, funciona da mesma maneira que o exemplo 3, Half-Duplex. Pois hora enviamos o FAX e hora recebemos, mas cadafunção por vez. 5º Telefone, que funciona em comunicação serial, porém em Full-Duplex onde é permitido a comunicação simultânea em ambos os sentidos. Como é fácil observar que neste caso podemos falar e ouvir ao mesmo tempo. c). Os carros dos últimos anos usam uma rede (normalmente CAN) para o fluxo de informações da operação do sistema (motor freios, luzes, som, combustível, cinto de segurança, portas, outros). Faça uma pesquisa referente ao uso da comunicação serial nos carros (mostre desenhos, sensores, atuadores, taxa de transmissão de dados, fluxo de dados, atrasos, conceitos de rede segura). Resp.: O CAN Bus (ou Barramento Controller Area Network) é um protocolo de comunicação serial síncrono, do qual foi desenvolvido pela empresa alemã Robert BOSCH e disponibilizado em meados dos anos 80. Sua aplicação inicial foi realizada em ônibus e caminhões. Atualmente, é utilizado na indústria, em veículos automotivos, navios e tratores, entre outros. O sincronismo entre os módulos conectados a rede é feito em relação ao início de cada mensagem lançada ao barramento (evento que ocorre em intervalos de tempo conhecidos e regulares). Trabalha baseado no conceito multi-mestre, onde todos os módulos podem se tornar mestre em determinado momento e escravo em outro, além de suas mensagens serem enviadasem regime multicast, caracterizado pelo envio de toda e qualquer mensagem para todos os módulos existentes na rede. Outro ponto forte deste protocolo é o fato de ser fundamentado no conceito CSMA/CD with NDA (Carrier Sense Multiple Access / Collision Detection with Non-Destructive Arbitration). Onde possibilita trabalhar muito bem o gerenciamento de sinais e respeitar suas prioridades. A velocidade de transmissão dos dados é inversamente proporcional ao comprimento do barramento. A maior taxa de transmissão especificada é de 1Mbps considerando-se um barramento de 40 metros. Algumas das maiores vantagens do CAN é a sua robustez e a capacidade de se adaptar às condições de falha, temporárias e/ou permanentes. Podemos classificar as falhas de uma rede CAN em três categorias ou níveis: Nível de Bit, Nível de Mensagem e Nível Físico. Nível de Bit – Possui dois tipos de erro possíveis: Bit Monitoring: Após a escrita de um bit dominante, o módulo transmissor verifica o estado do barramento. Se o bit lido for recessivo, significará que existe um erro no barramento. Bit Stuffing: Apenas cinco bits consecutivos podem ter o mesmo valor (dominante ou recessivo). Caso seja necessário transmitir seqüencialmente seis ou mais bits de mesmo valor, o módulo transmissor inserirá, imediatamente após cada grupo de cinco bits consecutivos iguais, um bit de valor contrário. O módulo receptor ficará encarregado de, durante a leitura, retirar este bit, chamado de Stuff Bit. Caso uma mensagem seja recebida com pelo menos seis bits consecutivos iguais, algo de errado terá ocorrido no barramento. Nível de Mensagem – São três os tipos de erro possíveis: CRC ou Cyclic Redundancy Check: Funciona como um checksum. O módulo transmissor calcula um valor em função dos bits da mensagem e o transmite juntamente com ela. Os módulos receptores recalculam este CRC e verificam se este é igual ao transmitido com a mensagem. Frame Check: Os módulos receptores analisam o conteúdo de alguns bits da mensagem recebida. Estes bits (seus valores) não mudam de mensagem para mensagem e são determinados pelo padrão CAN. Acknowledgment Error Check: Os módulos receptores respondem a cada mensagem íntegra recebida, escrevendo um bit dominante no campo ACK de uma mensagem resposta que é enviada ao módulo transmissor. Caso esta mensagem resposta não seja recebida (pelo transmissor original da mensagem), significará que, ou a mensagem de dados transmitida estava corrompida, ou nenhum módulo a recebeu. Toda e qualquer falha acima mencionada, quando detectada por um ou mais módulos receptores, fará com que estes coloquem uma mensagem de erro no barramento, avisando toda a rede de que aquela mensagem continha um erro e que o transmissor deverá reenviá-la. Além disso, a cada mensagem erroneamente transmitida ou recebida, um contador de erros é incrementado em uma unidade nos módulos receptores, e em oito unidades no transmissor. Módulos com estes contadores iguais a zero são considerados. Normais. Para os casos em que os contadores contêm valores entre 1 e 127, os módulos são considerados Error Active. Contadores contendo valores entre 128 e 255 colocam os módulos em condição de Error Passive. Finalmente, para contadores contendo valores superiores a 255, os módulos serão considerados em Bus Off e passarão a não mais atuar no barramento. Estes contadores também são decrementados a medida que mensagens corretas são recebidas, o que reduz o grau de incerteza em relação a atividade dos módulos ora com contadores contendo valores diferentes de zero e possibilita novamente a plena participação deles no barramento. Nível Físico – Para os barramentos com 2 e 4 fios, caso algo de errado venha a ocorrer com os fios de dados CAN_H e CAN_L, a rede continuará operando sob uma espécie de modo de segurança. Seguem abaixo algumas das condições de falha nas linhas de comunicação que permitem a continuidade das atividades da rede: • Curto do CAN_H (ou CAN_L) para GND (ou VCC); • Curto entre os fios de dados CAN_H e CAN_L; • Ruptura do CAN_H (ou CAN_L); Uma rede CAN, dependendo da sua aplicação, poderá ter até centenas de módulos conectados. O valor máximo para a conexão de módulos em um barramento depende da norma que se utiliza na dada aplicação. Toda rede CAN possui 2 Terminadores. Estes terminadores nada mais são que resistores com valores entre 120 e 124 ohms, conectados à rede para garantir a perfeita propagação dos sinais elétricos pelos fios da mesma. Estes resistores, um em cada ponta da rede, garantem a reflexão dos sinais no barramento e o correto funcionamento da rede CAN. Outra característica de determinadas aplicações fundamentadas no CAN é que estas poderão ter duas ou mais sub-redes trabalhando, cada qual, em uma velocidade diferente. Os dados são transferidos de uma sub-rede para a outra através de módulos que atuam nas duas sub-redes. Estes módulos são chamados de Gateways. A Figura abaixo ilustra a rede CAN de um sistema automotivo, com duas sub-redes e dois terminadores. O Gateway desta aplicação é o Painel de Instrumentos. d) Existe comunicação síncrona e assíncrona. Explique suas características (vantagens e desvantagens). Resp.: COMUNICAÇÃO DE DADOS ASSÍNCRONA Na Transmissão Assíncrona, um bit especial é inserido no início e no fim da transmissão de um caractere e assim permite que o receptor entenda o que foi realmente transmitido. Imagine uma seqüência de dados que precisam ser transmitidos. Cada bloco de dados possui uma flag (espécie de controle) que informa onde começa e onde acaba esse bloco, além da posição na sequência de dados transmitida. Com isso, os dados podem ser transmitidos em qualquer ordem e cabe ao receptor interpretar essas informações e colocá-los no lugar correto. Porém, a desvantagem é a má utilização do canal, pois os caracteres são transmitidos irregularmente, além de um alto overhead (os bits de controle que são adicionados no início e no fim do caractere), o que ocasiona uma baixa eficiência na transmissão dos dados. COMUNICAÇÃO DE DADOS SÍNCRONA Na comunicação de dados síncrona, o dispositivo emissor e o dispositivo receptor devem estar num estado de sincronia antes da comunicação iniciar e permanecer em sincronia durante a transmissão. Imagine a mesma seqüencia de dados que precisa ser transmitida de maneira síncrona. Cada bloco de informação é transmitido e recebido num instante de tempo bem definido e conhecido pelo transmissor e receptor, ou seja, estes têm que estar sincronizados. Quando um bloco é enviado, o receptor é bloqueado e só pode enviar outro bloco quando o primeiro for recebido pelo receptor. AE5 a) É solicitado verificar na sala de computadores da Estácio a capacidade do disco rígido do computador em uso e a memória RAM. Identificar o software que está sendo usado (plataforma Windows XP, Windows 7, outros). Pesquisar quais são as memórias mínima que o sistema opera. Resp.: Windows XP Professional – Mínimo de 64 MB de memória RAM, espaço em disco para armazenamento de 1,5 GB Windows Vista – Mínimo de 512 MB de memória RAM, espaço em disco para armazenamento de 15 GB Windows 7 – Mínimo de 1 GB de memória RAM (32 bits) ou 2 GB (64 bits), espaço em disco para armazenamento de 16 GB (32 bits) ou 20 GB (64 bits) Windows 8 – Mínimo de 1 GB de memória RAM (32 bits) ou 2 GB (64 bits), espaço em disco para armazenamento de 16 GB (32 bits) ou 20 GB (64 bits) b) Faça uma comparação entra seu computador pessoal e o microcontrolador PIC16F877A enquanto a: b1) Capacidade de memória. b2) Freqüência de operação da CPU. b3) Arquitetura. Nota: informações do microcontrolador podem ser encontradas em:www.microchip.com COMPUTADOR PESSOAL: PIC16F877 A: Frequência de Operação: 20 MHz Memória Flash de Programa (14-bit words): 8 K SRAM (Data Memory): 368 bytes EEPROM (Data Memory): 256 bytes Arquitetura: AE6 a) Faça uma comparação entre os sinais analógicos e digitais. Cite exemplos. Resp.: Os sinais analógicos podem assumir uma quantidade infinita de valores. Se caracterizam por terem vários níveis de tensão em um determinado período de tempo (número infinito de valores distribuídos em uma faixa), consiste na variação de uma voltagem em relação ao tempo para representar um fluxo de informação. A informação "viaja" por meio de ondas eletromagnéticas. Este sinal é afetado por outros campos eléctricos que danificam a qualidade do sinal, a chamada estática; por outro lado, quanto maior a distância percorrida, menor a potência do sinal. Já os sinais digitais assumem valores em quantidade limitada. Neste o nível 1 equivale a uma tensão positiva e o nível zero equivale ao referencial zero volt. Possui largura de banda infinita. A informação viaja por "pacotes" de bits binários. Além de ser um meio de maior rapidez e qualidade, e de apresentar maior confiança, o sinal enfraquece mais lentamente, sendo que as despesas com o equipamento de amplificação são reduzidas. Adicionalmente, os amplificadores são mais eficazes visto que, dada a natureza do sinal, conseguem distinguir o ruído do sinal, permitindo maior clareza mesmo nas comunicações de longa distância. Temos como exemplos de sinais analógicos os sistemas de telefonia e TV tradicional, nossa voz, etc. E como exemplos de sinais digitais podemos citar o novo sistema de TV digital. b) O Jorge diz que seu microcontrolador tem um conversor A/D e o João informa que o mesmo microcontrolador tem 8 entradas analógicas. Informar quem está certo e quem está errado. Explique esta situação. Faça desenhos. Resp.: Ambos estão certos, pois nos conversores tipo A/D (de analógico para digital) há entradas analógicas para que se possa fazer a leitura de sinais analógicos para posteriormente serem convertidos em sinais do tipo digital. c). Faça uma comparação entre 3 tipos de conversores A/D. Resp.: Farei comparação entre os seguintes tipos de conversores A/D: - Paralelo (ou Flash) - Tipo Contador - Aproximação Sucessiva TIPO PARALELO OU FLASH A grande vantagem do conversor A/D paralelo é a grande rapidez na conversão, porque o sinal analógico de entrada é comparado diretamente e simultaneamente com cada nível de voltagem de referência em comparadores distintos. A figura abaixo mostra um exemplo de conversor A/D paralelo de 3 bits, sendo que a voltagem de entrada analógica de entrada é comparada às voltagem fixas de referências para cada nível do código digital, do início a te o fim da escala. Para uma resolução de N bits são necessários (2N – 1) comparadores e igual quantidade de níveis de referência. A grande dificuldade ou desvantagem dos conversores A/D paralelo é o aumento do número de comparadores de latch e complexidade do codificador à medida que se aumenta a resolução, isso Ocasiona um enorme aumento na área de silício e consumo de potência, devido ao grande número de componentes. O conversor A/D paralelo é o mais rápido dentre todos os tipos de conversores e normalmente é construído utilizando-se a versão mais rápida de uma determinada tecnologia. TIPO CONTADOR Este tipo de conversor, também chamado de conversor “staircase” é bastante simples. A figura a seguir mostra na forma de diagrama de bloco a estrutura desse conversor. A saída de um contador binário de N bits (paralelos) alimenta um conversor D/A , cuja saída é incrementada e dirigida para a entrada de um comparador juntamente com o sinal analógico de entrada a ser digitalizado. Quando os dois sinais (saída do conversor D/A e sinal analógico de entrada) ficarem iguais, o sinal de saída do comparador para os contadores binários, cujo valor nesse instante é colocado na saída do conversor A/D e corresponde ao valor digital equivalente ao nível de voltagem do sinal analógico e novamente e ciclo se repete. Esse tipo de conversor é considerado lento porque a cada ciclo de conversão a contagem deve ser repetida até alcançar o valor digital equivalente ao sinal de entrada, o que pode demorar vários ciclos de clock. Este conversor é adequado para o uso em aplicações onde é necessária uma boa resolução e uma taxa de conversão moderada. Por exemplo, um conversor com resolução de 14 bits e taxa de amostragem de 100 kHz. APROXIMAÇÃO SUCESSIVA Esta técnica é muito utilizada no conversor disponível comercialmente, principalmente que esta é a uma das que mais se aproxima da técnica tipo “flash” sem as desvantagens conhecidas. A figura abaixo mostra um conversor A/D que utiliza a técnica de aproximação sucessiva. Como pode ser observado na figura este tipo de conversor utiliza uma técnica de realimentação para relacionar uma Tensão analógica de entrada com um código digital correspondente (conforme os N bits de resolução do conversor). Este conversor permite maiores resolução que o conversor paralelo e os seus pontos críticos são o comparador e o conversor D/A, e, além de um circuito “sample and hold”, S/H que deve ser colocado na entrada destes para manter a voltagem entrada amostrada constante em todo processo de conversão. O ciclo de conversão é de (N+2) ciclos de clock. d) Renato tem um Braço mecânico controlado por um microcontrolador. O braço pode girar 180 graus e é controlado pelo microcontrolador com um conversor D/A. O Renato deseja poder posicionar o braço de um em grau. Indicar o mínimo número de bits do conversor que atende esta situação. Resp.: Como o braço pode girar até 180 graus e Renato quer posicioná-lo a cada grau, logo teremos um total de 180 posições. Para o microcontrolador trabalhar com este total de posições são necessários 8 bits, pois com 8 bits é possível ter 256 posições (28 = 256) e como com 7 bits teríamos apenas 128 posições (27 = 128) não nos atenderia. e) Uma válvula de controle de uma linha de vapor (de 0 a 100% de abertura) é Controlada por uma corrente de 4 a 20 miliAmpers. A corrente é fornecida por um micro controlador que tem na saída um conversor D/A. Indicar o número mínimo de bits do conversor para mudar a válvula de um em um per cento. Resp.: São necessários 7 bits, já que trabalharemos com um total de 100 posições (100%). Como 6 bits nos dá apenas 64 pontos (26 = 64), logo 7 bits nos fornece um total de 128 pontos (27 = 128).
Compartilhar