AVR

De Proyectos
Ir a la navegación Ir a la búsqueda

http://crysol.org/es/node/333
http://arduino.cc/forum/index.php?topic=76191.0;wap2
http://www.cesarcancino.com/video-tutorial-1-del-curso-de-programacion-de-microcontroladores-atmel-avr-en-lenguaje-c-n303.html
http://imakeprojects.com/Projects/avr-tutorial/
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=70673
https://www.sparkfun.com/tutorials/57 - tutoriales de microcontroladores en ingles


Información Complementaria

Recursos

http://www.utm.mx/~fsantiag/Micros.htm


Imagen Cortex-M ARM (CPU, Memoria, Perifericos, ...)

Imagen CPU Cortex-M4 ARM

Imagen Memoria Cortex-M4 ARM

Tipos CPU:

  • CISC (Complex Instruction Set Computers)
    • Hardware complejo y un bajo rendimiento
    • Demasiadas instrucciones con diferentes tamaños y formatos, que pueden ocupar varios bytes
  • RISC (Reduced Instruction Set Computers)
    • Hardware es simple y resuelve pocas instrucciones. Alto rendimiento.
    • Pocas instrucciones y generalmente del mismo tamaño



Tareas CPU (FALTA MAS INFO):

  • Atrapar la instrucción
  • Decodificación
  • Ejecución

Tipos de memoria:

  • Memoria de Código
    • Es en la que se almacena el programa
    • Es no volátil
    • Es la comunmente llamada ROM, y la tecnologia flash es una de las utilizadas para almacenar la ROM
      • La memoria flash se borra mediante impulsos eléctricos. Es una sucesora de la EEPROM
  • Memoria de Datos
    • Es la que almacena las variables del programa
    • Es volátil
    • Es la comunmente llamada RAM. La tecnologia que se utiliza para los microcontroladores es la SRAM
    • También nos podemos encontrar con microcontroladores que ademas tienen memoria EEPROM para guardar datos cuando se corta la electricidad

Sistema de memoria:

  • Arquitectura Von Neumann
    • La Memoria de Código y la de Datos comparten el Bus hacia la CPU
  • Arquitectura Harvard
    • Hay un bus para la Memoria de Código y otro bus para la Memori de datos



Tema 2

Memoria microcontroladores

Tipos de memoria
Memoria RAM (SRAM)
Memoria ROM (EEPROM)
Memoria ROM (Flash)

ISA (Instruction Set Architecture)

Registros ARM ISA
R1...R12 - General Purpose Registers
R13 - Stack Points (Almacena la dirección del elemento top de la pila)
R14 - Link Register (Almacena la dirección devuelta por las subrutinas)
R15 - Program Counter (Almacena la dirección de la siguiente instrucción a ejecutar)
PSR - Process Status Register - Es otro registro que en 4 bits almacena el estado del sistema después de una operación de la ALU (N Z V C). N resultado negativo, Z resultado es 0, V overflow signed numbers y C overflow unseigned numbers

Assembly language instrucctions
Label - Opcode - Operand - Comment
FUNC - MOV - R0,#100 ; Pone 100 en R0

  • Label field:
  • Opcode field:
  • Operand field:
  • Comment ifeld:



Las instrucciones se pueden clasificar en 4 categorias:

  • Acceso a la memoria
  • Instrucciones aritméticas y lógicas
  • Instrucciones de control
  • Resto de instrucciones



Memory Map Layout

  • ROM/Flash
  • RAM
  • I/O Ports
  • Internal I/O