CURSO PRÁCTICO PARA PROGRAMACIÓN DE AVR

CURSO PRÁCTICO PARA PROGRAMACIÓN DE AVR

PAREDES MARTÍNEZ, ERNESTO

29,50 €
IVA incluido
Solo 1 en stock
Editorial:
MARCOMBO S.A. BOIXAREU ED
Año de edición:
2024
Materia
Informática
ISBN:
978-84-267-3858-5
Páginas:
480
Encuadernación:
RUSTEGA

Parte 1
Capítulo 1
Programando........................................................................................................................3
Capítulo 2
Primer programa en AVR (encender un LED)..................................................................7
Capítulo 3
Encabezado.........................................................................................................................17
3.1. Directiva .ORG: indica el origen o inicio del programa........................................30
3.2. Directiva .CSEG: Code Segment...........................................................................33
3.3. Directiva .ESEG: EEPROM Segment...................................................................39
3.4. Directiva .DSEG: Data Segment...........................................................................44
3.4.1. Problema en el segmento .DSEG........................................................................48
Capítulo 4
Configuración.....................................................................................................................49
4.1. Stack Pointer..........................................................................................................49
Capítulo 5
Cuerpo del programa........................................................................................................55
5.1. Subrutinas..............................................................................................................55
5.2. Puertos...................................................................................................................56
Capítulo 6
Pull-up y pull-down...........................................................................................................59
Capítulo 7
Ciclo While.........................................................................................................................63
Capítulo 8
Programa 2 (botón enciende LED)...................................................................................65
Capítulo 9
Programa 3 (puerto bidireccional)...................................................................................67
Curso practico para programacion de AVR.indb 9 26/7/24 13:13
X Contenido
Curso práctico para programación de AVR ? Ernesto Paredes Martínez M arcombo
Capítulo 10
Programa 4 (máscara).......................................................................................................73
Capítulo 11
Programa 5 (subrutina de un segundo)...........................................................................75
Capítulo 12
Ciclo For.............................................................................................................................81
12.1. Programa 6 (retraso de 1 minuto usando el ciclo For).......................................82
Capítulo 13
Debouncer (función antirrebote)......................................................................................85
13.1. Programa 7 (Delay_Debouncer)........................................................................86
Capítulo 14
Programa 8 (control de un motor de pasos unipolar).....................................................89
Capítulo 15
Programa 9 (control de velocidad de un motor CD).......................................................93
Capítulo 16
Direccionamientos..............................................................................................................97
16.1. Direccionamiento directo de un solo registro....................................................97
16.2. Direccionamiento directo de dos registros........................................................98
16.3. Direccionamiento directo de I/O.......................................................................98
16.4. Direccionamiento directo de datos....................................................................99
16.5. Direccionamiento indirecto de datos con desplazamiento...............................100
16.6. Direccionamiento indirecto de datos...............................................................100
16.7. Direccionamiento indirecto de datos con predecremento................................101
16.8. Direccionamiento indirecto de datos con postincremento...............................101
16.9. Direccionamiento a la memoria del programa.................................................102
16.10. Direccionamiento indirecto a la memoria del programa, IJMP e ICALL.......103
16.11. Direccionamiento relativo a la memoria del programa...................................103
Capítulo 17
Instrucciones orientadas al bit........................................................................................107
Capítulo 18
Interrupciones.................................................................................................................. 111
18.1. Programa 10 (encender un LED con una interrupción INT0)...........................119
Curso practico para programacion de AVR.indb 10 26/7/24 13:13
Contenido XI
Marcombo C urso práctico para programación de AVR ? Ernesto Paredes Martínez
Capítulo 19
Reset entre los AVR..........................................................................................................129
Capítulo 20
Instrucciones del control del MCU.................................................................................135
Capítulo 21
Error de Branch out of range.........................................................................................143
21.1. Branch: saltos a las subrutinas...........................................................................144
Capítulo 22
Uso del teclado y display LCD........................................................................................147
22.1. Programa 11 (desplegar mensajes en el display LCD)......................................157
22.2. Programa 12 (desplegar los caracteres del teclado en el display).....................160
Capítulo 23
Álgebra booleana con AVR.............................................................................................169
23.1. Programa 13 (ecuación booleana a través de programación AVR)...................169
Capítulo 24
Flip-Flops con AVR..........................................................................................................177
24.1. Programa 14 (Flip-Flop con AVR)....................................................................178
Capítulo 25
Lectura/escritura en EEPROM......................................................................................181
25.1. Programa 15 (memorización de un teclado matricial en la EEPROM).............183
Capítulo 26
Instrucciones Push y Pop................................................................................................191
26.1. Push: salvar el valor de un registro en el Stack.................................................191
26.2. Pop: recuperar el valor de un registro del Stack................................................191
26.3. Error en el uso del Stack Pointer con interrupciones.........................................196
26.4. Error en el uso del Stack Pointer con saltos RCALL........................................199
Capítulo 27
Instrucciones ST/STD/STS - LD/LDS............................................................................203
Capítulo 28
PWM.................................................................................................................................207
28.1. Control del servomotor......................................................................................213
Curso practico para programacion de AVR.indb 11 26/7/24 13:13
XII Contenido
Curso práctico para programación de AVR ? Ernesto Paredes Martínez M arcombo
Capítulo 29
Contador de 24 y 32 bits (ascendente y descendente)...................................................221
Capítulo 30
Expresiones (Expressions)...............................................................................................225
30.1. Operandos (Operands).......................................................................................225
30.2. Operadores (Operators).....................................................................................225
30.3. Funciones (Functions).......................................................................................232
Capítulo 31
Macros...............................................................................................................................237
Capítulo 32
Directivas..........................................................................................................................243
32.1. Directiva #DEFINE.........................................................................................243
32.2. Directiva DEF: establecer una etiqueta en un registro....................................244
32.3. Directiva UNDEF: indefinir o ?desnombrar? el nombre
simbólico de un registro (quitar la etiqueta a un registro)...............................247
32.4. Directiva EQU: hacer un símbolo igual que una expresión
(asignar un valor a una etiqueta)......................................................................248
32.5. Directiva SET: establece que un símbolo sea igual a una expresión...............250
32.6. Directiva DEVICE...........................................................................................250
32.7. Directiva CSEGSIZE: tamaño de la memoria del programa
(Program Memory Size)..................................................................................251
32.8. Directivas IF, ELSE, ENDIF: condicionales (conditional assembly)..............251
32.9. Directivas IFDEF, IFNDEF: condicionales (conditional assembly)...............253
32.10. Directiva ELIF: condicionales (conditional assembly)...................................254
32.11. Directiva ERROR: saca la palabra ?ERROR? con una
cadena de caracteres (string)............................................................................255
32.12. Directiva WARNING: saca la palabra ?WARNING?
con una cadena de caracteres (string)..............................................................256
32.13. Directiva MESSAGE: saca la palabra ?MESSAGE?
con una cadena de caracteres (string)..............................................................257
32.14. Directiva EXIT: salirse del archivo.................................................................258
32.15. Directivas LIST ? NOLIST: genera un archivo ?listfile .lst?..........................260
32.16. Directiva LISTMAC: expansión del contenido de una macro........................263
Parte 2
Capítulo 33
Comunicación entre un AVR y un ordenador...............................................................267
Curso practico para programacion de AVR.indb 12 26/7/24 13:13
Contenido XIII
Marcombo C urso práctico para programación de AVR ? Ernesto Paredes Martínez
Capítulo 34
Comunicación entre los AVR..........................................................................................275
34.1. Comunicación entre los AVR usando SPI-USI..................................................275
34.2. Comunicación USI 3-hilos (3-Wire)..................................................................280
34.3. Comunicación entre los AVR usando una comunicación híbrida síncrona.......287
Capítulo 35
Comunicación entre los AVR a distancia.......................................................................295
35.1. Comunicación a distancia con una interfaz RS-485..........................................295
35.2. Comunicación a distancia usando XBEE..........................................................296
Capítulo 36
Generador de un pulso de reloj para una sincronía (Clock Recovery).......................305
36.1. Codificador Manchester.....................................................................................310
Capítulo 37
Lectura de un convertidor ADC0804 en un display LCD............................................321
37.1. Convertidor ADC del ATtiny13.........................................................................326
Capítulo 38
Voltímetro digital de 8 bits..............................................................................................329
Capítulo 39
Sensor de temperatura PT100........................................................................................339
39.1. Instrucción de multiplicación MUL...................................................................342
Capítulo 40
Generador de funciones usando un convertidor DAC0800.........................................353
40.1. Trazador de figuras de dos dimensiones............................................................358
Capítulo 41
Sensor de proximidad ultrasónico HC-SR04.................................................................361
41.1. Multiplicación de un número de 24 bits por uno de 16 bits..............................364
Capítulo 42
Puente de Wheatstone......................................................................................................379
42.1. Potenciómetro digital.........................................................................................380
Capítulo 43
Circuito de cruce por cero para un Dimmer 120 VCA.................................................389
Curso practico para programacion de AVR.indb 13 26/7/24 13:13
XIV Contenido
Curso práctico para programación de AVR ? Ernesto Paredes Martínez M arcombo
Capítulo 44
Resolución de ecuaciones con AVR.................................................................................399
44.1. Raíz cuadrada en AVR.......................................................................................400
Capítulo 45
Crear un PLC con AVR...................................................................................................417
Capítulo 46
Tarjeta Programadora Universal...................................................................................421
Capítulo 47
Cómo hacer una tarjeta tipo Arduino............................................................................423
47.1. ¿Qué es el Bootloader?......................................................................................426
47.2. Partes de la tarjeta Arduino................................................................................442
47.3. Montando nuestra tarjeta tipo Arduino..............................................................444
Palabras finales ..................................................................................................................453
Índice analítico...................................................................................................................455

Descubra el poder de los microcontroladores AVR Si desea saber por qué los AVR son microcontroladores amigables en la programación y disfrutar de sus ventajas, ha llegado al libro indicado. En él, se adentrará de forma paulatina en los fundamentos y aplicaciones avanzadas de estos potentes dispositivos. Aprenderá a programar en lenguaje ensamblador usando el programa AVR Studio 4, explorando un amplio rango de voltajes de operación y frecuencias de oscilación, junto con una variedad de registros de usuario que facilitan la programación y la experimentación. Además, la lectura de este libro no requiere experiencia previa, ya que cada concepto y procedimiento se desglosa en una guía paso a paso clara y accesible, complementada con circuitos prácticos, secciones de código y tips esenciales para dominar la programación de los AVR. APRENDA: ? A programar un microcontrolador AVR. ? A usar comandos, operandos, macros y demás cualidades del AVR. CONOZCA: ? Algunos circuitos eléctricos empleados en la programación del AVR. ? Un diagrama eléctrico de una base multi-AVR para programar varios microcontroladores de Atmel en un mismo módulo-programador. No espere más para desarrollar sus habilidades y poner en práctica proyectos reales, incluyendo códigos y diagramas eléctricos. Ernesto Paredes Martínez es máster en Ciencias. Actualmente, imparte clases en el Centro de Estudios Superiores Navales y cuenta con una condecoración militar al Mérito Docente. Fue oficial militar de la misma institución e imparte cátedras como civil. Ha sido profesor de la asignatura de Miconcontroladores AVR durante más de 10 años.

Artículos relacionados

  • CURSO PRÁCTICO PARA PROGRAMACIÓN DE AVR
    PAREDES MARTÍNEZ, ERNESTO
    Descubra el poder de los microcontroladores AVR Si desea saber por qué los AVR son microcontroladores amigables en la programación y disfrutar de sus ventajas, ha llegado al libro indicado. En él, se adentrará de forma paulatina en los fundamentos y aplicaciones avanzadas de estos potentes dispositivos. Aprenderá a programar en lenguaje ensamblador usando el programa AVR Stud...
    Solo 1 en stock

    29,50 €

  • CURSO DE PROG CON RUST
    LÓPEZ, ELIEZER
    El lenguaje de programación Rust ha ganado popularidad en los últimos años debido a su enfoque en la seguridad y el rendimiento, y se ha convertido en una excelente opción para el desarrollo de aplicaciones críticas y sistemas de alto rendimiento. Con una comunidad en constante crecimiento y el respaldo de importantes empresas, Rust constituye una herramienta poderosa para desa...
    Solo 1 en stock

    29,95 €

  • CURSO PRÁCTICO WORDPRESS
    FONTELA, ÁLVARO
    WordPress no es solo una opción más para hacer páginas web, sino que es el CMS (sistema de gestión de contenidos) más utilizado del mundo con una cuota simplemente aplastante sobre el resto de su competencia. Aunque apareció en el año 2004, podemos decir que los últimos 10 años han sido determinantes, convirtiéndose en la solución más utilizada del mundo para crear sitios web.E...
    Solo 1 en stock

    26,50 €

  • 50 ALGORITMOS QUE TODO PROGRAMADOR DEBE CONOCER
    AHMAD, IMRAN
    La capacidad de utilizar algoritmos para resolver problemas del mundo real es una habilidad imprescindible para cualquier desarrollador o programador. Este libro le ayudará no solo a desarrollar la capacidad de seleccionar y utilizar el mejor algoritmo para cada problema, sino también a entender cómo funciona. Empezará con una introducción a los algoritmos y conocerá varias té...
    Solo 1 en stock

    35,80 €

  • CÓMO FUNCIONA LA INTELIGENCIA ARTIFICIAL
    KNEUSEL, RONALD T.
    ¿Desea saberlo todo sobre la IA? Son muchos los manuales que enseñan conceptos acerca de la IA y que se quedan solo en lo superficial, o bien presentan demasiada teoría complicada y poco clara. Sin embargo, este libro es distinto: profundiza en cómo funciona la IA sin recurrir a las complejas matemáticas. Con sus más de dos décadas de experiencia en el campo, Ronald T. Kneuse...
    Solo 1 en stock

    23,80 €

  • TASMOTA. DESARROLLO DE APLICACIONES DOMÓTICAS CON ESP8266 SIN PROGRAMACIÓN
    DOMÍNGUEZ MÍNGUEZ, TOMÁS
    ¿Quiere saber cómo trabajar con domótica sin programar? Si le ha atraído el título de este libro es porque le interesa la domótica y le gusta desarrollar sus propios sistemas. Sin embargo, puede que la programación no sea su fuerte o que no tenga el tiempo suficiente para desarrollar el código requerido. Si bien los sistemas domóticos se componen habitualmente por un conjunto ...
    Solo 1 en stock

    18,20 €