ICT2104 Chapter 3: GPIO

Meixi Lim
Mind Map by Meixi Lim, updated more than 1 year ago
Meixi Lim
Created by Meixi Lim about 5 years ago


mind map for ict2104

Resource summary

ICT2104 Chapter 3: GPIO
1 Basic I/O Interfacing Concepts
1.1 I/O Ports: Physical electrical links for microcontroller to communicate with external world
1.2 Types: Digital & Analogue
1.3 Mostly multi-function: Normal I/O pin or special function pin
1.4 Each digital I/O port...
1.4.1 Can have Schmitt Trigger An active circuit which converts analog to digital signal 'Trigger' because output retains value until input changes sufficiently to 'trigger' a change
1.4.2 Combines input, output and interrupt functionality
1.4.3 Can be programmed for each bit (serial) or as an 8-bit port (parallel)
2 External Hardware Consideration
2.1 Output Port
2.1.1 Active Low / Normally High 0 to turn on LED 0 when switch is pressed MCU - Resistor - Vcc Current Sink Mode
2.1.2 Active High / Normally Low 1 to turn on LED 1 when switch is pressed MCU - Resistor - Ground Current Drive Mode
2.2 Input Port
2.2.1 External Pull-Up Resistor
2.2.2 Internal Pull-Up Resistor
3 MSP430 Digital I/Os
3.1 Up to 10 8-bit digital I/O ports (P1 to P10)
3.2 P1 and P2 have interrupt function
3.3 Can be multi-function pin
4 Port Direction, Schmitt, Pull Up/Down, Drive Strength, Function Select Registers
4.1 PxDIR: Direction of I/O
4.1.1 Bit 1: Output
4.1.2 Bit 0: Input
4.2 PxIN: For read only, reflects input signal
4.2.1 Bit 1: Input is high
4.2.2 Bit 0: Input is low
4.2.3 ! Avoid writing to them: results in increased current consumption
4.3 Schmitt Trigger
4.3.1 For slow edges to be converted to fast edges
4.3.2 Cleans up noisy signals
4.3.3 Changes waves to square waves
4.3.4 Reason: CMOS, BiCMOS and TTL devices require fairly fast edges on inputs
4.4 PxOUT: Value to write to output pin
4.4.1 Bit 1: Output is high
4.4.2 Bit 0: Output is low
4.5 PxREN: Enables/Disables Pull-Up/Down resistor of corresponding I/O Pin
4.5.1 Bit 1: Enabled
4.5.2 Bit 0: Disabled
4.5.3 If enabled... PxOUT = 1: Pull-Up Force it to be active low / normally high Resistor near Vcc PxOUT = 0: Pull-Down Force it to be active high / normally low Resistor near Gnd
4.5.4 Only for input pins (?)
4.6 PxDS: Select drive current strength for output ports
4.6.1 Bit 1: Full drive strength
4.6.2 Bit 0: Reduced drive strength
4.7 PxSEL: Select pin function for pins with other peripheral module functions
4.7.1 Bit 0: I/O function selected
4.7.2 Bit 1: Peripheral module function selected
4.8 Unused: Set to output
5 Multiplex and Polled I/O
5.1 Switch Problem: Debouncing - Voltage does not go instantly and cleanly between VSS and VCC when switch is pressed
5.1.1 Solution: Generate a delay period > 10ms before verifying keypress
5.1.2 Solution: SR latch-based switch debouncing circuit
5.1.3 Solution: RC network-based switch debouncing circuit
5.2 Multiplex Keypad: 4 Output Pins and 3 Input Pins
5.2.1 Getting key: Send voltage to output 1 by 1 and check if input is active 1 by 1
5.3 Polling: Constantly check status of port for new data
5.3.1 Simple to implement
5.3.2 Wastes CPU resources and energy
6 Handshaking and strobed I/O
6.1 Handshaking: Automated process of negotiation that dynamically sets parameters of communications channel established between 2 entities before normal communication begins
6.2 Handshake Control: To synchronise transfer of asynchronous data
6.2.1 Make use of Data Strobe signal to indicate that data has been sent Can only be low after ACK* is received
6.2.2 ACK* to acknowledge data is received (device) and MCU can accept new data
7 Analogue I/O
7.1 System Components
7.1.1 Sensor: Converts analogue measurements into electrical signals (voltage/current)
7.1.2 Signal Conditioning: Filtering, Amplification, Attenuation or Impedance Transformation
7.2 Resolution: The smallest change to the analog voltage that can be converted to digital code
7.2.1 LSB: R = 1 / (2^n)
7.3 ADC: 12 bits, max data rate of 200 KSPS with 16 channels
7.3.1 tsample: time to sample and hold onto analogue input while it is being converted
7.3.2 tconvert: time it takes for conversion (13 x ADC12CLK)
7.3.3 Stores result in ADC12MEM register
7.3.4 Conversion limited by upper and lower limits
Show full summary Hide full summary


Personal Statement
Creating Mind Maps with GoConqr
Sarah Egan
How to Create A Mindmap
NEW: ExamTime's Mind Map Maker
Andrea Leyden
NEW: ExamTime's Mind Map Maker
Daniel Muñiz
NEW: ExamTime's Mind Map Maker
Daniel Muñiz
Macbeth Quotes/Themes
Michael LEwis
Genes, The Genetic Code, DNA and Chromosomes
Bee Brittain
How Villainy is Depicted in Macbeth
Olivia Andrews
4ta "P" de la mezcla de mercadeo: PROMOCIÓN
Gabriela Sánchez Idrovo