MICROPROCESSADORES Eng.ª Electrotécnica 2º Trabalho de Laboratório Portos de Entrada/Saída Ano lectivo 2005/2006 Ana Antunes
1- Objectivo Utilizar os portos de E/S (entrada/saída) de um microcontrolador da família 80C51 para enviar informação para o exterior e para recolher informação do exterior. 2- Introdução Os portos de E/S são utilizados para fazer a interface entre o microcontrolador e o exterior. Neste trabalho será utilizado o microcontrolador AT89C51 que possui quatro portos de E/S acessíveis através dos registos P0 a P3. 3 Esquema do sistema Utiliza-se como montagem base do sistema a montagem efectuada no primeiro trabalho de laboratório, à qual se juntam um bloco de interface de entrada e outro de saída. A figura 1 mostra o diagrama de blocos do sistema final. s de interface das entradas de reset oscilador AT89C51 1 40 P1.0 2 39 P1.1 P0.0(AD0) 38 3 P1.2 P0.1(AD1) 37 4 P1.3 P0.2(AD2) 5 36 P1.4 P0.3(AD3) 6 35 P1.5 P0.4(AD4) 34 7 P1.6 P0.5(AD5) 33 8 P1.7 P0.5(AD6) 9 RS 32 P0.7(AD7) T 10 31 P3.0(RXD) nea/vpp 11 30 P3.1(TXD) ALE/nPROG 12 P3.2(INT0) 29 npsen 13 P3.3(INT1) 14 P3.4(T0) 15 P3.5(T1) 16 P3.6(nWR) 28 P2.7(A15) 27 P2.6(A14) 26 P2.5(A13) 25 P2.4(A12) 17 P3.7(nRD) 18 XTAL2 19 XTAL1 20 GND 24 P2.3(A11) 23 P2.2(A10) 22 P2.1(A9) 21 P2.0(A8) Vcc regulador de tensão s de interface das saídas Alimentação externa Figura 1 Diagrama de blocos do sistema. 2
4 Montagem do sistema Os circuitos entrada e de saída devem ser implementados de acordo com as indicações descritas nos pontos seguintes. 4.1- de entrada Como dispositivos de entrada vão ser usados DIP switches que permitem enviar a informação requerida para os portos do microcontrolador. A ligação entre os DIP switches e o microcontrolador deve ser feita de acordo com o esquema da figura 2. DIP switch 10KOhm Porto do microcontrolador Figura 2 Esquema de montagem para ligação de um DIP swith a um porto E/S. 4.2- de saída Como dispositivos de saída vão ser utilizados LEDs por permitirem facilmente a visualização do valor de saída dos portos. O esquema de montagem a utilizar é apresentado na figura 3. Porto do microcontrolador 330 Ohm Figura 3 Esquema de montagem para ligação de um LED a um porto de E/S. 5- Programação do microcontrolador A programação do microcontrolador deve ser feita recorrendo ao programa seguinte: $MOD51 3
ORG 00H MOV P1, #0FFH MOV P2,P1 END Este programa deve ser editado utilizando um editor de texto e guardado num ficheiro com o nome lab2.asm. Para fazer a tradução da linguagem assembly para código máquina utilizase um programa designado assembler. O assembler a utilizar será o 8051 Macro Assembler da MetaLink Corporation. Para executar o programa assembler deve utilizar-se o comando: ASM51 lab2.asm O formato do ficheiro de programação aceite pelos microcontroladores de família do 80C51 designa-se por Intel hex. O programa assembler referido gera como resultado dois ficheiros designados lab2.hex, que contém o ficheiro executável no formato Intel hex, e lab2.lst que informa o utilizador de como decorreu a execução do programa. Quando são detectados erros no ficheiro inicial (erros de linguagem ou sintaxe, por exemplo) eles são reportados no ficheiro nome.lst, indicando a linha em que ocorreram e o tipo de erro. Edite o ficheiro lab2.lst e leia o seu conteúdo. A fase seguinte consiste no carregamento do ficheiro lab2.hex no microcontrolador e realizase recorrendo a um programa designado genericamente por loader e a um dispositivo de programação. O ficheiro lab2.hex deve ser copiado para uma disquete e carregado para o microcontrolador com o auxílio de um programador. 6- Realização de experiências Coloque os DIP switches numa posição à sua escolha. Ligue a alimentação do microcontrolador e pressione o botão do circuito de reset. 1 - Descreva o que aconteceu. Altere a posição dos DIP switches e pressione o botão do circuito de reset : 2 - Descreva as alterações verificadas. 4
Retire as resistências de pull-up apresentadas no esquema de montagem do DIP switch e repita o procedimento anterior. 3 Registou alguma alteração? 4 Estude o programa apresentado e descreva-o. 5 Tendo em conta o programa, explique os acontecimentos verificados em 1 e 2. 6 Altere o programa de modo a que os LEDs ligados aos pinos P2.0 e P2.1 estejam acessos e os LEDs ligados aos pinos P2.2 e P2.3 estejam apagados, independentemente da posição dos DIP switches. (É necessário executar novamente todo o processo de programação do microcontrolador). 7 Explique as alterações que efectuou no ponto 6. 8- Recorrendo ao datasheet do microcontrolador, explique porque é que as resistências de pull-up referidas anteriormente não são necessárias neste caso. 7- Cronograma e relatório Este trabalho deve ser realizado ao longo de duas aulas de laboratório. O relatório deve ser entregue até 15 dias depois da conclusão do trabalho. O relatório deve conter a descrição das operações realizadas ao longo do desenvolvimento deste trabalho de laboratório bem como as respostas às questões levantadas no ponto 6. 5