Microprocessors in Biomedicine
- Garant předmětu:
- Pavel Smrčka
- Jan Broulím, Karel Hána, Lenka Hanáková, Pavel Smrčka
- Jan Broulím, Karel Hána, Lenka Hanáková, Pavel Smrčka
- Department of Information and Communication Technology in Medicine
The aim is to explain the principles and building blocks of a microprocessor system, the structure of a microprocessor, the connection of basic peripherals, the programming model of a microcomputer system in the form of a practically oriented explanation and demonstration tasks. Provide a basic overview of ATMega and ARM Cortex M architectures with practical examples of their programming with examples of use in biomedicine. Prerequisites and co-requisites: basic knowledge of digital technology and signal processing, basics of ISO C. Output knowledge, skills, abilities and competencies: The student is familiar with the selection and design of microprocessor system solutions for use in biomedicine. It manages the configuration and program control of these building blocks of the microprocessor system: digital inputs and outputs, A / D and D / A converters, serial and parallel communication, counters and timers, interrupt controller. Understands the basics of communication of microcomputers with the environment: interfaces for LCD displays, keyboards, RS232, Ethernet, WIFI, Bluetooth, XBee and mobile 3G / 4G communication, GPS / GLONAS localization.
Solved and documented individual laboratory exercise.
- Syllabus of lectures:
1. Definition of terms. Microprocessor technology, examples of applications from everyday life and medicine.
2. Logic circuits and their variants. Gate construction (NAND, NOR). Input, output, conversion and dynamic characteristics. Voltage levels, noise immunity, logical gain.
3. Interconnection of TTL and CMOS circuits, 3V and 5V logic. Level sensors and transducers. Connecting mechanical contacts and power elements to logic circuits.
4. Programming model of microprocessor system. Instruction set, control, arithmetic, logic, displacement instructions. Machine code. Timing of operations. Interrupt priorities. Sample machine code programs for ATMega and ARM Corex M0, M3 and M4 architectures.
5. Microprocessors of the ATMega family. Instruction files, examples of programs in machine code. Overview of products of current manufacturers, applications.
6. ARM family microprocessors. Instruction files, examples of programs in machine code. Overview of products of current manufacturers, applications.
7. Bus structure of microprocessor system. Microprogram controller, instructions, machine cycle. Arithmetic-logic unit. Connecting external memories and peripheral circuits.
8. A / D and D / A converters. Overview of principles, typical parameters of modern converters. Sampling, quantization, conversion errors. Memories, shift registers. Interrupt controller, counters, timers. UART, SPI, I2C interface.
9. Overview of other microprocessor families. PIC series, signal processors. Comparison of individual types according to application-interesting criteria - speed, equipment with peripherals and development tools, consumption, size, availability and price.
10. Software tools for the development of medical embedded microcomputer applications. Compilers and integrated development environments. Combined use of assembler and C language. Company products (Keil C, IAR ...), open-source products (avr-gcc, arm-gcc, sdcc).
11. Bimedical applications of microprocessors. Overview of basic ideas of algorithms for scanning, calibration, preprocessing, transmission and archiving of biological signals and data. Support tools for the development of the necessary software on the PC platform (MS Windows, GNU / Linux), methods of transfer to application development boards, online debugging of the program.
12. Specific requirements for biomedical microprocessor systems. The question of safety, ergonomics of control and optimal visualization of results. Typical current solutions.
13. Connection of microcomputer systems to medical technical infrastructure. Standard interfaces (RS232, USB, XBee), network interfaces (Ethernet). Use of satellite navigation in embedded devices.
14. Transmission media: types and properties of metallic links, optical fibers, laser and infrared (Ir) links, radio frequency links (Bluetooth LE, 3G / 4G data transmissions, WiFi). Comparison and possibilities of use.
- Syllabus of tutorials:
1. Introduction to the architecture of single-chip computers and microcontrollers. Brief review of the basics of the ISO C language - part I. Practical examples on the ATMEGA microcontroller (ATMega328 resp. 2560) a. ARM Cortex M3: work with digital inputs and outputs in the SW simulator, work with the LCD display in the SW simulator.
2. A brief review of the basics of the ANSI C language - part II. (function in C, multi-file project in C).
3. Practical tasks on ATMEGA microcontroller (ATMega328 / 2560) resp. ARM Cortex M3: Use of digital input unit.
4. Practical tasks on the ATMEGA microcontroller (ATMega328 / 2560) resp. ARM Cortex M3: UART, SPI, I2C, settings
5. Practical tasks on ATMEGA microcontroller (ATMega328 / 2560) resp. ARM Cortex M3: Interrupt controller - usage, basic settings
6. Practical tasks on the ATMEGA microcontroller (ATMega382 / 2560) resp. ARM Cortex M3: basics of working with a counter and timer
7. Separate task: „response time meter“ - use of GPIO, timer and LCD (optionally UART) using ATMega328 microcontroller and ARM Cortex M3
8. Independent task: the basis of a system for monitoring the physical activity of laboratory animals) using a microcontroller ATMega2560 and ARM Cortex M3
9. Examples of A / D converter work - parameters, settings, control registers) using analog frontend ADS1258 resp. 1298
10. Independent task - Intelligent medical thermometer controlled by microcontroller Atmel ATMEGA 328 resp. ARM Cortex M3 using analog frontend ADS1258 resp. 1298
11. Digitization and transmission of biosignals - requirements for HW and firmware of the control microprocessor. Data stream - serialization, coding, packet parsing, the concept of encoder and decoder - a practical design example.
12. Firmware and software for visualization of biosignals in real time, example of connection with microcomputer system 13. Independent laboratory task - eg firmware of a simple electrocardiograph controlled by a microprocessor - incl. PC connection.
14. Solving a given task on a computer. Presentation and control of results
- Study Objective:
Orientation in modern microprocessor families and peripheral and wireless connectivity technologies. Basic abitity to design simple microprocessor systems for biomedical embedded devices, including basics of the programming of microcontrrollers. Practical approach to digitisation, transmission and data-processing of biological signals.
- Study materials:
All stud. materials (incl. syllabus, practical tasks etc.) are available on e-learning server <a href="https://skolicka.fbmi.cvut.cz">https://skolicka.fbmi.cvut.cz</a>
 Datasheet ADS1298, on-line http://www.ti.com/lit/ds/symlink/ads1298.pdf, Texas Instruments, 2015
 Stallman: Using the GNU compiler collection : a GNU manual for GCC, GNU Press, 2008
 Thareja: Programming in C, Second Edition, Oxford University Press, 2015.
- Further information:
- Stud. materiály jsou zveřejněny na e-learningovém serveru: https://moodle-vyuka.cvut.cz
- Time-table for winter semester 2022/2023:
Mon Tue Wed Thu FriroomAL:001
Praha 2 - Albertov
Albertov - učebnaroomAL:001
Praha 2 - Albertov
Albertov - učebna
- Time-table for summer semester 2022/2023:
- Time-table is not available yet
- The course is a part of the following study plans:
- Prospectus - bakalářský (!)
- Biomedical Technology (compulsory elective course)