This document discusses Microchip PIC microcontrollers and their use in an electrocardiogram (ECG) device. It covers the internal architecture of PIC microcontrollers including memory organization, registers, oscillators, and analog-to-digital converters. Diagrams and examples are provided to explain how PIC microcontrollers function and can be programmed to acquire, process, and transmit ECG signal data.
The TramelBlaze Chip Specification document describes a system-on-chip (SOC) featuring a 16-bit processor, universal asynchronous receiver/transmitter (UART), and 8 pulse-width modulation (PWM) blocks. The SOC is designed to provide simple embedded control and includes blocks for the processor, UART, PWM controller, and reset synchronization. Verification confirmed basic UART transmission and PWM functionality as specified.
This document contains code for initializing and controlling a LCD display module connected to a PIC16F887 microcontroller. It defines macros for the LCD pins and functions for initializing the LCD, writing data, clearing the display, moving the cursor, and printing strings. The main program initializes the LCD, prints two strings to different rows, and loops continuously displaying them.
The document discusses the PIC16F877A microcontroller. It provides details about its architecture, memory organization, peripherals like timers and serial communication modules, interrupts, and how to interface it with an LCD display. The PIC16F877A is a Harvard architecture microcontroller with an in-built ADC. It has program memory, data memory, timers, serial communication capabilities using SPI and I2C protocols, and 15 interrupt sources. Code examples are given to initialize and send data to a 16x2 LCD display using the PIC16F877A.
This document provides an overview and agenda for interfacing with the PIC16F877A microcontroller. It discusses the microcontroller's pins and ports, including PORTA-PORTE. It describes the minimum hardware needed and some example input and output devices like LEDs, buttons, and sensors. It then outlines 4 projects involving flashing LEDs, toggling an LED with a button press, and turning on a 220V lamp with a button. The document provides information on timers, analog to digital conversion, communication protocols, and other features of the PIC16F877A.
This document discusses analog to digital conversion and pulse width modulation.
It explains that analog signals from peripherals must be converted to digital signals the microcontroller can understand using an analog to digital converter (ADC). It also describes how pulse width modulation varies the duty cycle of a signal to control motor speed or other analog systems. Common applications like temperature measurement and motor control are provided as examples.
PIC Introduction and explained in detailedAnkita Tiwari
The document provides an introduction to the PIC microcontroller. It discusses what a microcontroller is, compares microcontrollers to general purpose microprocessors, and briefly outlines the history of the PIC microcontroller. It then describes features of the PIC16F84 microcontroller including its clock generator, reset function, ports, central processing unit, and memory organization including flash memory, RAM, and ROM. It also covers the timer and prescalar functions.
The document discusses the architecture of microcontrollers. It describes the hardware components of the PIC16F877A microcontroller, including its I/O ports, power supply connections, and reset button. It also outlines the main connections, software requirements including Proteus, Micro C Pro and a burner program, and hardware requirements such as a PC, programmer, and other electronic components needed to interface with the microcontroller.
The document discusses interfacing I/O ports on the PIC16F84 microcontroller. It describes how to configure the ports as inputs or outputs using the TRIS registers and how to read from and write to the pins. It also covers interrupts, timers, serial communication, analog to digital conversion, and provides an example of a water temperature alarm system using these concepts.
The TramelBlaze Chip Specification document describes a system-on-chip (SOC) featuring a 16-bit processor, universal asynchronous receiver/transmitter (UART), and 8 pulse-width modulation (PWM) blocks. The SOC is designed to provide simple embedded control and includes blocks for the processor, UART, PWM controller, and reset synchronization. Verification confirmed basic UART transmission and PWM functionality as specified.
This document contains code for initializing and controlling a LCD display module connected to a PIC16F887 microcontroller. It defines macros for the LCD pins and functions for initializing the LCD, writing data, clearing the display, moving the cursor, and printing strings. The main program initializes the LCD, prints two strings to different rows, and loops continuously displaying them.
The document discusses the PIC16F877A microcontroller. It provides details about its architecture, memory organization, peripherals like timers and serial communication modules, interrupts, and how to interface it with an LCD display. The PIC16F877A is a Harvard architecture microcontroller with an in-built ADC. It has program memory, data memory, timers, serial communication capabilities using SPI and I2C protocols, and 15 interrupt sources. Code examples are given to initialize and send data to a 16x2 LCD display using the PIC16F877A.
This document provides an overview and agenda for interfacing with the PIC16F877A microcontroller. It discusses the microcontroller's pins and ports, including PORTA-PORTE. It describes the minimum hardware needed and some example input and output devices like LEDs, buttons, and sensors. It then outlines 4 projects involving flashing LEDs, toggling an LED with a button press, and turning on a 220V lamp with a button. The document provides information on timers, analog to digital conversion, communication protocols, and other features of the PIC16F877A.
This document discusses analog to digital conversion and pulse width modulation.
It explains that analog signals from peripherals must be converted to digital signals the microcontroller can understand using an analog to digital converter (ADC). It also describes how pulse width modulation varies the duty cycle of a signal to control motor speed or other analog systems. Common applications like temperature measurement and motor control are provided as examples.
PIC Introduction and explained in detailedAnkita Tiwari
The document provides an introduction to the PIC microcontroller. It discusses what a microcontroller is, compares microcontrollers to general purpose microprocessors, and briefly outlines the history of the PIC microcontroller. It then describes features of the PIC16F84 microcontroller including its clock generator, reset function, ports, central processing unit, and memory organization including flash memory, RAM, and ROM. It also covers the timer and prescalar functions.
The document discusses the architecture of microcontrollers. It describes the hardware components of the PIC16F877A microcontroller, including its I/O ports, power supply connections, and reset button. It also outlines the main connections, software requirements including Proteus, Micro C Pro and a burner program, and hardware requirements such as a PC, programmer, and other electronic components needed to interface with the microcontroller.
The document discusses interfacing I/O ports on the PIC16F84 microcontroller. It describes how to configure the ports as inputs or outputs using the TRIS registers and how to read from and write to the pins. It also covers interrupts, timers, serial communication, analog to digital conversion, and provides an example of a water temperature alarm system using these concepts.
The LPC2148 microcontroller features a 32-bit ARM7TDMI-S CPU, 32-512KB of onboard flash memory, and 8-40KB of static RAM. It operates at speeds up to 60MHz and includes interfaces such as USB 2.0, UARTs, I2C, SPI, and timers. Its small size and low power consumption make it well-suited for applications requiring miniaturization like access control and point-of-sale devices.
The document provides an overview of the LPC214x microcontroller family from NXP Semiconductors, which features an ARM7 processor, on-chip flash memory, RAM, analog and digital peripherals like USB, SPI, I2C, and GPIO. It describes the memory architecture and maps as well as the system control block and various peripherals included in the MCU, such as timers, serial interfaces, and an ADC. The document also outlines programming and debugging tools available for the LPC214x family like in-system programming, an embeddedICE logic for debugging, and a trace macrocell for instruction tracing.
The document is about a book titled "PIC microcontrollers for beginners, too!" that introduces microcontrollers and programming for PIC microcontrollers. It provides an overview of the book's contents which include introductions to microcontrollers and assembly language programming, descriptions of the PIC16F84 microcontroller and its instruction set, examples of assembly language programs, and tutorials on using the MPLAB programming environment and code samples. The book is intended for beginners to help them learn microcontroller fundamentals and get started with PIC microcontroller programming.
This document summarizes the features of the Atmel ATmega8L and ATmega8 microcontrollers. It includes:
- Details on the 8-bit RISC architecture, registers, speed grades up to 16MHz, and low power consumption.
- On-chip memory features including 8K flash, 512B EEPROM, and 1KB SRAM with high endurance and long data retention.
- Peripheral features such as timers, PWM, ADC, serial interfaces, and analog comparator.
- Package options, pin configurations, and operating voltages from 2.7V to 5.5V.
The document summarizes the pin configuration of the LPC2148 microcontroller. It has 45 GPIO pins across two ports, with Port 0 having 29 visible I/O pins and Port 1 having 16 visible pins. The microcontroller contains 19 different peripherals including USB D+ and D- lines, oscillator pins, RTC pins, ground pins, power supply pins, analog ground, analog power supply reference, and RTC power supply pin.
This document provides information on the features and specifications of the Atmel ATmega8(L) 8-bit microcontroller. It has an 8-bit AVR CPU with advanced RISC architecture, 8KBytes of flash memory, 512Bytes of EEPROM, 1KByte of SRAM, and various I/O features. The microcontroller operates between 2.7-5.5V with a clock speed of 0-16MHz and has low power consumption of 3.6mA active, 1.0mA idle, and 0.5uA power-down modes.
This book guides the beginner to start up with Embedded C programming using MP LAB . This Book covers all interfacing examples with pic micro controller and guides beginners to develop projects on PIC micro controller
This document discusses the architecture and operation of 8-bit PIC microcontrollers. It covers topics such as PIC families, the 8-bit PIC architecture including its pipeline operation, clock types, power issues, interrupts, and registers. The 8-bit PIC uses an 8-bit ALU and data memory organized as 8-bit registers. It has a pipelined RISC architecture with 33 to 77 instructions and a stack to store instruction addresses. Interrupts can be triggered by external interrupts, timer 0 overflow, or port B signal changes. Special function registers and general purpose registers are used.
The document provides an introduction to the PIC16F877 microcontroller. It discusses that PICs are Harvard architecture microcontrollers made by Microchip with a RISC design. The PIC16F877 has an 8KB program memory, 368 bytes of data memory, and 256 bytes of EEPROM. It features ports, timers, ADC, and communication peripherals. Programming involves writing code, compiling to a hex file, and burning the file onto the PIC's flash memory using a programmer.
The document describes an Atmel microcontroller with features such as a powerful instruction set, 32 general purpose registers, various memory segments including flash, EEPROM and SRAM, in-system programming, analog and digital peripherals, and low power consumption. It includes pinout diagrams and descriptions of the microcontroller's I/O ports, voltage supplies, and packages. Key specifications listed are operating voltage, temperature range, speed grades, and power consumption levels.
The 8051 architecture contains an accumulator, program status word, stack pointer, data pointer, ports 0-3, serial data buffer, timer registers, control registers, timing and control unit, oscillator, instruction register, program address register, RAM, RAM address register, ALU, and SFR register bank. The accumulator is used to store operands. The program status word contains status flags. The stack pointer increments before data is pushed onto or called from the stack. The data pointer is a 16-bit register used to address external RAM. Each I/O port has a latch and driver. The serial data buffer contains transmit and receive registers. Timer and control registers control interrupts, timers, counters, and the serial port. The
The document introduces Microchip's 8-bit PIC microcontrollers and describes their families and features. It discusses the PIC10F/12F, PIC16F and PIC18F families and their applications. It also describes starter kits, development tools and additional resources for working with 8-bit PIC MCUs. Microchip offers low-cost hardware and software solutions to meet various application needs such as automating garden watering.
Blinking Of LEDs On LPC2148 ARM 7 TDMIS Based MicrocontrollerOmkar Rane
This document describes an experiment to program an LED to blink at regular intervals using an LPC2148 microcontroller. It discusses the objectives, equipment, theory of operation including the microcontroller's bus structure, PLL, and peripherals. It provides the algorithm, sample code to blink an LED, and shows the output of the compiled hex file and blinking LED. The goal is to learn to interface and program the microcontroller's GPIO pins to control an LED.
This document provides information about a course on programming PIC microcontrollers in C using the CCS PIC-C compiler. It discusses the recommended textbook, the topics that will be covered including PIC architecture, limitations of C as applied to PICs, programming PIC hardware, and using software libraries. It also describes how the course will be assessed through a 30 minute multiple choice test held at the end of term.
The document provides information about training performed on the AVR microcontroller. It discusses the features of the ATmega8 microcontroller including its architecture, memory, I/O ports, and peripherals. It also describes tasks performed during training such as interfacing LEDs, buttons, keypads, displays, ADC, and DC motors to learn about digital I/O, serial communication, and analog input.
The document describes the ARMv7-A architecture and its support for large physical addresses (LPAE) in Linux. Key points include:
- ARMv7-A supports LPAE through a 3-level translation table that maps 40-bit virtual addresses to 40-bit physical addresses.
- Linux implements LPAE by modifying page table definitions, extending the swapper page directory to cover three levels, and adapting functions for setting page table entries and switching address spaces.
- Low memory is mapped with 2MB sections while page tables can be allocated from high memory. Exception handling and PGD allocation/freeing were also updated for LPAE.
1. Calibrate the line sensor readings by taking multiple samples while turning left and right to determine the minimum and maximum values.
2. Continuously read the line sensor position and calculate the proportional, integral, and derivative terms based on the error from the center.
3. Determine the difference in motor powers needed to turn toward the center based on the PID values, without allowing negative powers.
4. Set the motor speeds based on the power difference to steer toward the center line.
The document discusses the PIC16F877A microcontroller. It describes the essential elements as having a 8K flash program memory, 368 bytes of data RAM, 256-byte EEPROM, 5 I/O ports, a 10-bit analog-to-digital converter, timers, and interrupts. The pinout and internal architecture are also summarized, including the CPU, memory types, clock, ports, timers, and analog-to-digital converter. The basic elements of the microcontroller are outlined as the clock, ALU, accumulator, RAM memory types, and permanent memories.
The document describes the ARM7TDMI processor core. It is a 32-bit RISC processor capable of executing 16-bit Thumb instructions. It features a JTAG debugging interface, multiplier, and support for embedded emulation. It has a three-stage pipeline and interfaces with memory using different bus cycles.
Chp4 introduction to the pic microcontroller copymkazree
The document provides an introduction to the PIC microcontroller, including:
1) It describes the basic components and architecture of microcontrollers compared to microprocessors.
2) It outlines the history and features of the popular PIC microcontroller family from Microchip Technology, including the PIC16F84 model.
3) It explains the core components of the PIC16F84 including ports, memory organization, clock generator, and the central processing unit.
This document provides an introduction to PIC microcontrollers, including:
- An overview of PIC architecture and why they are popular
- Differences between Harvard and Von Neumann architectures used in PICs
- Variations in core architectures, memory sizes, and instruction sets across the PIC family
- Details on the features, memory, peripherals, and instruction set of the PIC16F877A microcontroller
- Examples of common PIC applications like an LED flasher and button reader
The LPC2148 microcontroller features a 32-bit ARM7TDMI-S CPU, 32-512KB of onboard flash memory, and 8-40KB of static RAM. It operates at speeds up to 60MHz and includes interfaces such as USB 2.0, UARTs, I2C, SPI, and timers. Its small size and low power consumption make it well-suited for applications requiring miniaturization like access control and point-of-sale devices.
The document provides an overview of the LPC214x microcontroller family from NXP Semiconductors, which features an ARM7 processor, on-chip flash memory, RAM, analog and digital peripherals like USB, SPI, I2C, and GPIO. It describes the memory architecture and maps as well as the system control block and various peripherals included in the MCU, such as timers, serial interfaces, and an ADC. The document also outlines programming and debugging tools available for the LPC214x family like in-system programming, an embeddedICE logic for debugging, and a trace macrocell for instruction tracing.
The document is about a book titled "PIC microcontrollers for beginners, too!" that introduces microcontrollers and programming for PIC microcontrollers. It provides an overview of the book's contents which include introductions to microcontrollers and assembly language programming, descriptions of the PIC16F84 microcontroller and its instruction set, examples of assembly language programs, and tutorials on using the MPLAB programming environment and code samples. The book is intended for beginners to help them learn microcontroller fundamentals and get started with PIC microcontroller programming.
This document summarizes the features of the Atmel ATmega8L and ATmega8 microcontrollers. It includes:
- Details on the 8-bit RISC architecture, registers, speed grades up to 16MHz, and low power consumption.
- On-chip memory features including 8K flash, 512B EEPROM, and 1KB SRAM with high endurance and long data retention.
- Peripheral features such as timers, PWM, ADC, serial interfaces, and analog comparator.
- Package options, pin configurations, and operating voltages from 2.7V to 5.5V.
The document summarizes the pin configuration of the LPC2148 microcontroller. It has 45 GPIO pins across two ports, with Port 0 having 29 visible I/O pins and Port 1 having 16 visible pins. The microcontroller contains 19 different peripherals including USB D+ and D- lines, oscillator pins, RTC pins, ground pins, power supply pins, analog ground, analog power supply reference, and RTC power supply pin.
This document provides information on the features and specifications of the Atmel ATmega8(L) 8-bit microcontroller. It has an 8-bit AVR CPU with advanced RISC architecture, 8KBytes of flash memory, 512Bytes of EEPROM, 1KByte of SRAM, and various I/O features. The microcontroller operates between 2.7-5.5V with a clock speed of 0-16MHz and has low power consumption of 3.6mA active, 1.0mA idle, and 0.5uA power-down modes.
This book guides the beginner to start up with Embedded C programming using MP LAB . This Book covers all interfacing examples with pic micro controller and guides beginners to develop projects on PIC micro controller
This document discusses the architecture and operation of 8-bit PIC microcontrollers. It covers topics such as PIC families, the 8-bit PIC architecture including its pipeline operation, clock types, power issues, interrupts, and registers. The 8-bit PIC uses an 8-bit ALU and data memory organized as 8-bit registers. It has a pipelined RISC architecture with 33 to 77 instructions and a stack to store instruction addresses. Interrupts can be triggered by external interrupts, timer 0 overflow, or port B signal changes. Special function registers and general purpose registers are used.
The document provides an introduction to the PIC16F877 microcontroller. It discusses that PICs are Harvard architecture microcontrollers made by Microchip with a RISC design. The PIC16F877 has an 8KB program memory, 368 bytes of data memory, and 256 bytes of EEPROM. It features ports, timers, ADC, and communication peripherals. Programming involves writing code, compiling to a hex file, and burning the file onto the PIC's flash memory using a programmer.
The document describes an Atmel microcontroller with features such as a powerful instruction set, 32 general purpose registers, various memory segments including flash, EEPROM and SRAM, in-system programming, analog and digital peripherals, and low power consumption. It includes pinout diagrams and descriptions of the microcontroller's I/O ports, voltage supplies, and packages. Key specifications listed are operating voltage, temperature range, speed grades, and power consumption levels.
The 8051 architecture contains an accumulator, program status word, stack pointer, data pointer, ports 0-3, serial data buffer, timer registers, control registers, timing and control unit, oscillator, instruction register, program address register, RAM, RAM address register, ALU, and SFR register bank. The accumulator is used to store operands. The program status word contains status flags. The stack pointer increments before data is pushed onto or called from the stack. The data pointer is a 16-bit register used to address external RAM. Each I/O port has a latch and driver. The serial data buffer contains transmit and receive registers. Timer and control registers control interrupts, timers, counters, and the serial port. The
The document introduces Microchip's 8-bit PIC microcontrollers and describes their families and features. It discusses the PIC10F/12F, PIC16F and PIC18F families and their applications. It also describes starter kits, development tools and additional resources for working with 8-bit PIC MCUs. Microchip offers low-cost hardware and software solutions to meet various application needs such as automating garden watering.
Blinking Of LEDs On LPC2148 ARM 7 TDMIS Based MicrocontrollerOmkar Rane
This document describes an experiment to program an LED to blink at regular intervals using an LPC2148 microcontroller. It discusses the objectives, equipment, theory of operation including the microcontroller's bus structure, PLL, and peripherals. It provides the algorithm, sample code to blink an LED, and shows the output of the compiled hex file and blinking LED. The goal is to learn to interface and program the microcontroller's GPIO pins to control an LED.
This document provides information about a course on programming PIC microcontrollers in C using the CCS PIC-C compiler. It discusses the recommended textbook, the topics that will be covered including PIC architecture, limitations of C as applied to PICs, programming PIC hardware, and using software libraries. It also describes how the course will be assessed through a 30 minute multiple choice test held at the end of term.
The document provides information about training performed on the AVR microcontroller. It discusses the features of the ATmega8 microcontroller including its architecture, memory, I/O ports, and peripherals. It also describes tasks performed during training such as interfacing LEDs, buttons, keypads, displays, ADC, and DC motors to learn about digital I/O, serial communication, and analog input.
The document describes the ARMv7-A architecture and its support for large physical addresses (LPAE) in Linux. Key points include:
- ARMv7-A supports LPAE through a 3-level translation table that maps 40-bit virtual addresses to 40-bit physical addresses.
- Linux implements LPAE by modifying page table definitions, extending the swapper page directory to cover three levels, and adapting functions for setting page table entries and switching address spaces.
- Low memory is mapped with 2MB sections while page tables can be allocated from high memory. Exception handling and PGD allocation/freeing were also updated for LPAE.
1. Calibrate the line sensor readings by taking multiple samples while turning left and right to determine the minimum and maximum values.
2. Continuously read the line sensor position and calculate the proportional, integral, and derivative terms based on the error from the center.
3. Determine the difference in motor powers needed to turn toward the center based on the PID values, without allowing negative powers.
4. Set the motor speeds based on the power difference to steer toward the center line.
The document discusses the PIC16F877A microcontroller. It describes the essential elements as having a 8K flash program memory, 368 bytes of data RAM, 256-byte EEPROM, 5 I/O ports, a 10-bit analog-to-digital converter, timers, and interrupts. The pinout and internal architecture are also summarized, including the CPU, memory types, clock, ports, timers, and analog-to-digital converter. The basic elements of the microcontroller are outlined as the clock, ALU, accumulator, RAM memory types, and permanent memories.
The document describes the ARM7TDMI processor core. It is a 32-bit RISC processor capable of executing 16-bit Thumb instructions. It features a JTAG debugging interface, multiplier, and support for embedded emulation. It has a three-stage pipeline and interfaces with memory using different bus cycles.
Chp4 introduction to the pic microcontroller copymkazree
The document provides an introduction to the PIC microcontroller, including:
1) It describes the basic components and architecture of microcontrollers compared to microprocessors.
2) It outlines the history and features of the popular PIC microcontroller family from Microchip Technology, including the PIC16F84 model.
3) It explains the core components of the PIC16F84 including ports, memory organization, clock generator, and the central processing unit.
This document provides an introduction to PIC microcontrollers, including:
- An overview of PIC architecture and why they are popular
- Differences between Harvard and Von Neumann architectures used in PICs
- Variations in core architectures, memory sizes, and instruction sets across the PIC family
- Details on the features, memory, peripherals, and instruction set of the PIC16F877A microcontroller
- Examples of common PIC applications like an LED flasher and button reader
This document provides an introduction to PIC microcontrollers. It discusses the architecture of PIC microcontrollers, including the 16C6x and 16C7x architectures. It describes the registers, memory, and instruction set of PIC microcontrollers. Some key points covered include the Harvard architecture, pipelining, addressing modes, arithmetic, logical, and conditional instructions. Peripherals like timers and interrupts are also mentioned.
AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080Vivek Venugopal
This document proposes a novel four-port DC/DC converter topology for renewable energy applications. The proposed topology adds two switches and two diodes to a traditional half-bridge topology to interface two power sources, one bidirectional storage port, and one isolated load port. Zero-voltage switching is achieved for all four main switches. Three ports can be tightly regulated through independent duty cycles while the fourth is unregulated to maintain power balance. Experimental results confirm independent control over three processing paths with low component count and losses.
The document discusses the ATmega16 microcontroller. It begins by explaining the differences between microprocessors and microcontrollers, and introduces the ATmega16 as a low-power 8-bit microcontroller based on AVR architecture. It then details the features of the ATmega16 including its pinout, registers, memory, and I/O ports. The document also provides examples of coding and interfacing the ATmega16, such as blinking an LED and using delay functions.
Technology is constantly changing. New microcontrollers become available every year. The one thing that has stayed the same is the C programming language used to program these microcontrollers. If you would like to learn this standard language to program microcontrollers, then this book is for you!
Arduino is the hardware platform used to teach the C programming language as Arduino boards are available worldwide and contain the popular AVR microcontrollers from Atmel.
Overview of Microcontroller and ATMega32 microcontrollerRup Chowdhury
This presentation provides an overview of microcontrollers and the ATMega32 microcontroller. It defines a microcontroller as a small computer on a single chip that contains a CPU, memory, and programmable I/O. It describes the typical elements of a microcontroller including the processor, memory, I/O peripherals, ADC, DAC, and system bus. It then discusses features of the ATMega32 like its architecture, pins, applications, and special features. In closing, it thanks the audience for their time.
This document provides information on the PIC16C7X family of 8-bit microcontrollers from Microchip. It describes the core features of the CPU including the instruction set, memory organization, I/O ports, and timer modules. It also details the peripheral features such as the synchronous serial port, USART, analog-to-digital converter, and special CPU features like interrupts and power management modes. Electrical specifications and packaging information are provided for the different devices in the family.
The document discusses the PIC microcontroller architecture. It begins by explaining what PIC stands for and how PIC microcontrollers have become important in industrial automation and embedded applications. It then provides a brief history of PIC development. The document goes on to describe the different categories of PIC microcontrollers based on internal architecture, including baseline, mid-range, enhanced mid-range, and PIC18. It also discusses the core features of PIC microcontrollers like instruction set, register file architecture, and interrupt logic. Finally, it explains some key architectural features like Harvard architecture and reduced instruction set that enable fast execution speeds.
The document provides an introduction to the PIC microcontroller including its origins, architecture, and key features. It discusses the PIC16F877A microcontroller in detail including its register file map, pin configuration, status register, and difference compared to the 8051 microcontroller. Examples of writing assembly language code and C code for blinking an LED are also provided.
This document provides an overview of peripherals and interfacing using various communication protocols. It discusses the I2C bus protocol for accessing peripheral chips. It covers the operation of the I2C bus including start/stop bits and acknowledgement. It then summarizes the use of various peripherals that interface using I2C including EEPROM, analog to digital converters, LCDs, and sensors. It also covers serial communication protocols like UART and interfacing for devices like keyboards.
The PIC microcontroller is a single-chip computer with RAM, ROM, I/O ports and a CPU. The PIC16F73 has features like a RISC CPU, 4K bytes of flash memory, 192 bytes of RAM, three I/O ports and a built-in oscillator. It has peripherals like timers, PWM, ADC and serial communication modules. The PIC memory is divided into program memory for instructions and data memory consisting of register banks. Common applications include interfacing with LCDs and 7-segment displays.
The document provides an overview of the dsPIC33FJ06GSXXX digital signal controller, including its 16-bit architecture, 40 MIPS CPU speed, 6KB flash memory, 256B RAM, and peripherals such as 10-bit ADCs, PWM modules, UART, I2C, and SPI communication blocks. Application examples for the dsPIC33FJ06GSXXX include AC-DC converters, LED lighting, motor control, and power supplies. Key specifications and features of the dsPIC33FJ06GSXXX DSC are described such as its memory organization, analog and digital peripherals, and intelligent power supply applications.
The document describes the features of the ATmega328P microcontroller, including its AVR architecture, CPU, memory, I/O ports, analog-to-digital converter, timers, serial interfaces, and power saving modes. It has 32K bytes of flash memory, 1K bytes of EEPROM, 2K bytes of SRAM, and operates between 2.7-5.5 volts with speeds up to 16MHz. It provides various digital and analog features for interfacing with sensors and actuators.
PIC 16F877 micro controller by Gaurav raikarGauravRaikar3
The document discusses configuring the on-chip analog to digital converter (ADC) on the PIC16F877 microcontroller. It first provides an overview of the PIC microcontroller family and key features of the PIC16F877. It then describes the ADC registers and conversion process, including configuring the ADC module, selecting the input channel, starting the conversion, and reading the result. It includes a diagram of the ADC conversion timing and flowchart of the conversion process. An example code for reading the ADC and printing the result is also provided.
The document describes the PIC16F8X family of microcontrollers, which includes the PIC16F83, PIC16F84, PIC16CR83, and PIC16CR84. It has features like a RISC CPU, programmable I/O pins, timer module, data EEPROM memory, and special features like low power modes, watchdog timer, and in-circuit serial programming. The PIC16F8X is suitable for applications ranging from motor control to security devices due to its small size, low power usage, and reprogrammable Flash memory.
This document provides information on the features and specifications of the Atmel ATmega8 microcontroller. It has an 8-bit AVR RISC architecture with 8K bytes of flash memory, 512 bytes of EEPROM, and 1K byte of SRAM. It includes timers, PWM channels, ADC, USART, and low power sleep modes. The microcontroller has 23 I/O pins and operates between 2.7-5.5V with speeds up to 16MHz.
Este documento presenta las reglas y el temario de un curso de Sistemas de Información. Las reglas incluyen asistir a clases a tiempo, formar grupos de investigación y mantener un ambiente de respeto. El temario cubre sistemas de información como ERP con Odoo, Visual FoxPro, SIAF y SIGA. La primera unidad se enfocará en implementar un ERP con Odoo.
Este documento presenta una serie de herramientas para la investigación y la tesis, como Github, Google Forms, Google Data Studio y Google Blogger. Luego, explica los pasos para validar una idea de tesis, incluyendo el problema, objetivo, hipótesis y plan de encuestas. Finalmente, detalla un caso de estudio donde un estudiante propone una hipótesis sobre la motivación y el desempeño laboral, realiza encuestas, y utiliza pruebas estadísticas como la distribución normal y T-student para analizar los resultados y probar
Este documento presenta un curso sobre manufactura integrada por computador impartido por el Dr. Aland BravoVecorena en la Universidad Nacional Hermilio Valdizán de Huánuco. El curso cubre temas de robótica, cinemática directa e inversa, y propone tres grupos de investigación relacionados con la automatización de estaciones de trabajo, fábricas 3D y el control de trayectorias de un robot SCARA.
El documento constituye el Comité de Inversiones para el Parque Tecnológico Científico Industrial de la UNHEVAL. Designa a tres miembros para el Comité: el Decano de la Facultad de Ingeniería Industrial y Sistemas como Presidente, el Vice Rector de Investigación como primer miembro, y el Director de la Escuela de Posgrado como segundo miembro. Encarga al Comité cumplir con la promoción de inversiones privadas para el proyecto del Parque siguiendo la normativa vigente.
fiis-unheval-mou techno scientific industrial park unheval - huánucoAland Bravo Vecorena
The memorandum of understanding is between the National University Hermilio Valdizán of Huánuco (UNHEVAL) and Forebase International Division, Inc. & NSESI Group, Inc. (FID & NIG) to cooperate on the construction and operation of the Techno Scientific Industrial Park of UNHEVAL. FID & NIG will finance feasibility studies for the $15 billion project and serve as the exclusive contractor. The memorandum establishes the parties' responsibilities and financing arrangements. It will take effect upon signature and remain in place until an official engineering, procurement, construction and operation contract is signed.
Este memorando de entendimiento establece un acuerdo entre la Universidad Nacional Hermilio Valdizán de Huánuco y las empresas Forebase International Division y NSESI Group para la construcción y operación de un Parque Tecnológico Científico Industrial en la universidad. El proyecto costará $15 mil millones y será financiado conjuntamente por la universidad, el gobierno peruano y las empresas. Forebase e NSESI se encargarán de los estudios y de la construcción y operación del parque a cambio de un contrato de concesión a largo
Ante Proyecto del Campus Tecnológico del Parque Científico - Tecnológico - In...Aland Bravo Vecorena
El Campus Tecnológico ofrecerá cuatro servicios principales: empresarial, financiero, académico y adaptativo. Sus objetivos estratégicos incluyen implementar un ecosistema de transferencia tecnológica a través de incubadoras de empresas, equipar laboratorios con tecnología de punta, desarrollar sistemas de gestión de proyectos de innovación y promover incentivos para la innovación y transferencia tecnológica. La organización cuenta con compromiso de las facultades y carreras acreditadas como fortalezas
Ante Proyecto del Campus Científico del Parque Científico - Tecnológico - Ind...Aland Bravo Vecorena
El documento presenta el plan de negocios para el Campus Científico del Parque Tecnológico Científico e Industrial de la Universidad Nacional Hermilio Valdizán. El resumen ejecutivo describe la idea del negocio de crear un ecosistema de innovación científica a través de la implementación del Campus Científico, el cual ofrecerá servicios empresariales, industriales, financieros, académicos y de apoyo. Los capítulos detallan los objetivos estratégicos, organización, productos, merc
El documento propone la creación de un Eco Sistema Internacional de Innovación en la región de Ancash-Huánuco-Ucayali en Perú, con enfoque en China, Perú y Brasil. Se propone la creación de tres campus: Científico, Tecnológico e Industrial, gestionados por un operador privado bajo supervisión de la Universidad Nacional Hermilio Valdizán de Huánuco. El proyecto busca cerrar brechas a través de la innovación y producción en diversos sectores para posicionar a la región
Este documento proporciona información sobre las exportaciones de la región de Huánuco en Perú. Resume que las exportaciones de la región han aumentado desde 2010, lideradas principalmente por la minería y el cacao. Sin embargo, la región enfrenta desafíos como altos niveles de pobreza, infraestructura deficiente y atomización de la propiedad de la tierra que limitan aún más el crecimiento de las exportaciones.
1) La región de Huánuco tiene una variedad de microclimas que generan diversidad de productos agropecuarios y se encuentra en un importante corredor económico entre Lima y las regiones del sur. El sector construcción ha avanzado gracias a mayor inversión pública.
2) Las exportaciones de cacao y café orgánicos pueden crecer con mayor demanda, y el turismo rural y la pisciculta son oportunidades. Sin embargo, el minifundismo dificulta economías de escala en sectores como el forestal.
3)
Este documento presenta un resumen preliminar del diagnóstico del crecimiento de la región Huánuco. Describe que la economía de la región se basa principalmente en la agricultura y el comercio. Identifica barreras al crecimiento como la atomización de tierras, la institucionalidad débil y la deficiente infraestructura. El documento proporciona información sobre la población, empleo, educación e infraestructura de la región.
Este documento describe el proyecto de Parque Tecno Científico Industrial (PATCI) de la Universidad Nacional Hermilio Valdizán. El PATCI busca promover la innovación, la investigación y el emprendimiento a través de tres campus dedicados a la ciencia, la tecnología y la industria. El proyecto ofrecerá servicios e infraestructura de apoyo a docentes, estudiantes, investigadores, egresados, empresas y socios nacionales e internacionales.
El documento presenta información sobre el proyecto PATCI (Parque Tecno Científico Industrial) de la Universidad Nacional Hermilio Valdizán. Describe los antecedentes, objetivos y beneficios del proyecto para diferentes actores como mypes, universidad, gobierno, docentes, estudiantes e inversionistas. El parque contará con tres campus (científico, tecnológico e industrial) gestionados por un operador privado para ofrecer servicios tercerizados de investigación, innovación y producción a bajo costo.
El documento presenta la propuesta de creación de un Parque Tecno Científico Industrial (PATCI) en Huancavelica. Describe los diferentes campus que lo compondrían para ciencia, tecnología e industria, así como los servicios que brindaría a universidades, mypes, inversionistas y el gobierno. Finalmente, expone las ventajas que generaría para estas partes al reducir costos a través de la tercerización de servicios de investigación, innovación y producción.
This presentation was provided by Racquel Jemison, Ph.D., Christina MacLaughlin, Ph.D., and Paulomi Majumder. Ph.D., all of the American Chemical Society, for the second session of NISO's 2024 Training Series "DEIA in the Scholarly Landscape." Session Two: 'Expanding Pathways to Publishing Careers,' was held June 13, 2024.
How Barcodes Can Be Leveraged Within Odoo 17Celine George
In this presentation, we will explore how barcodes can be leveraged within Odoo 17 to streamline our manufacturing processes. We will cover the configuration steps, how to utilize barcodes in different manufacturing scenarios, and the overall benefits of implementing this technology.
Leveraging Generative AI to Drive Nonprofit InnovationTechSoup
In this webinar, participants learned how to utilize Generative AI to streamline operations and elevate member engagement. Amazon Web Service experts provided a customer specific use cases and dived into low/no-code tools that are quick and easy to deploy through Amazon Web Service (AWS.)
A Free 200-Page eBook ~ Brain and Mind Exercise.pptxOH TEIK BIN
(A Free eBook comprising 3 Sets of Presentation of a selection of Puzzles, Brain Teasers and Thinking Problems to exercise both the mind and the Right and Left Brain. To help keep the mind and brain fit and healthy. Good for both the young and old alike.
Answers are given for all the puzzles and problems.)
With Metta,
Bro. Oh Teik Bin 🙏🤓🤔🥰
THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...indexPub
The recent surge in pro-Palestine student activism has prompted significant responses from universities, ranging from negotiations and divestment commitments to increased transparency about investments in companies supporting the war on Gaza. This activism has led to the cessation of student encampments but also highlighted the substantial sacrifices made by students, including academic disruptions and personal risks. The primary drivers of these protests are poor university administration, lack of transparency, and inadequate communication between officials and students. This study examines the profound emotional, psychological, and professional impacts on students engaged in pro-Palestine protests, focusing on Generation Z's (Gen-Z) activism dynamics. This paper explores the significant sacrifices made by these students and even the professors supporting the pro-Palestine movement, with a focus on recent global movements. Through an in-depth analysis of printed and electronic media, the study examines the impacts of these sacrifices on the academic and personal lives of those involved. The paper highlights examples from various universities, demonstrating student activism's long-term and short-term effects, including disciplinary actions, social backlash, and career implications. The researchers also explore the broader implications of student sacrifices. The findings reveal that these sacrifices are driven by a profound commitment to justice and human rights, and are influenced by the increasing availability of information, peer interactions, and personal convictions. The study also discusses the broader implications of this activism, comparing it to historical precedents and assessing its potential to influence policy and public opinion. The emotional and psychological toll on student activists is significant, but their sense of purpose and community support mitigates some of these challenges. However, the researchers call for acknowledging the broader Impact of these sacrifices on the future global movement of FreePalestine.
Temple of Asclepius in Thrace. Excavation resultsKrassimira Luka
The temple and the sanctuary around were dedicated to Asklepios Zmidrenus. This name has been known since 1875 when an inscription dedicated to him was discovered in Rome. The inscription is dated in 227 AD and was left by soldiers originating from the city of Philippopolis (modern Plovdiv).
A Visual Guide to 1 Samuel | A Tale of Two HeartsSteve Thomason
These slides walk through the story of 1 Samuel. Samuel is the last judge of Israel. The people reject God and want a king. Saul is anointed as the first king, but he is not a good king. David, the shepherd boy is anointed and Saul is envious of him. David shows honor while Saul continues to self destruct.
Elevate Your Nonprofit's Online Presence_ A Guide to Effective SEO Strategies...TechSoup
Whether you're new to SEO or looking to refine your existing strategies, this webinar will provide you with actionable insights and practical tips to elevate your nonprofit's online presence.
This document provides an overview of wound healing, its functions, stages, mechanisms, factors affecting it, and complications.
A wound is a break in the integrity of the skin or tissues, which may be associated with disruption of the structure and function.
Healing is the body’s response to injury in an attempt to restore normal structure and functions.
Healing can occur in two ways: Regeneration and Repair
There are 4 phases of wound healing: hemostasis, inflammation, proliferation, and remodeling. This document also describes the mechanism of wound healing. Factors that affect healing include infection, uncontrolled diabetes, poor nutrition, age, anemia, the presence of foreign bodies, etc.
Complications of wound healing like infection, hyperpigmentation of scar, contractures, and keloid formation.
1. Page 1
Universidad de Huánuco
Facultad de Ingeniería de Sistemas e Informática
2. Page 2
Agenda
•Base del Conocimiento
–Diagramas de Bode
–Diseño de Filtros Analógicos
–Diseño de un Electrocardiograma
–Microcontrolador PIC con Labview
•Motor de Inferencia
–Técnicas de Diagnóstico de un ECG
•Medios de Comunicación
–Prototipo de un ECG
4. Page 4
Modelando un PIC
PIC
Procesador
Memoria
Temporizador
ADC
USB
GLCD
Oscilador
5. Page 5
Modelando un PIC
Input Variables Output (User Interface) Variables (Link to other Systems) Embedded Computer Software Hardware Signal Conditioning Data Conversion Output Drive (display, keypad etc.)
6. Page 6
Microcontrolador PIC
•Como sabemos los micro controladores de 8 bits de Microchip se dividen en 3 gamas:
–PIC10 y PIC12: Gama baja
–PIC16: Gama media
–PIC18: Gama alta
9. Page 9
Organización de las Memorias de un PIC
a) Enfoque de Von Neumann b) Enfoque de Harvard
Data
Memory
Program
Memory
Address
Data
Central
Processing
Unit (CPU)
Input/
Output
Central
Processing
Unit (CPU)
Data
Memory
Input/
Output
Program
Memory
Address
Data
Address
Data
Address
Data
10. Page 10
Arquitectura RISC-PIC
A CISC machine is generally
recognised by:
• Many instructions (say over one
hundred), some with considerable
sophistication;
• Instruction words are of different
length;
• Instructions take different
lengths of time to execute.
A RISC machine is generally
recognised by:
• Few instructions (say well below
one hundred),
• Each performs a very simple
action;
• All instructions are single word;
• All, or almost all instructions
take the same length of time to
execute.
Digital
Program
I/0
Microprocessor
Data
Memory
Memory
Core
Analog
I/0
& Timers
Counters
Reset
Power
Clock
Address Buses
Internal Data &
Further
Peripheral
Further
Peripheral
Interrupt(s)
A microcontroller = microprocessor core + memory + peripherals
11. Page 11
Diagrama de Bloques del PIC
The CPU
Address for Program Memory
Data from Program Memory, carrying instruction word
Address for Data Memory
Data bus for Data Memory and peripherals
Program Memory
Data Memory
Extra “non- volatile” Data Memory
Counter/Timer Peripheral
Digital Input/ Output Ports
It is easy to see the Program memory, which uses Flash memory technology. Alongside this comes the Stack, which we meet later. Microchip call the main data memory “File Registers”. There is another section of data memory which uses EEPROM technology.
13. Page 13
Memoria de Programa y Stack
Program Counter
16 Series instructions which invoke the Stack
Unimplemented memory space, still addressable by the 13-bit 16F84A program address bus.
Program Counter points to locations in program memory
The program must start here
The Interrupt Service Routine must start here
14. Page 14
Mapa de Memoria de Datos y (SFR) Registro de Funciones Especiales
msb is “bank select bit”
(Status register).
These are the Special Function Registers, which allow the CPU to interact with the peripherals
General purpose memory
15. Page 15
Interface con Periféricos vía el
Registro de Funciones Especiales
Control SFR(s)
Peripheral
Data Transfer SFR(s)
Microcontroller
Core
"Outside
World"
Interrupt(s)
Microcontroller Interaction with its Peripherals, via Special Function Register (SFR) and Interrupt
microcontroller peripherals can be configured in software to operate in a number of different modes,
to do this certain control data must be sent to them to set them up in the desired way
once in use, there will be data flow between core and peripheral,
there may still be need for further control data,
these needs are commonly met by means of dedicated, memory - mapped registers, sometimes
called Special Function Registers,
this approach gives the microcontroller manufacturer great flexibility to extend a microcontroller
family – SFRs for new peripherals can easily be located in gaps in the memory map.
16. Page 16
Configuraciones Globales del PIC
The configuration word determines certain operating features of the microcontroller. It is in program memory, but cannot be accessed in normal operation. It is written to during the programming process. You set its value either by response to a dialogue box in MPLAB, or by use of Assembler Directives, at the head of your programme.
The 16F84A Configuration Word
18. Page 18
Características de los Osciladores
Oscilador Primario
Oscilador Secundario
Oscilador Interno
Frecuencias de Oscilación Altas (XT, HS)
Frecuencias de Oscilación Medias (LP)
Frecuencias de Oscilación Bajas (RC)
Con PLL
Sin PLL
Con Pre Escala
Sin Pre Escala
Con Pre Escala
Sin Pre Escala
Multiplica Frecuencia de Oscilación
Divide Frecuencia de Oscilación
Divide Frecuencia de Oscilación
19. Page 19
Modos del Oscilador
The 16F84A can be configured to operate in four different oscillator modes, using R-C, crystal or ceramic oscillators. It can also accept an external clock source. The user selects which mode is to be used by setting bits in the Configuration Word.
XT – Crystal
The standard crystal configuration, intended for crystals or ceramics in the range 1MHz to 4MHz.
HS – High Speed
A higher drive version of the XT configuration, for higher frequency crystals and ceramic resonators. Intended for frequencies in the region of 4MHz or greater. It leads to the highest current consumption of all the oscillator modes.
LP – Low Power
Intended for low frequency crystal applications, and gives the lowest power consumption possible. Will however operate at any frequency below around 200kHz.
RC - Resistor-Capacitor
Requires connection of an external resistor and capacitor. The lowest cost way of getting an oscillator, but should not be used when any timing accuracy is required.
20. Page 20
Modos del Oscilador
b) Resistor-Capacitor
c) Externally Supplied Clock
a) Crystal or Ceramic, HS, XT, or LP
RA2
RA3
RA4/T0CKI
MCLR
V
RB0/INT
RB1
RB2
RB3 RB4
RB5
RB6
RB7
RA1
RA0
OSC1/CLKIN
OSC2/CLKOUT
SS VDD Supply voltage
Oscillator connections
Port A, Bit 0
Port A, Bit 2 Port A, Bit 1
Port A, Bit 3
*Port A, Bit 4
Ground
**Port B, Bit 0
Port B, Bit 1
Port B, Bit 2
Port B, Bit 3
Port B, Bit 7
Port B, Bit 6
Port B, Bit 5
Port B, Bit 4
*also Counter/Timer clock input
**also external Interrupt input
Reset
1
9 10
18
The Oscillator Pins
24. Page 24
Agenda
•Base del Conocimiento
–Diagramas de Bode
–Diseño de Filtros Analógicos
–Diseño de un Electrocardiograma
–Microcontrolador PIC con Labview
•Motor de Inferencia
–Técnicas de Diagnóstico de un ECG
•Medios de Comunicación
–Prototipo de un ECG
ADC
26. Page 26
Características ADC del DSPIC
•Conversión vía aproximación sucesiva SAR.
•Velocidad de conversión de hasta 500 ksps.
•Hasta 16 pines de entrada analógica.
•Pines de referencia de Voltaje Externo.
•Modo Automático de Escaneo de Canal .
•Fuente seleccionable de activación de conversión.
•Buffer de resultado de conversión de 16 word
•Modos seleccionables de llenado de Buffers.
•Cuatro opciones de alineamiento de resultado.
•Modos de operación durante el estado Sleep e Idle.
29. Page 29
Estructura Módulo A/D del PIC24F
VREF+
VREF-
A/D converter
Conversion Control
Bus Interface
Data
Format
Sample Sequence Control
AN0
AN1
S/H
AN15
CH0
8/16 Level
Results
Buffer
VR+
VR-
VR Select
AVDD
AVSS
30. Page 30
Eje y: Tiempo de Conversión A/D = Tiempo de Adquisición más Conversión
Tiempo de
Adquisición
Tiempo de Conversión
Inicio del Tiempo de Adquisición
Fin de
Conversión
Entrada
Analógica
Tiempo de Conversión A/D
Clock A/D
TAD
39. Page 39
Diagrama de Bloques del ADC 10 bits
VINH
VINL
S/H
Mux A
Mux B
AD1CON1<ASAM>
AD1CON1<SAMP>
Señal de Conversion completa
0
1
bit8
AD1CON2 Register
bit15
CSSL13=0
BUFM
bit0
ALTS
CSNA
VCFG2
VCFG1
VCFG0
SMPI1
SMPI 0
SMPI3
SMPI2
BUFS
bit7
---
---
---
---
---
40. Page 40
Diagrama de Bloques del ADC 10 bits
VINH
VINL
S/ H
AD1CON1<ASAM>
AD1CON1<SAMP>
Conversion complete Signal
ADC1BUF0 : ADC1BUF15
RESULT
VR+
VR-
AD1CON1<DONE>
AD1CON3<SAMC4:SAMC0> (7)
0 TAD to 31 TAD
AD1CON1 <SSRC2:SSRC0>
Clearing AD1CON1<SAMP> (0)
Active Transition on INT0 pin (1)
Timer4 Compare ends (2)
Evitar 0 TAD
A/D
converter
VR-
VR+
42. Page 42
Ejercicio N1: Digitalizar la Señal Analógica ECG
•Tareas a realizar:
–Programar el PIC con MPLAB en C18.
–Realizar la conversión digital de una señal analógica en Proteus con PIC usando Potenciómetro.
•Resultado esperado:
–Digitalización de una señal analógica y su visualización usando LCD.
43. Page 43
Objetivos del Laboratorio
•Configurar el ADC
•Configurar los puertos de E/S
•Leer el ADC y mostrarlos en LEDs
VDD
Vss PIC24
AN5
POT R6
RA7-RA0
LEDs D10-D3
44. Page 44
Pasos a Realizar
•Open the project
–C:RTC203_PRCLab5Lab5.mcp
•Open the file
–C:RTC203_PRCLab5Lab5.c
•Look for ADCInit() function and configure ADC by initializing the registers AD1CON1, AD1CON2, and AD1CON3 looking into the Register details on the next few pages.
–STEP 1: AD1CON1
•Select Integer Format Result
•Auto Conversion Start
•Sample after conversion
–STEP 2: AD1CON2
•Select AVDD and AVSS as references
•Disable Scan mode
•Interrupt at 16th sample/Convert sequence
•16*1 level buffer
•Always use Mux A
–STEP 3: AD1CON3
•Select Sample Time = 13TAD
•Conversion Time is always 12TAD
•Select AD Clock Source such that you get 16 samples in around 1 mSec (16 ksps)
•Assume 1TCY =.25 uS (FCY = 4 MHz)
45. Page 45
Pasos a Realizar
•Continue to configure ADC by initializing the registers AD1CHS, AD1PCFG, and AD1CSSL looking into the Register details on the next few pages. STEP 4: AD1CHS Set the positive sample input channel for MUX A to use AN5 Set the negative input channel for MUX A to use VR- STEP 5: AD1PCFG Set AD1PCFG so that the only pin using analog functionality is AN5 STEP 6: AD1CSSL Channel scanning is not enabled, so no input channels should be selected for scanning
•Build the project and program the device
•Procedure to Test
–Vary the POT and observe LEDs
46. Page 46
Configurando el Registro ADC
AD1CON1: A/D CONTROL REGISTER 1
ADON
--
ADSIL
--
--
--
FORM1
FORM0
Bit:8
Bit:15
ADC Module enable bit
ADC Module enable/disable in IDLE mode
Result Format 00: Intiger (0000 00dd dddd dddd) 01: Signed Intiger (ssss sssd dddd dddd) 10: Fractional (dddd dddd dd00 0000) 11: Signed Fractional (sddd dddd dd00 0000)
SSRC2
SSRC1
SSRC0
--
--
ASAM
SAMP
DONE
Start Sampling, If ASAM is „0‟
Conversion Status bit
Bit:0
Bit:7
Conversion Trigger Source Selection Bits
000: Manual Conversion Trigger
001: Active transition on INT0 pin triggers conversion
010: Timer3 compare triggers conversion
111: Auto conversion
Auto Sample Selection bit 1: Sample immediately after completion of last conversion. 0: Sample on setting of „SAMP‟
47. Page 47
Configurando el Registro AD1CON2
VCFG2:VCFG0
VR+
VR-
000
AVDD
AVSS
001
VREF+
AVSS
010
AVDD
VREF-
011
VREF+
VREF-
1xx
AVDD
AVSS
VCFG2
VCFG2
VCFG0
--
--
CSCNA
--
--
BUFS
--
SMPI3
SMPI2
SMPI1
SMPI0
BUFM
ALTS
VR Select
AVDD
AVSS
VREF+
VREF-
VR+
VR-
VCFG2:VCFG0
Bit:8
Bit:15
Scan CH0 Mux A Input
Bit:0
Bit:7
SMPI3:SMPI0
Interrupt Event
(Sample/convert sequence)
0000
each
0001
alternate
....
….
1110
Every 15th
1111
Every 16th
Buffer Status bit, is valid only when BUFM = „1‟ 1: Buffer 8-F is being filled, can access Buffer 0-7 0: Buffer 0-7 is being filled, can access Buffer 8-F
Buffer Mode Select bit 1: Buffer configured as two 8-words buffers 0: Buffer configured as one 16-words buffers
Sample alternatively MUX-A & MUX-B
48. Page 48
Configurando el Registro AD1CON3
SAMC4:SAMC0
Sampling Time
00000
0 TAD
00001
1 TAD
....
….
11110
30 TAD
11111
31 TAD
ADRC
--
--
SAMC4
SAMC3
SAMC2
SAMC1
SAMC0
ADCS7
ADCS6
ADCS5
ADCS4
ADCS3
ADCS2
ADCS1
ADCS0
ADCS7:ADCS0
Conversion Clock
00000000
TCY ( FCY )
00000001
2*TCY ( FCY / 2 )
....
….
11111110
255*TCY ( FCY / 255 )
11111111
256*TCY ( FCY / 256 )
Bit:8
Bit:15
A/D conversion Clock Source
1: ADRC is used
0: System clock is used
Bit:0
Bit:7
A/D Sample Time Selection bits
A/D Conversion Clock Selection bits
ADCS = (TAD/TCY) - 1
49. Page 49
Configurando el Registro AD1CHS
CH0SB3:CH0SB0
CH0 Positive Input for MUX B
0000
AN0
0001
AN1
....
….
1110
AN14
1111
AN15
CH0NB
--
--
--
CH0SB3
CH0SB2
CH0SB1
CH0SB0
Bit:8
Bit:15
CH0 Negative input for MUX A 1: AN1 0: VR-
CH0NA
--
--
--
CH0SA3
CH0SA2
CH0SA1
CH0SA0
Bit:0
Bit:7
CH0SA3:CH0SA0
CH0 Positive Input for MUX A
0000
AN0
0001
AN1
....
….
1110
AN14
1111
AN15
CH0 Negative input for MUX B 1: AN1 0: VR-
VREF-
AN15
AN0
ANxx
+B
- B
+ A
- A
AN15
AN0
ANxx
VREF-
AN1
+
-
CH 0
AN1
CH0SB3:CH0SB0
CH0SA3:CH0SA0
CH0NB
CH0NA
50. Page 50
Configurando el AD1PCFG: Registro de Configuración de Puertos
PCFG15
PCFG14
PCFG13
PCFG12
PCFG11
PCFG10
PCFG9
PCFG8
Bit:8
Bit:15
Bit:0
Bit:7
PCFG7
PCFG6
PCFG5
PCFG4
PCFG3
PCFG2
PCFG1
PCFG0
Analog Input Pin Configuration Control bits 0 to 15 1: Pin for corresponding analog channel (ANxx) is in digital mode 0: Pin for corresponding analog channel (ANxx) is in analog mode
AD1CSSL : A/D Input Scan Select Regsiter
CSSL15
CSSL14
CSSL13
CSSL12
CSSL11
CSSL10
CSSL9
CSSL8
Bit:8
Bit:15
Bit:0
Bit:7
CSSL7
CSSL6
CSSL5
CSSL4
CSSL3
CSSL2
CSSL1
CSSL0
A/D Input Channel Scan Selection bits 0 to 15
1: Corresponding analog channel (ANxx) is selected for sequential scanning
0: Corresponding analog channel (ANxx) is ignored for sequential scanning
51. Page 51
Resultado Esperado
•El valor del POT es promediado cada 16 muestras en 1 ms.
•El valor del POT es mostrado en los LEDs como un valor binario desde 0 hasta 255
•El Pin RB2 cambia de valor cada 16 muestras (con una frecuencia de 500 Hz)
52. Page 52
Agenda
•Base del Conocimiento
–Diagramas de Bode
–Diseño de Filtros Analógicos
–Diseño de un Electrocardiograma
–Microcontrolador PIC con Labview
•Motor de Inferencia
–Técnicas de Diagnóstico de un ECG
•Medios de Comunicación
–Prototipo de un ECG
USB
54. Page 54
Interfaces USB
USB
• Creado por Intel en el año 1994, versión 1.0.
• En el año 1998 se lanza la versión 1.1 con una velocidad de
transferencia baja de 1.5 Mbps y a full capacidad de 12 Mbps.
• En el año 2000, se lanza la versión 2.0 de alta capacidad con 480 Mbps.
55. Page 55
USB: Bus Serial Universal
• Auto détección & configuraóion (Plug&Play)
• Energía en el Bus
• 3 velocidades: Low- 1.5 Mbps, Full- 12 Mbps,
High- 480 Megabits/second
RS232
Paralelo
PS/2
Tipos de
Aplicación
Extend the functionality of
your computer!
Data Analysis,
Data Logging,
Firmware Updates,
Diagnostics,
Embedded Applications!
56. Page 56
Características del USB
NRZI Data Encoding
Half duplex – data transmission can go in only one direction at a time
Bus Power to each device:
4.40 - 5.25 V
Guaranteed 100 mA
500 mA maximum through negotiation
~ 5.0 V ~ 3.3 V
VBUS D+ D- GND
VBUS D+ D- GND
4-wire connection
Differential Signaling
57. Page 57
Características del USB
“mini-B” Plug FS, HS Peripheral
“B” Plug FS, HS Peripheral
“A” Plug USB Host
58. Page 58
Características del USB
Guaranteed Latency Guaranteed Data
Integrity
Interrupt
Bulk
Isochronous
PIC18F4550 family supports all these transfer types.
59. Page 59
USB Pipes
HOST PC
Big USB Pipe
12Mb/s
Small Pipe to each USB
device (up to 127)
Tiny Pipes (endpoints)
60. Page 60
Client Software <-> Function
Client
Software
Interface
USB Device
Host
Endpoints
Data Flows
Buffers
Pipes
61. Page 61
El Dispositivo Lógico
Device
(Manufacturer: Microchip Technology)
(Product: Mouse in a Circle Demo)
Configuration
Interface
IN (Endpoint 0)
USB System Software
(default control pipes)
USB Device-Specific Pipe(s)
(Human Interface Device)
HID TX/RX Functions
(MCHPFSUSB FW)
Analog/Digital I/O
OUT (Endpoint 0)
IN (Endpoint x)
OUT (Endpoint x)
These settings are
represented by a
Device Descriptor
Table, stored in
firmware.
63. Page 63
Periféricos USB
63
Joystick
Mouse
SD Card
Reader
MCHP
RS-232
Data
UPS Logger
Keyboar
d
Generic
Human Interface Device
Class (HID)
Mass Storage
Device Class (MSD)
Communication
Device Class (CDC)
Digitizer
LibUSB WinUSB
Custom Class
(Vendor Class)
Audio
Class
MIDI
Speaker
64. Page 64
El Proceso de Enumeración
DETACHED
POWERED
Power (self/bus)
DEFAULT
Bus reset
ADDRESS
Get Device Descriptor
CONFIGURED
Get Descriptors
ATTACHED
Cable Connected
SUSPENDED
65. Page 65
Auto Detección: Full Velocidad
+5V
D+
D-GND
Transceiver
USB
Connector
Peripheral Device
VUSB 3.3 V
Full Speed Identification
D+ line pull-up
1.5 k±5%
USB PIC® MCU
66. Page 66
Auto Detección: Baja Velocidad
+5V
D+
D-GND
Transceiver
USB
Connector
Peripheral Device
VUSB 3.3 V
Low Speed Identification
D- line pull-up
1.5 k±5%
USB PIC® MCU
67. Page 67
On-chip Pull-up Resistors
+5V
D+
D-GND
Transceiver
USB
Connector
Peripheral Device
VUSB 3.3 V
On-chip pull-up resistors
available!
USB PIC® MCU
68. Page 68
Address and Configuration: EP0
See Chapter 9 in USB 2.0 Spec for more info.
Other Endpoints
Endpoint 0 IN
(Control Data)
Endpoint 0 OUT
(Control Data)
Dual Port/Access RAM
Descriptors
Control Transfers
USB PIC® MCU
69. Page 69
Descriptores
Device
Configuration 1
Interface 0
Endpoint
Interface 1
Endpoint
Endpoint
Endpoint
To other Configurations if any
To other Interfaces if any
String 0
String 1
String N
Descriptors are typically stored in non-volatile/Flash memory
70. Page 70
Ejemplo de Descriptores
PICDEM™ USB
Microchip
Device
Configuration 1
Interface 0
Endpoint
Manu. String
Prod. String
USB 2.0, VID = 0x04D8,
PID = 0x0007, Num. Configurations, Strings?
Configuration #1: Bus-Powered,
Remote Wakeup, 500mA, Num. Interfaces
Interface #0: HID Class, Num. Endpoints
Endpoint 1 IN, Interrupt Transfer Type, 64-byte buffer, Poll every 3 ms
Unicode Characters
Go USB!
Other String
71. Page 71
MCHPFSUSB Software Framework - Device Descriptor Table -
usb_descriptors.c
Descriptors
VID & PID
Class Specific
/* Device Descriptor */
ROM USB_DEVICE_DESCRIPTOR device_dsc=
{ 0x12, // Size of this descriptor in bytes
USB_DESCRIPTOR_DEVICE, // DEVICE descriptor type
0x0200, // USB Spec Release Number
CDC_DEVICE, // Class Code
0x00, // Subclass code
0x00, // Protocol code
EP0_BUFF_SIZE, // Max packet size for EP0,
0x04D8, // Microchip Vendor ID
0x000C, // Product ID ID
…
72. Page 72
CDC – RS-232 Emulation
PC Computer
PIC® Microcontroller
USB Cable
Hyper Terminal
CDC
INF File Required
(Supplied in MCHPSUSB)
Standard Windows Drivers
Design Considerations:
•~80 KB/s max
•Bulk Transfers
•PC applications can access the device as though it is connected to a serial COM port
73. Page 73
MCHPFSUSB Framework - Polled Program Flow -
Reset
main()
InitializeSystem()
while(1)
Your application code
USBDeviceTasks()
ProcessIO()
USB Stack
Cooperative Multitasking!!
No blocking functions.
Use state machine.
You edit UserInit()
Function Services
CDCTxService() MSDTasks() Re-arm OUT Endpoint (HID & Generic)
74. Page 74
MCHPFSUSB Framework - Interrupt Program Flow -
Reset
main()
InitializeSystem()
while(1)
Your application code
ProcessIO()
You edit UserInit()
USB Interrupt Context
USBDeviceTasks()
USBDeviceAttach()
Function Services
Notifies the stack when the device is attached
CDCTxService() MSDTasks() Re-arm OUT Endpoint (HID & Generic)
75. Page 75
Código de Ejemplo
#include “Compiler.h” #include “USBusb.h” #include “USBusb_function_cdc.h” #include “HardwareProfile.h” void UserInit(void){ … … } void ProcessIO(void){ if((USBDeviceState < CONFIGURED_STATE)||(USBSuspendControl==1)) return; … … CDCTxService(); } static void InitializeSystem(void){ #if define … #endif UserInit(); USBDeviceInit(); } int main(void){ InitializeSystem(); USBDeviceAttach(); while(1){ ProcessIO(); } }
Main.c
Needed (usb_config.h is called by usb.h)
Put your initialization code here
Put your application code (state machine) here
No need to change
Conditional compiling (no need to change)
USBDeviceTasks() is executed in an ISR (High Priority PIC18, _USB1Interrupt() PIC24 & PIC32)
76. Page 76
Agenda
•Base del Conocimiento
–Diagramas de Bode
–Diseño de Filtros Analógicos
–Diseño de un Electrocardiograma
–Microcontrolador PIC con Labview
•Motor de Inferencia
–Técnicas de Diagnóstico de un ECG
•Medios de Comunicación
–Prototipo de un ECG
GLCD