ATMEGA328P usando oscilador interno 8MRC (2015-07-05 19:50:49)
Estoy usando ATMEAGE328P y no quiero implementar PWM yo mismo. Viene con PWM de 6 canales. Para ser más livianos, no diseñamos un oscilador de cristal externo y planeamos usar uno interno.
El tablero está colocado, pero con un par de tableros de control Bluetooth en mi espalda, mi cabeza está rota y mis piernas están mal.
No queda más remedio que probar primero el programa.
Para admitir el entorno de desarrollo Ardunio, consulte esta página y pruebe con éxito en Ardunio 1.0.4
http://forum.arduino.cc/index.php?topic=124879.0
Primero, use un editor de texto para abrir el Makefile en arduino-1.4\Hardware\arduino\bootloaders\optiboot y agregue la siguiente configuración después de la sección estándar atmega328p:
# Estándar atmega328, solo en 38,400 baudios para una mayor precisión del reloj Y usando un oscilador RC interno de 8 Mhz
#
atmega328_384_8:TARGET = atmega328
atmega328_384_8:MCU_TARGET = atmega328p
atmega328_384_8: CFLAGS = '-DLED_START_FLASHES=3' '-DBAUD_RATE=38400'
atmega328_384_8: AVR_FREQ = 8000000L
atmega328_384_8: LDSECTIONS= -Wl, --section-start=.text = 0x7e00 -Wl, --section-start=.version=0x7ffe
atmega328_384_8: $(PROGRAMA)_atmega328_384_8.hex
atmega328_384_8: $(PROGRAMA)_atmega328_384_8.lst
atmega328_384_8_isp: atmega328
atmega328_384_8 _isp: TARGET = atmega328
atmega328_384_8_isp: MCU_TARGET = atmega328p
# arranque de 512 bytes, SPIEN
atmega328_384_8_isp: HFUSE = DE<
# Int.RC Osc.8MHz, la potencia aumenta lentamente -65ms
atmega328_384_8_isp: LFUSE = E2
# 2.7V Apagar
atmega328_384_8_isp.EFUSE = 05
atmega328_384_8_isp: isp
Luego abra el programa de consola de Windows y vaya al archivo hardware\arduino\bootloaders\optiboot
p>Escribe e ingresa en la consola
omakeatmega328_384_8
El parámetro atmega328_384_8 se refiere al archivo HEX definido anteriormente que admite el RC interno de 8M.
Una vez completada la compilación, se generará atmega328_384_8.hex.
Ahora use un editor de texto para abrir el archivo board.txt en arduino-1.0.4\hardware\arduino y agregue el siguiente texto
######### # ################################################ # #
atmega328_384_8.name=ATmega328 Optiboot @ 38, 400 baudios con 8MHz Int.
atmega328_384_8.upload.protocol=arduino
atmega328_384_8.upload.maximum_size = 30720
atmega328_384_8.upload.speed=38400
atmega328_384_8.bootloader.low_fuses=0xE2
atmega328_384_8.bootloader.high_fuses=0xDE
atmega328_384_8 .bootloader.extended_fuses=0x05
atmega328_384_8.bootloader.path=optiboot
atmega328_384_8.mcu=atmega328p
atmega328_384_8.build.f_cpu=8000000 L
atmega328_384_8.build.core=arduino
atmega328_384_8.build.variant=standard
Esto completa una nueva placa de circuito. Cierre el IDE de ardunio y vuelva a abrirlo y la lista de placas ahora incluirá el ATmega328 Optiboot @ 38, 400 baudios con oscilador Int.RC de 8 MHz.
Después de marcar la casilla, lo probé y lo grabé en el gestor de arranque sin ningún problema.
En cuanto a la placa que diseñé yo mismo, tendré que volver a prototiparla.
En cuanto a la placa de circuito que diseñaste, tienes que volver a crear un prototipo.