INSTITUTO TECNOLOGICO DE OAXACA DEPARTAMENTO DE INGENIERIA ELECTRONICA CATEDRATICO: ING. MIGUEL ANGEL PEREZ SOLANO |
|||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||
AVISOS IMPORTANTES
1.-El examen práctico de la 2a. evaluación parcial será el próximo martes 14 de Noviembre. Se evaluará el LAB #4 y por lo tanto deberán traer todos los códigos correspondientes, simulados en Proteus y su implementación en la tarjeta de desarrollo que se tenga. Deberá tener sus carpetas de la memoria USB con todos sus documentos. |
|||||||||||||||||||||||||||||||||||||||||||||
BIENVENIDOS AL SEMESTRE AGOSTO DICIEMBRE 2023 REQUISITOS NECESARIOS PARA TENER EXITO AL CURSAR ESTA MATERIA
|
|||||||||||||||||||||||||||||||||||||||||||||
Foreword | |||||||||||||||||||||||||||||||||||||||||||||
A microcontroller
is a compact integrated circuit designed to govern a specific operation
in an embedded system. A typical microcontroller includes a processor,
memory and input/output (I/O) peripherals on a single chip.
Sometimes referred to as an embedded controller or microcontroller unit (MCU), microcontrollers are found in vehicles, robots, office machines, medical devices, mobile radio transceivers, vending machines and home appliances, among other devices. They are essentially simple miniature personal computers (PCs) designed to control small features of a larger component, without a complex front-end operating system (OS). A microcontrollers work in this way:A microcontroller is embedded inside of a system to control a singular function in a device. It does this by interpreting data that receives from its I/O peripherals using its central processor (core). The temporary information that the microcontroller receives is stored in its data memory, where the processor accesses it and uses instructions stored in its program memory to decipher and apply the incoming data. It then uses its I/O peripherals to communicate and enact the appropriate action. Microcontrollers are used in a wide array of systems and devices. Devices often utilize multiple microcontrollers that work together within the device to handle their respective tasks. For example, a car might have many microcontrollers that control various individual systems within, such as the anti-lock braking system, traction control, fuel injection or suspension control. All the microcontrollers communicate with each other to inform the correct actions. Some might communicate with a more complex central computer within the car, and others might only communicate with other microcontrollers. They send and receive data using their I/O peripherals and process that data to perform their designated tasks. What are the elements of a microcontroller?The main elements of a microcontroller are:
While the processor, memory and I/O peripherals are the defining elements of the microprocessor, there are other elements that are frequently included. The term I/O peripherals itself simply refers to supporting components that interface with the memory and processor. There are many supporting components that can be classified as peripherals. Having some manifestation of an I/O peripheral is elemental to a microprocessor, because they are the mechanism through which the processor is applied. Other supporting elements of a microcontroller include:
|
|||||||||||||||||||||||||||||||||||||||||||||
Course objetive |
|||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||
Description | |||||||||||||||||||||||||||||||||||||||||||||
Esta asignatura
comprende cinco
unidades fundamentales; en la primera unidad
se encuentran los
conceptos básicos de los microcontroladores, el alumno
comprenderá
como se organizan
internamente estos dispositivos, como se comunican entre si las
unidades internas y la función específica de cada
uno de ellos. Será
capaz de localizar
información del dispositivo en su hoja de datos, cómo
interpretarla y
como
seleccionar el microcontrolador más adecuado para una
aplicación.
En la segunda unidad se define y se aplica la metodología para la programación de los microcontroladores con lenguaje ensamblador. Es de suma importancia la parte práctica de la materia ya que es la base para la solución de problemas prácticos de ingeniería electrónica. Por lo que se propone la realización de prácticas, que permitan dominar la configuración y programación de los microcontroladores, así como la realización de un proyecto integrador, que estimule la colaboración en el trabajo y la discusión entre los estudiantes, que le permitan resolver los retos que este trabajo implica. En esta unidad se inicia con el estudio de la arquitectura del uC basado en el core Cortex-M4 el ambiente de desarrollo integrado STM32 CubeIDE para la programacion en lenguaje ensamblador. En la tercera unidad se definen y se aplica la metodología para la programación de los microcontroladores con lenguaje C. Se recomienda que se realicen programas híbridos que contengan sentencia en C y ensamblador. Se propone la realización de prácticas, que permitan dominar la configuración y programación de los microcontroladores, así como la realización de un proyecto integrador, que estimule la colaboración en el trabajo y la discusión entre los estudiantes para resolver los retos que este trabajo implica. En la cuarta unidad se estudian las interfaces de comunicación, que son de suma importancia ya que cualquier sistema digital, sea un equipo de medición, de control,etc., potencializa su uso al comunicarse mediante interfaces y protocolos con otros equipos. Por ello es indispensable que el alumno aprenda las formas en que un microcontrolador se puede comunicar con otros sistemas digitales, logrando así un valor agregado a la aplicación. En la quinta unidad, se hace hincapié en que el alumno desarrolle una actividad integradora, utilizando como base de funcionamiento un microcontrolador. Con la intención de consolidar los conocimientos adquiridos, así como desarrollar su potencial creativo y emprendedor. Durante el desarrollo de las actividades programadas en la asignatura es muy importante que el estudiante aprenda a valorar las actividades que lleva particularmente a cabo y entienda que está construyendo su conocimiento, aprecie la importancia del mismo y los hábitos de trabajo; desarrolle la precisión, la curiosidad, la puntualidad, el entusiasmo, el interés, la tenacidad, la flexibilidad y la autonomía y en consecuencia actué de manera profesional. |
|||||||||||||||||||||||||||||||||||||||||||||
Temario | |||||||||||||||||||||||||||||||||||||||||||||
UNIDAD I: ARQUITECTURA INTERNA DEL MICROCONTROLADOR 1.1.
Introducción a los microcontroladores.
1.2. Arquitectura interna del microcontrolador. 1.3. Arquitectura externa del microcontrolador.
2.1.
Programación en lenguaje ensamblador.
2.1.1. Modos de
direccionamiento.
2.1.2. Conjunto de
instrucciones.
2.1.2.1.
Instrucciones
aritméticas.
2.1.2.2.
Instrucciones
lógicas.
2.1.2.3.
Instrucciones
de control de programa.
2.2. Estructura del
programa.2.3. Programación de puertos digitales
3.1.
Programación en lenguaje C.
3.1.1. Estructura
del
programa.
3.2. Puertos de
entrada/salida digital.3.3. Interrupciones. 3.4. Convertidor analógico/digital. 3.5. Temporizador, generador de señales, medidor de intervalos, decodificador QEP (Quadrature encoder pulse) y PWM (Pulse Wide Modulation).
UNIDAD 4: INTERFASES DE COMUNICACION 4.1.
Comunicación paralela.
4.2. Comunicación serial síncrona y asíncrona. 4.2.1.
Comunicación RS-232.
4.2.2.
Comunicaciónl I2C.
4.2.3.
Comunicación SPI.
4.2.4. USB.
4.3. Redes de
comunicación.
4.3.1. Control
Área Network (CAN).
UNIDAD 5: DESARROLLO DE APLICACIONES CON MICROCONTROLADORES 5.1.
Aplicaciones.
|
|||||||||||||||||||||||||||||||||||||||||||||
Software and reference manuals. |
|||||||||||||||||||||||||||||||||||||||||||||
FOR PIC MICROCONTROLLERS 3.- Introduction to the MPLAB XC8 PIC Assembler (video):
4.- MPLAB® XC8 PIC® Assembler User's Guide. 5.-MPLAB® XC8 C Compiler User Guide 6.- Instruction Set Arquitecture of PIC16F877A. 7.- PIC16F87XA Data Sheet: 28/40/44-Pin Enhanced Flash Microcontrollers 8.- Microchip University: Microchip has been delivering superior technical education to our clients for more than two decades. Now our online platform empowers you to master the art of designing robust embedded control systems whenever and wherever you want – all for free! 9.- MPLAB X Deverlopers help: The goal of this section of the Developer Help site is to help you to discover and learn how to use the many available features that are sure to simplify and enhance your development activities..
1.- SOFTWARE TO DOWNLOAD: ST Visual develop IDE for developing ST7 and STM8 applications. FOR CORTEX M3 AND M4 PROCESSORS 2.- TEXT_BOOK: The Definitive Guide to ARM® Cortex®-M3 and M4 Processors. 3.- TEXT FOR SUPPORT: Mastering STM32. INTERESTING WEBSITES
1.- ST webpage: Microcontrollers and microprocessors
2.- DOWNLOAD SMT32CubeIDE: Integrated Development Enviroment for STM32. 3.- Introduction to STM32CubeIDE and Getting to Blinky_Part 1 4.- Introduction to STM32CubeIDE and Nucleo Part 2 5.- Introduction to STM32CubeIDE and Nucleo Part 3 5.- Introduction to STM32CubeIDE and Nucleo Part 4 4.- STM32 CubeIDE basics: Learn how to create your STM32 based application using STM32 CubeIDE. 5.- Getting started with STM32. Introduction to STM32CubeIDE_ Digikey.
ARM® Cortex®-M Architecture Overview: Course from Microchip University1.- Introduction to RISC architecture of ARM.2.- ARM Architecture and instruction design philosophy. 3.- ARM Microcontroller block diagram. 4.- ARM Microcontroller memory controller and management. 5.- Data flow model an register set in ARM. 6.- Program status Register and modes in ARM. 7.- Pipeline in ARM microcontrollers. 8.- MOV instruction set and barrel shifter in ARM. 9.- ARM Conditional instruction set. 10.-Thumb mode vs ARM mode instruction set. 11.- Arithmetic instructions in ARM. 12.- Logical instructions in ARM. 13.- Comparations instructions In ARM. 14.- Multiply instructions in ARM. 15.- Branch instructions in ARM_Part_1 16.- Branch instructions in ARM_Part 2 17.- Load store instructions set in ARM. 18.- Load store addressing mode in ARM. 19.- Using multiple register transfer in ARM. 20.- Stack push and pop operation in ARM. 21.- RISC and CISC architecture. 22.- Little endian vs big endian. 23.- 24.- ARM Exception handling and modes. 25.- ARM link register; LR and program counter, PC in exception mode. 26.- Exception mode priority level in ARM. GUIA DE PROYECTOS A REALIZAR
|
|||||||||||||||||||||||||||||||||||||||||||||
TEAMWORKS FOR FINAL PROJECT
|
|||||||||||||||||||||||||||||||||||||||||||||
Ponderacion de la evaluacion. |
|||||||||||||||||||||||||||||||||||||||||||||
Cada unidad se evalua de la siguiente manera (P) Prácticas 50% (C) Cuestionamientos (examen escrito) 20 % (T) Proyecto final 30% |
|||||||||||||||||||||||||||||||||||||||||||||