Você está na página 1de 8

Microcontrolador 8051 Detalhado ( Denys E.C. Nicolosi) 2.

5 - Exerccios de Fixao
1. Quais so os recursos bsicos existentes na famlia 8051? Procure sites da Internet (vide Bibliografia) sobre a enorme variedade de opes disponveis, principalmente da Philips e Atmel. Liste os opcionais que no foram descritos neste livro. O que o 80C552 tem a mais que os outros aqui citados? 2. Desenhe, mo livre, o bsico da arquitetura interna do 8051 em um papel, s consultando o livro no caso de dvidas. Detalhe tambm a ligao bsica de uma RAM e EPROM externas, no caso do 8031. 3. Existe, no mercado, um Mc da linha do 8051 s de 16 bits (vide: 80C51 XA da Philips ou MCS251 da lntel nos sites desses fabricantes). Quais so as diferenas bsicas com relao famlia 8051? 4. Descreva o port 3, quando ele usado para comunicao com memria externa e com perifricos. Esse port pode ser usado, parcialmente, com os perifricos e ao mesmo tempo, com os pinos restantes como port normal? 5. Qual o motivo bsico de o port P0 ser multiplexado entre funes de Endereo Menos Significativo e Dados? Desenhe, mo livre, um chip de 40 pinos da famlia 8051 (o 8031, por exemplo), sua respectiva pinagem e funo de cada pino. Para que serve o pino ALE? 6. O pino PSEN serve tambm, tradicionalmente, para acionar outra memria alm da EPROM? Para que se prestam os pinos RD e WR do port P3? Eles enviam informao recebem informao? Como funcionam? 7. Pesquise sobre o 80550 na lnternet (Philips). Que perifricos ele tem, internamente, a mais que o 8051? Quando se utilizam os canais de ND, o port 1 comprometido? Eu posso dividir este port P1 entre algumas entradas de ND restantes, como port 1/O normal? 8. Por que, para pequenas quantidades de produo, no se utiliza o chip 8051? Por que no se utiliza o chip 8051 para construir prottipos? (vide tabela 2.1 pesquise na lnternet). 9. Os pinos do port P3 (P3.2 e P3.3), quando utilizados para interrupo, toma pinos de entrada ou de sada? Por qu? 10. Os pinos do port P3 (P3.4 e P3.5), quando utilizados para contagem externa, tomam-se pinos de entrada ou sada? Por qu? 11. Os pinos do port P3 (P3.0 e P3.1), quando utilizados para comunicao serial, tornam-se respectivamente, de que funo? 12. Desenhe, mo livre, o esquema completo de ligao de uma EPROM de 32 Kbytes em um 8031. Quantos pinos do port P2 foram utilizados? Por qu?

13. Qual a aplicao do pino EA? Como ele fica ligado quando se utiliza o chip 8031? Na famlia 8052, h uma ROM interna ao chip que tem gravado de fbrica interpretador BASIC. Qual sua opinio sobre a ligao do pino EA neste caso? 14. Qual o mximo de tenso de alimentao que voc pode aplicar nessa famlia de Mc? (Pesquise em manual ou na lnternet: 8051 Absolute Maximum Ratings or DC Electrical Characteristics). 15. O pino EA chamado nos chips com EPROM interna (8751, 8752 e 87550) de EA\Vpp. O Vpp representa o pino de programao da EPROM interna nestes casos. Qual o valor tpico de tenso aplicada em Vpp? Pesquise como se programa uma EPROM interna desses chips (vide, por exemplo, manual Intel - 8051 (MCS51) EPROM Characteristics). 16. Qual a capacidade mxima de endereamento de EPROM e RAM externa na famlia 8051? E de RAM interna? 17. Descreva os registradores intitulados banco O a banco 3. Explique a problemtica dos apelidos R0 a R7 com relao aos bancos O a 3. Desenhe, mo livre, esses bancos, seus endereos iniciais e finais absolutos e seus apelidos. Esses registradores so de uso geral ou especial? 18. Os registradores de funes especiais (Special Function Register - SFR) tambm so volteis? Isto , quando desligo o Vcc do chip, eles perdem totalmente a memria? 19. Desenhe, mo livre, todos os grupos de registradores de uso geral e seus endereos absolutos, indicando regio de bancos, bit/byte enderevel e byte enderevel. Quantos so ao todo? E por grupo? 19.Desenhe, mo livre, todos os registradores de funes especiais - SFR, com seus endereos de byte e seu nome (no detalhar os endereos de bit). Explique resumidamente o que quer dizer cada nome em ingls e seu significado em portugus. Desenhe, depois, quatro blocos separados para: SER s do Mc, SFR s dos timers (2 perifricos), SFR s da serial (1 perifrico) e dentro deles desenhe os seus respectivos SFRs. 21. Por que o registrador ACC to popular, se ele , em tese, igual a qualquer outro registrador? 22. Como voc v a importncia dos SFR para trabalhar com essa mquina microcontrolada. E importante? Fornece o estado atual da mquina? Voc realmente controla a mquina olhando para eles? 23. O que DPTR? Qual sua funo? 24. Descreva, detalhadamente, o SFR chamado PSW e a funo de cada bit. 25. Descreva a funo e manipulao bsica do SFR chamado Stack Pointer - SP. 26. Qual aplicao tpica do registrador B?

27. Descreva o SFR chamado PCON. 28. Qual a diferena e a funo das instrues: mov A, R0 mov A,00h mov A,#00h 29. Quantos ports temos na famlia 8051 e quais esto livres para uso geral? Qual a diferena de disponibilidade de ports entre os chips: 8051, 8751 e 8031? Por qu? D o endereo absoluto de cada port e seu nome. 30. Liste os SFR dos perifricos e resuma suas funes em cada linha que tem o seu nome.

3.4 - Exerccios de Fixao


1. O clock do 8051 pode ser gerado por cristal e por um clock externo. Se voc quiser sincronizar um circuito digital que j tem um clock de referncia, qual das opes utilizar? 2. crtico o desenho do layout para circuito oscilador a cristal. Pesquise em algum livro, esquema ou pela lnternet o quo prximo fica o circuito cristal-capacitores do chip. 3. Desenhe, mo livre, um ciclo de mquina completo. 4. Cada pulso P1 ou P2 do ciclo de mquina corresponde a que frequncia? (referindo-se ao clock da mquina) 5. Se tenho clock de 6 MHz, que perodo terei de ciclo de mquina? 6. De que se constitui um estado? 7. Desenhe, mo livre, o sistema tpico de reset do 8051. 8. Faa voc mesmo, mo livre, um resumo das condies de RESET com relao RAM interna do 8051. 9. No RES EI, os ports P0, P1, P2 e P3 ficam em Vcc ou Vss? 10. No RESET, o PC (Program Counter) que realiza a contagem de cada passo do programa fica em que valor? razovel isto? Por qu? 11. Hoje existem chips da Famlia 8051 com clock acima de 60 MHz! Pesquise na lnternet (Philips, Atmel, AMD, lntel, etc.).

4.3 - Exerccios de Fixao


1. Qual a diferena bsica, no seu circuito interno, dos ports P1, P2 e P3 com relao ao P0? 2. Qual a diferena bsica entre ler o pino e ler o latch, quando se olha com Detalhes o circuito de sada dos ports ? Que problema pode ocorrer se ler somente O pino e nunca o latch ? 3. Quais instrues, quando aplicadas em cima dos ports, podem causar problemas? Que tipo de problemas elas podem causar ? 4. Qual o tempo mnimo que um dado deve permanecer no port para ser lido efetivamente? 5. O que significa Read-Modify-Write Instructions ?

5.4 - Exerccios de Fixao


1. Liste os modos de endereamento das instrues e depois responda de que tipos so as instrues seguintes: a. mov A,R3 j. add A,R0 b. mov B,#23h k. add A,00h c. mov B,23h 1. add A,#00h d. mov A,@R0 m. mov DPTR,#1 F00h e. mov A,#OOh n. mov A,P1 f. lcall DESVIO o. cjne A,20h,DESVIO g. jmp @A+DPTR p. cine A,#20h,DESVIO h. sjmp DESVIO q. djnz R0,DESVIO i. setb 20h 2. Qual a vantagem de usar ACALL com relao LCALL? o mesmo para AJMP e LJMP? 3. Qual a faixa (range) de desvio da instruo SJMP? Qual a faixa possvel para cima e para baixo do endereo desta instruo? 4. Como indexar at 64 Kbytes de endereo com o registrador DPTR? Quais instrues utilizam o DPTR como indexador? 5. Classifique as instrues do exerccio 5.4.1 sob o ponto de vista tipos de instruo, isto , instrues aritmticas, lgicas, de transferncia de dados, booleanos ou de desvio. 6. Qual a instruo de retorno de um CALL? E de uma interrupo atendida? 7. Liste os diferentes operandos que a instruo ADD pode ter. 8. Para que serve a instruo ADDC?

9. Onde ficam as partes mais significativa e menos significativa de uma multiplicao mul AB? 10. Onde ficam o resultado e o resto da diviso div AB ? 11. Para que serve a instruo da A? 12. Qual o resultado da operao r lc , se A= #01h e C=#1? 13. Qual o resultado de anl A,#0EEhi, se A= #11h? 14. Qual o resultado de swap A, se A= #0lh? 15. Se Ri= #33h e A= #22h, aps a instruo mov A,R1, como ficam os contedos de Rl e A? 16. Se o registrador 22h tem contedo 05h e R1 = # 22h e A = #03h, como ficam os contedos do registrador 22h e de A aps a instruo mov A, @ R1 ? 17. O que acontece com o contedo dos registradores A = #03h, B = #05h e R = #07h, aps as instrues: push A push B push R1 pop A pop B pop R1 18. Por que muitas vezes os programas em assembler com o 8051 primeiramente movem o Stack Pointer (SP) para outra posio acima de 07h? 19. Se DPTR = 1000h e no endereo 1000h da RAM temos o contedo #0EFh, qual o valor que teremos em A aps: mov A,#2h movx A,@DPTR add A,#Olh 20. Qual a faixa (range) de indexao da instruo: movx A,@Ri 21. Se DPTR = 1000h e no endereo 1001h da EPROM temos o contedo #33h e A = #01 h, qual o contedo de A aps a instruo: movc A,@A+DPTR 22. Se o registrador 20h (que bit enderevel) tem valor #l0h, com qual valor ele ficar aps a instruo: setb 00h 23. Por que no se faz confuso entre as instrues de mover para A dados da RAM interna, da RAM externa ou da EPROM?

24. Realize uma operao booleana AND entre os bits 00h e 01h do byte 20h da RAM interna, utilizando as instrues lgicas booleanas. 25. Qual o valor do bit 00h, aps: setb C jc DESVIO mov 00h,C DESVIO: cpl C mov 00h,C 26. Qual a diferena bsica entre SJMP, AJMP e LJMP? 27. Qual o valor final de Ri aps o seguinte programa: mov R0,#07h mov Ri,#00h djnz R0,CONTA sjmp SAIDA CONTA: inc R1 SAIDA: nop 28. Como fica o valor de B aps as instrues: mov B,#67h mov A,B swap A mov B,A 29. Qual a utilidade de certas instrues afetarem o registrador PSW? Quais bits do PSW elas costumam afetar?

6.6 - Exerccios de Fixao


1. O que uma interrupo vetorada? 2. Quais so as interrupes externas ao Mc 8051? 3. Quais so as interrupes internas ao Mc 8051? 4. Que tipo de disparo pode-se programar com relao interrupo gerada externamente? Como so programados? 5. Qual a sequncia natural de prioridades que as interrupes do Mc 8051 apresentam? 6. Desenhe, mo livre, uma pequena tabela que cite as interrupes do Mc 8051 e seus respectivos endereos de desvio.

7. Por que no se pode desenvolver um programa grande de servio de interrupo partir do prprio endereo dessa interrupo? 8. Para que serve o registrador IP? 9. Para que serve o registrador IE? 10. Programar as palavras IP, IE e TCON no Mc 8051 para que: a) SERIAL tenha maior prioridade; b) TIMER0 tenha segunda prioridade; c) tenha terceira prioridade, sensvel a nvel; d) Os outros perifricos no habilitados. 11. Qual a diferena entre as instrues RET e RETI?

7.5 - Exerccios de Fixao


1. Resuma em uma tabela as diferenas entre os modos 0,1, 2 e 3 do Timer, quanto capacidade de contagem, recarga, acionamentos por TR, Gate e , e os flags de estouro de contagem. 2. Crie um contador de eventos, por meio do TIMER 0, para contar de 0 at 100 eventos, ento interromper o microcontrolador e faz-lo contar as centenas acumuladas no registrador R0, at 100 centenas. Aps isto, ele parar a contagem e acionar o port P1.0, piscando ininterruptamente em intervalos de 1 em 1 segundo usando o TIMER 1. 3. Crie uma rotina para contar 5 s com preciso, e ento pulse o port P1.7 ininterruptamente (com duty-cycle de 50% e perodo total de 10 s). 4. Crie um medidor de largura de pulsos com o timer em Modo 1. Utilize a entrada externa INT para entrar com o pulso externo e use o TIMER em 16 bits para contar a largura de pulso, com resoluo de 1 s (clock de 12 MHz). Quais so as larguras mxima e mnima que podem ser medidas, se exigirmos resoluo mnima de 1% da largura?

8.7 - Exerccios de Fixao


1. Qual a diferena bsica entre comunicao serial sncrona e serial assncrona? 2. Qual a frequncia de transmisso do modo sncrono? 3. Quais so as tpicas frequncias de transmisso do modo assncrono? 4. Se compararmos os Modos 2 e 3 de transmisso, eles so praticamente iguais, a menos do fato do Modo 2 ter frequncias fixas de transmisso e o Modo 3, frequncias alternveis pelo Timer 1. Ento, qual a vantagem do Modo 2?

5. Qual a utilidade de enviarmos e recebermos um nono bit junto com o byte transmitido? 6. Tente explicar como funciona, passo a passo, o sistema de expanso de I/O por meio da serial, ilustrado na figura 8.4 deste captulo. 7. Programe as palavras SCON, TMOD e PCON para criar uma comunicao serial em Modo 3 com baud-rate de 4.800 bps, a 12 MHz. Calcule o erro que se obtm entre o baud-rate desejado e o obtido. E um erro percentual aceitvel? 8. Usando as palavras do exerccios anterior, crie um programa que transmita um nico dado contido no acumulador, pela serial, sem usar interrupo e tendo paridade mpar (vide itens 8.6.b a 8.6.f).

Você também pode gostar