El AT mega8 es un microcontrolador excelente

17
TRADUCCION POR GOOGLE TRADUCTOR DESDE LA PÁGINA http://www.pocketmagic.net/2009/02/first-steps-with-micro-controllers- atmega8/#.UuhDb9K3W1t Primeros pasos con microcontroladores (ATMEGA8) Por Radu Motisan Publicado el 11 de febrero de 2009 El ATMega8 es un microcontrolador excelente: 28 PINS (23 de entrada / salida!) 8 Kbytes de auto-programación de Flash de memoria del programa 1-Kbyte SRAM 512 octeto EEPROM 6 o 8 canales de 10 bits A / D convertidor Hasta 16 MIPS de rendimiento de procesamiento en 16 Mhz 2.7 - operación 5.5 Volt su hoja de datos está disponible aquí

description

Traduccion de articulo publicado en internet relacionado al microcontrolador ATmega8

Transcript of El AT mega8 es un microcontrolador excelente

Page 1: El AT mega8 es un microcontrolador excelente

TRADUCCION POR GOOGLE TRADUCTOR DESDE LA PÁGINA

http://www.pocketmagic.net/2009/02/first-steps-with-micro-controllers-atmega8/

#.UuhDb9K3W1t

Primeros pasos con microcontroladores (ATMEGA8)

Por Radu Motisan Publicado el 11 de febrero de 2009

El ATMega8 es un microcontrolador excelente:

28 PINS (23 de entrada / salida!) 

8 Kbytes de auto-programación de Flash de memoria del programa 

1-Kbyte SRAM 

512 octeto EEPROM 

6 o 8 canales de 10 bits A / D convertidor 

Hasta 16 MIPS de rendimiento de procesamiento en 16 Mhz 

2.7 - operación 5.5 Volt 

su hoja de datos está disponible aquí

Page 2: El AT mega8 es un microcontrolador excelente

Le sugiero que descargar la imagen ATMega8 a la izquierda e imprimirlo, ya que lo

necesitará a menudo para consultar la distribución PIN al hacer su circuito.

Los pines de entrada / salida son importantes cuando se trata de la cantidad de

dispositivos que desea conectar / control / uso.Para controlar un simple LED tendrá que

utilizar 1 PIN (para salida). Para controlar un sensor de temperatura, tendrá otro

número de identificación (por entrada).

Para hacer un circuito simple y la potencia del microcontrolador, lo primero que necesita saber es que se necesita una fuente de alimentación de 5V estable. La mejor manera de lograr esto es utilizar un regulador como el 7905/7805. Este componente tiene salida constante independientemente de la corriente de entrada - en lo que respecta a algunos límites dados, por supuesto. 

Page 3: El AT mega8 es un microcontrolador excelente

Aquí es el circuito. Le sugiero que utilice sockets para el ATMega8, cambiar fácilmente su ficha en su tablero. Mediante la implementación de los esquemas anteriores, usted tendrá el microchip alimentada. Pero tendrá que programarlo con el fin de tener un resultado útil.

El desarrollo del software ATmega

Vamos a intentar algo simple - como controlar un LED de encendido / apagado. 

Para ello, tenemos que conectar el LED a cualquiera de los de ATMega8 E / S disponible

pins. 

Usaré Pin 28 llamado PC5. Este pin es parte del conjunto de PORTC de 7 pins PC0 -

PC6. Observe que hay otros conjuntos de pines como PORTB (PB0-PB7) y PORTD (PD0-

PD7).

Page 4: El AT mega8 es un microcontrolador excelente

Así que el cableado es como esto:

A continuación, tendrá un compilador de C para el ATMega8 y un programador de software que va a cargar el código compilado en el sistema micro. Para el compilador que he usado AVR Studio de Atmel. Descargue los 3 archivos debajo e instalarlos en el orden dado (el estudio avr sí mismo y 2 paquetes de servicios adicionales): 1 AVR Studio, versión 4.13, construir 528 (73.8mb) 2 AVR Studio 4.13 SP1 (Build 557) (37mb) 3 AVR Studio 4.13 SP2 (build 571) (45mb)

Para el cargador que he usado avrdude que viene con el paquete WinAVR: WinAVR

Tan pronto como se haya instalado todo, empezar AVR Studio. Usted obtendrá una

página como esta: Haga clic en "Nuevo proyecto" y seleccione GCC AVR, a

continuación, agregar un nombre de proyecto "TestLED" y seleccione una ubicación

para almacenar los archivos del nuevo proyecto:

Page 5: El AT mega8 es un microcontrolador excelente

 Haga clic en Siguiente, y en esta nueva página será posible seleccione "AVR

Simulator" y hacia la derecha en Dispositivo, seleccione ATMega8 como se muestra a

continuación: Simplemente pulse Finalizar, y usted puede comenzar a escribir el

código:

Page 6: El AT mega8 es un microcontrolador excelente
Page 7: El AT mega8 es un microcontrolador excelente

Lo primero es lo que necesitamos saber: 

# include

Incluirá esta biblioteca en nuestro proyecto para que podamos acceder a las funciones

básicas de entrada / salida y macros.

int main () es el punto de entrada de nuestro programa, aquí es donde comienza la

ejecución del programa.

Por lo tanto, lo primero que debe hacer es establecer el PORTC como salida. Para ello

vamos a utilizar un registro especial llamado DDRC: 

DDRC = 0x20;

por qué 0x20? Vamos a echar un vistazo en binario:

PC

6

PC

5

PC

4

PC

3

PC

2

PC

1

PC

0

0 1 0 0 0 0 0

Page 8: El AT mega8 es un microcontrolador excelente

. Básicamente establecemos un valor de 1 a la posición asociada con nuestro pin de

destino 

Para configurar todos los pines de salida, el valor hubiera sido: DDRC = 0x7F (en

binario: 1111111)

Para controlar otros puertos (B o D) que puede utilizar DDRB o DDRD de una manera

similar. En este punto, usted debe consultar la hoja de datos del microcontrolador

disponible aquí .

Lo siguiente que hay que hacer es encender el LED y fuera del código. Queremos que

esta en un bucle infinito, así que aquí está el enfoque:

  DDRC = 0x20; //PC5 set to output while (1) //forever { PORTC = 0x20; //set PC5 on . again computed in binary delay_cycles(1000); //a short delay to keep led on PORTC = 0; //all C Pins off delay_cycles(1000); //a short delay to keep led off }

Un enfoque aún mejor que no interfiere con la configuración de otros pines PORTC sería:

  DDRC |= 0x20; while(1) { PORTC |= 0x20; //set 1 on first position, or simpler: PORTC = 0x20; waitd();

Page 9: El AT mega8 es un microcontrolador excelente

PORTC &= 0x5F; //remove position 5 value, or simpler: PORTC = 0x0; waitd(); }

Después de que el código está listo, pulse Construir en el menú. Producirá un archivo hex., En este caso testled.hex

After the code is ready, press Build in the menu. It will produce a .hex file, in this case testled.hex

Un programador paralelo para la ATMega 8

Un programador es una interfaz de hardware que se conecta el micro controlador a un

PC. 

En el PC se crea un programa de software, que luego se puede cargar en el ATMega8

utilizando el programador. Es muy sencillo.

Para facilitar las cosas, voy a describir cómo se puede crear un programador paralelo,

pero esto va a funcionar para usted si su computadora tiene un puerto paralelo ya que

es donde tiene que conectarlo. Si no lo hace, usted puede comprar un adaptador

USB2Parallel o construir un programador USB directamente (puede usar este ) 

Utilice cualquiera de las tres variantes de abajo. Mi primer programador era un

programador BSD paralelo.

Programador paralelo BSD

El primero se llama bsd, probablemente porque estaba disponible originalmente en el

programa AVRprog para FreeBSD. 

Para este programador paralelo se necesita un conector de 25 pines LPT y 4x470

ohmios resistencias. Esta es la manera que usted necesita para hacer las conexiones

para el programador paralelo tipo BSD: Así es como me las he arreglado para

Page 10: El AT mega8 es un microcontrolador excelente

ajustarlo: . Para descargar el archivo HEX generado previamente a la atmega8,

utilizaremos nuestro programador BSD paralelo. Ir a la carpeta WinAVR, y entrar en la

subcarpeta BIN. . Copia testled.hex aquí y asegúrese de que su programador paralelo

está conectadoEscriba este comando: avrdude-p-c atmega8 bsd-U del flash: w:

testled.hex: i

Page 11: El AT mega8 es un microcontrolador excelente
Page 12: El AT mega8 es un microcontrolador excelente

To download the previously generated .HEX file to the atmega8, we will use our Parallel BSD programmer. Go to WinAVR folder, and enter the BIN subfolder. Copy testled.hex here and make sure your parallel programmer is connected.Type in this command:avrdude -p atmega8 -c bsd -U flash:w:testled.hex:i

programador paralelo STK200Esta fue mi segunda generación. Se comporta como el AVR Starter Kit STK200, y también es compatible con el software PonyProg . El diseño es simple: Para escribir el hexágono que puede utilizar: avrdude-p-c atmega8 STK200-U del flash: w: testled.hex: i

Page 13: El AT mega8 es un microcontrolador excelente

DAPA programador paraleloI más reciente construido esto, ya que no mucho tiempo después de que el STK200 me mudé a los programadores usb. Dapa, lo que significa directo AVR cable Acceso paralelo, se puede ver a continuación: El comando para escribir el hexágono es: avrdude-p-c atmega8 DAPA-U del flash: w: testled.hex: i

Page 14: El AT mega8 es un microcontrolador excelente

Los resultados:

Después de la orden avrdude, si todo va bien, verá una barra de progreso que indica la

carga de código para el microcontrolador:

Page 15: El AT mega8 es un microcontrolador excelente

Tan pronto como el software está cargado, se ejecuta automáticamente el código. A

veces puede que tenga que desconectar el programador paralelo después de

que el código se ha subido!

Aquí está mi ATMega8 micro controlador y varios leds conectados a múltiples pines de

E / S:

Page 16: El AT mega8 es un microcontrolador excelente
Page 17: El AT mega8 es un microcontrolador excelente

Espero que encuentre útil. Nuestro agradecimiento a

elforum.ro and the good people thereSociety of Robots tutorialsCrazyTB's blog

Yo ya he construido una interfaz LCD HD44780 4bit muy estable y flexible para el

ATMega8, así que estad atentos para el próximo artículo.

Puede descargar el código aquítestled.zip