TODOPIC
Otros Microcontroladores / Dispositivos programables => Microcontroladores 8 bits => Mensaje iniciado por: The-Snake en 04 de Octubre de 2010, 10:12:47
-
Buenos dias. Tengo un problema con los micros de atmel, hace poco he empezado a programarlos en C usando el AvrStudio, y como programador el USBtinyISP, consigo programar el micro y hacer que me parpade el led, pero me usa el oscilador interno, como hago para que me use el oscilador externo? este es el codigo:
#define F_CPU 12000000UL /* Clock Frequency = 12Mhz */
#include <inttypes.h>
#include <avr/io.h>
#include <util/delay.h>
int main(){ // The main function
DDRB = 0b11111111; // Set all the pins of PortB as output
while (1) { // Set up an infinite loop
PORTB = 0b10000000; // Turn on LED1
_delay_ms(100); // Wait
PORTB = 0b00000000; // Turn on LED2
_delay_ms(100); // Wait
}
}
E intenado buscar solución por google, pero nose cual es el problema, tal vez a la hora de programarlo, pongo el comando que uso:
avrdude -c usbtiny -p atmega32 -U flash:w:prueba.hex
Como microcontrolador estoy probando el codigo en un ATmega32 y un ATtiny2313 y no va. Seguro que es algun fallo tonto/de novato...
-
Hola como andas Snake :mrgreen:
Mirá yo empezé con los ATMEL hace una semana y me está llendo muy bien , programando con WINAVR y PK2AVRISP.
Para poder usar un cristal externo tenés que configurar los fuses del microcontrolador.
Como hacerlo a ojo es muy problematico en algunos casos , existe una herramienta WEB :
AVR WEB FUSE CALCULATOR (http://www.engbedded.com/fusecalc)
Acá te deja que selecciones el chip y te da opciones para configurarlo.
Luego mejor no uses el AVRDUDE de forma directa sino mejor usando la suite AVR burn O mat.
Este programa que corre bajo java, te sirve para programar tus micros usando AVR dude sin necesidad de la linea de comandos.
AVR BURN O MAT (http://avr8-burn-o-mat.aaabbb.de/avr8_burn_o_mat_avrdude_gui_en.html)
Con este programa podés configurar tus fuses usando como referencia la página de configuración de fuses online.
Para saber más sobre los fusibles te recomiendo busques info en google, vas a encontrar mucho.
Saludos.
-
Muchas gracias por la información, estos de los fuses es un mundo jeje. el programa AVR BURN O MAT no consigo hacerlo funcionar, por ahí encontré otro el SinaProg que me va muy bien, la verdad es que estaba aburrido con la linea de comando del avrdude y de estar copiando a C:\ los *.hex cada ves que modificaba algo.
Por cierto que guía estas siguiendo?
-
No estoy siguiendo ninguna guía, solo me senté a experimentar y las cosas de a poco van saliendo ;-)
-
ok gracias.