Hay 4 Tipos de Representacion Representacion numérica: Binaria (0b11111110), Hexa H exa (0xFE o FE), decima! ("#4), $scii (%$&) (%$&) 'irecas (pseudoinstrucciones): *E+ *E+ -./T -./T "#4 (se usa para para deni denirr const constant antes es y para para dire direc* c* de de re2i re2istr stros os de de R$3 R$3 y FR) FR) *ET *ET -./T -./T "#4 (i2ua! (i2ua! a E+, E+, pero pero con e!!a e!!a se puede puede rede redenir nir)) T$B5$: *'B 601"74#8 601"74#89;6 9;6 (p *.R> 0x00 0x00 indi indica ca e! comi comien en?o ?o de! de! dir direc ecci cion onam amie ient nto o de de R$3 R$3 o R.3 R.3 *@/-5'E A37"'EF*@/-A *3$*3$- y *5@ *5@T T3$ 3$'en 'enic icio ion n de de 3ac 3acro ross y !ista !istado do de! de! mis mismo mo en *!st *!st par para a deb debu2 u2
5os Re2istros H:5 estCn en !a secciDn de R$3 correspondiente correspondiente a !os re2istros de @<.* Este re2istro es un puntero ue aunta a! T. (top oG de stac)* -omo e! stac crece desde abaIo Jacia arriba (norma!mente se inicia!i?a en R$3E/') con cada usJ su a!or decrementa decrementa en 1 y con cada . incrementa 1* E! stac es un buKer 5@F.* -$55: $! usar esta instrucciDn, se copia !a direcciDn de !a instrucciDn ue !e si2ue a! -$55 en e! * * E! a!or a!to de! pro2ram counter se copia primero en e! y !ue2o e! a!or baIo ( Recordar que en el atmega32 las direcciones ocupan 2 bytes )* En caso de tratarse de un micro con un - de "4 bits, se diide en 7 bytes y se Hean !os mCs si2nicaos primero* primero* .cupa 4 bytes bytes RET: RET: $! usar esta instrucciDn se toma e! top de! y se car2a en e! stac pointer, pointer, !ue2o se incremente a! en 1 (es decir Le uita de !a pi!aA, pi!aA, ya ue no Jace Ga!ta borrar !os a!ores ue no estCn en uso) R-$55: @2ua! a -$55, so!o ue ocupa " bytes, porue puede direccionar 1" bits* Es decir, decir, puede sa!tar entre M"04 y "049 instrucciones* @dea! para micros cJicos y para aJorrar memoria si es usada adecuadamente* odrNa odrNa ser usada para !!amados entre Gunciones de una misma bib!ioteca si !a misma no supera !os " de cDdi2o* /.: /o .peraon* sar runas de de!ay con mucJos !oop, ayuda a extender e! !imite de! iteraciDn mCximo de !a ariab!e de contro! ("##) a2re2ando e! retardo de! /., /., pero como contraparda, cada /. ocupa " bytes de R.3 (recordar ue cada instrucciDn de! $OR pesa dos bytes)* En caso de necesitar retardos mas !ar2os, se pueden anidar, pero se empeora !a precisiDn de! mismo, ya ue cada !oop !!ea un brancJ y e! brancJ puede durar 1 o " cic!os de ma dependiendo de si sa!ta o no*
@nterrupciones: $! sa!tar !a interrupciDn (so!o si estC aca obiamente), e! micro desaca e! Pa2 de interrupciDn 2!oba!* or esta ra?Dn se debe acar en e! Jand!er de interrupciDn* Esto normalmente se hace al fnal antes de la instrucción RET (por eso la runa de manejo debe ser lo mas rápida posible para ue una eentua! nuea instrucciDn de! mismo po ue !a ue se estC atendiendo, ue!a a sur2ir* En caso de uerer poder atender estas runas dentro de una runa de interrupciDn, se puede usar E@ a! principio de !a misma* Eeprom 3oer a ram y parCmetros por tac Oer ue es 3acros (a2ina "44) Oer conersiDn binario a $scii (a2ina "4") eria!i?in2 and rotan2 (a2ina 17) @3R@3@R -ercados de ExamenQQQQQ E! -$55ER de !a GunciDn es e! responsab!e de bacupear !os re2istro ue usa antes de !!amar a una G unciDn* 'e esta manera, se eitan perder datos necesarios en !os Re2istros Rn por ser usados en !a GunciDn !!amada u otra eentua! !!amada por esta otra* Reserar R"0 a R"# para !!amados y R10 a R1#
PWM
T-/Tn (Timer -ounter n): Re2istro ue es incrementado por e! presca!er .-Rn (Timr<-ounter n -ompare Re2ister): Re2istro donde se car2a e! a!or a comparar T--Rn (Timer<-ounter Re2ister -ontro!): Re2istro de con2uraciDn de! mer n T@30 (Timer<-ounter @nterrupt 3as Re2ister): Re2istro para Jabi!itar !a interrupciDn por matcJ en .-Rn$, .-RnB y !a interrupciDn por .erPoS de! contador @-RnH<5 (@nput -apture Re2ister): Re2istro de 18 bits usado para a!macenar e! pu!so capturado en modo -apture<-ompare* e puede u!i?ar como e! T. de! conteo En e! caso de! $tme2a7"p, e! T--Rn se desdob!a en T--Rn$ y B, ya ue ene dos unidades de comparaciDn* .Io: E! T--Rn$ y e! B se deben con2urar en conIunto para cada sa!ida =3, esto es, ue e! T--Rn$ no so!o se encar2a de con2urar !a sa!ida $ y e! B !a sa!ida BQ
@nterrupciones: -uando se !!ama a una interrupciDn, !a - desaca e! Pa2 de interrupciones de! RE>* $! o!er de una runa de interrupciDn, Jacer!o con RET@, ue ademCs de dar !a Gunciona!idad de! RET comn, aca e! Pa2 de interrupciDn automCcamente (ene un E@ imp!icito)* i bien se diIo ue a! ir a una runa de interrupciDn !a cpu ap!ica un -5@, también se pueden acar dentro de e!!a nueamente !as interrupciones para crear interrupciones anidadas*