Digital Circuits Part 2 - Communication

Similar documents
Design and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso

Lesson 5 Arduino Prototype Development Platforms. Chapter-8 L05: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education

or between microcontrollers)

Amarjeet Singh. January 30, 2012

Lesson 6 Intel Galileo and Edison Prototype Development Platforms. Chapter-8 L06: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education

Raspberry Pi. Hans-Petter Halvorsen, M.Sc.

DEVBOARD3 DATASHEET. 10Mbits Ethernet & SD card Development Board PIC18F67J60 MICROCHIP

Network Embedded Systems Sensor Networks Fall Hardware. Marcus Chang,

Interfacing Techniques in Embedded Systems

EZ-Bv4 Datasheet v0.7

Getting to know the Arduino IDE

Universität Dortmund. IO and Peripheral Interfaces

MicroProcessor. MicroProcessor. MicroProcessor. MicroProcessor

Serial Peripheral Interface. What is it? Basic SPI. Capabilities. Protocol. Pros and Cons. Uses

Arduino Uno R3 INTRODUCTION

BR03 Raspberry Pi Zero Bridge

ARDUINO PRIMO. Code: A000135

HZX N03 Bluetooth 4.0 Low Energy Module Datasheet

Raspberry Pi - I/O Interfaces

Nano RK And Zigduino. wnfa ta course hikaru4

ESPino - Specifications

Real-Time Embedded Systems. CpE-450 Spring 06

AT-501 Cortex-A5 System On Module Product Brief

ARDUINO YÚN MINI Code: A000108

Prototyping Module Datasheet

ArduCAM CC3200 UNO board

Introduction to I2C & SPI. Chapter 22

Introduction to Microcontrollers

Copyright. Getting Started with Arduino Wiring for Windows 10 IoT Core Agus Kurniawan 1st Edition, Copyright 2016 Agus Kurniawan

Sanguino TSB. Introduction: Features:

Edge Power International (HK) Ltd. Product Specification

nblue TM BR-MUSB-LE4.0-S2A (CC2540)

ELET114A Bluetooth Module DATASHEET. Website: / 7

keyestudio Keyestudio MEGA 2560 R3 Board

UART TO SPI SPECIFICATION

Growing Together Globally Serial Communication Design In Embedded System

Health monitoring of an power amplifier using an ethernet controller

ECE 189A Senior Capstone December 16, 2014 Team Leader: Will Miller Charles Crain, Isaac Flores, Brian Phan, Sarah Pilkington

RASPBERRY PI IN AMATEUR RADIO. Matthew Miller KK4NDE

ARDUINO LEONARDO ETH Code: A000022

6LoWPAN Development Platform Saker Manual

Embedded Systems Lab Lab 1 Introduction to Microcontrollers Eng. Dalia A. Awad

Qualcomm Wi-Fi Connectivity Selector Guide

JeeNode V2. A small *duino-ish MPU board with a wireless RF module. Jean-Claude Wippler jeelab.equi4.com March 2009

ARDUINO YÚN Code: A000008

LM53X Development and Evaluation Product Family

Arduino Uno. Arduino Uno R3 Front. Arduino Uno R2 Front

Serial Communication. Spring, 2018 Prof. Jungkeun Park

Intel Galileo gen 2 Board

Propeller Activity Board (#32910)

Lecture (01) Introducing Embedded Systems and the Microcontrollers By: Dr. Ahmed ElShafee

USB-to-I2C. Professional Hardware User s Manual.

ARDUINO INDUSTRIAL 1 01 Code: A000126

SH1030 Rev Introduction. Ultra low power DASH7 Arduino Shield Modem. Applications. Description. 868 MHz. Features

Farklı Arduino Boardlar

In the name of God, the most merciful Communication and Networking

Product Specification

Introduction the Serial Communications Parallel Communications Parallel Communications with Handshaking Serial Communications

ECE 1160/2160 Embedded Systems Design. Midterm Review. Wei Gao. ECE 1160/2160 Embedded Systems Design

EMBEDDED SYSTEMS WITH ROBOTICS AND SENSORS USING ERLANG

Advantages of MIPI Interfaces in IoT Applications

Pmod modules are powered by the host via the interface s power and ground pins.

ARDUINO BOARD LINE UP

Carambola2 (-I) Data sheet. Carambola2 is a tiny surface mountable 2.4 GHz Wi-Fi module running OpenWRT linux software

Bluetooth technology, developed by Ericsson Mobile Communications, a. worldwide telecommunications company based in Sweden, is fast becoming the

Creator Ci40 product brief

3.3V regulator. JA H-bridge. Doc: page 1 of 7

Introduction to Microcontroller Apps for Amateur Radio Projects Using the HamStack Platform.

Parallel Data Transfer. Suppose you need to transfer data from one HCS12 to another. How can you do this?

Sense Amplifiers 6 T Cell. M PC is the precharge transistor whose purpose is to force the latch to operate at the unstable point.

How to Use an Arduino

Embedded Systems and Software. Serial Interconnect Buses I 2 C (SMB) and SPI

SKB360I Bluetooth 4.0 Low Energy Module Datasheet

ZigBee Compliant Platform 2.4G RF Low Power Transceiver Module for IEEE Standard. DATA SHEET Version B

Components of a personal computer

Wireless Sensor Networks. FireFly 2.2 Datasheet

BT 31 Data Sheet. Amp ed RF Technology Inc.

ARDUINO MEGA 2560 REV3 Code: A000067

USB-to-I2C. Ultra Hardware User s Manual.

WiFi Shield. User Guide

specification: imp001

ARDUINO UNO REV3 SMD Code: A The board everybody gets started with, based on the ATmega328 (SMD).

EECS 373 Design of Microprocessor-Based Systems

Microcontrollers and Interfacing

ARDUINO M0 PRO Code: A000111

Elchin Mammadov. Overview of Communication Systems

Microcontroller basics

Ch 7. Network Interface

ARDUINO MEGA ADK REV3 Code: A000069

ISA Host Controller 15a Hardware Reference Release 1.2 (October 16, 2017)

Development and research of different architectures of I 2 C bus controller. E. Vasiliev, MIET

Bus & Signal Processing

Lecture Objectives. Introduction to Computing Chapter 0. Topics. Numbering Systems 04/09/2017

ISMART Inventek Systems Module Arduino Test. Product Brief

Laboratory 5 Communication Interfaces

AT90SO72 Summary Datasheet

JED MICROPROCESSORS PTY LTD

Organization. 5.1 Semiconductor Main Memory. William Stallings Computer Organization and Architecture 6th Edition

By: Haron Abdel-Raziq

Usb Universal In-circuit Programmer Pic Avr Arm Msp 8051 Eeprom

Transcription:

Introductory Medical Device Prototyping Digital Circuits Part 2 - Communication, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota

Topics Microcontrollers Memory RAM and ROM. Analog to Digital (ADC) and Digital to Analog Converters (DAC) Current Communication protocols: Low speed I 2 C (preferred) and SPI. High speed USB and Ethernet. Wireless networks WLAN Bluetooth

Various Microcontrollers Arduino Uno Microchip PIC18 Explorer Demo Board Raspberry Pi V3 Single Board Computer

Relevance Arduino WiFi Shield Absolute Orientation Sensor LCD Display Many prototypes you build will be based on microcontrollers, and peripheral devices, including user interfaces, sensors and actuators; that typically communicate with one or more of these protocols. Images courtesy of Adafruit and DIY Mall

Components of a Microcontroller Scherz, P.& S. Monk. Practical Electronics for Inventors, McGraw Hill, New York, NY (2016).

Random Access Memory (RAM) Static RAM (SRAM) Six transistor memory cell that does not need refreshing. Holds its state while power is applied. Dynamic RAM (DRAM) Using only a single transistor and capacitor, it holds its state only momentarily, and must be refreshed regularly. Less expensive, and commonly used for computer memory today. SRAM Cell (6 Transistors) DRAM Cell (1 Transistor and one capacitor) Wikipedia, https://en.wikipedia.org/wiki/random-access_memory

Memory Central Processing Unit Tri-State Buss Structure http://math.hws.edu/javanotes/c1/s1.html 27256 RAM Chip A = Address Lines Q = Data Lines E and G are enable pins

Read Only Memory (ROM) ROM State remains after power is removed. EPROM UV light erasable programmable ROM. EEPROM Electronically erasable programmable ROM. Flash Memory Based on NAND or NOR gates. Can be reprogrammed fewer times. Used in memory cards, USB drives and solid state drives.

Analog to Digital Converters Analog to Digital Converters (ADC) Convert an analog signal such as voltage, into a digital signal. Resolution is the number of discrete values the converter can produce over the range of the analog signal. For example, an 8-bit encoder can decode an analog value to 2 8, or 256 different values. Sampling rate is subject to the Nyquist-Shannon sampling theorem. In simple terms, you must sample minimally at a rate twice that of the frequency in order to reproduce the original analog signal.

Digital to Analog Converters Digital to Analog Converters (DAC) Convert digital data into an analog signal, such as voltage or current. Commonly used to reproduce music from CD to amplifiers, speakers and headphones. The Arduino pins can be configured for ADC and DAC. Dedicated ADC/DAC chips are available from a number of manufacturers.

I 2 C or Inter-Integrated Circuit Only two bus lines are required; a serial data line (SDA) and a serial clock line (SCL). Each device connected to the bus is software addressable by a unique address and simple master/slave relationships exist at all times; masters can operate as master-transmitters or as master-receivers. It is a true multi-master bus including collision detection and arbitration to prevent data corruption if two or more masters simultaneously initiate data transfer. Serial, 8-bit oriented, bidirectional data transfers can be made at up to 100 kbit/s in the Standard-mode, up to 400 kbit/s in the Fast-mode, up to 1 Mbit/s in Fast-mode Plus, or up to 3.4 Mbit/s in the High-speed mode. UM10204 I2C-bus specification and user manual (2014)

I 2 C and Arduino SDA SCL

I 2 C Communication Lines The I 2 C bus drivers are open drain, meaning that they can pull the corresponding signal line low, but cannot drive it high. The result is there can be no bus contention where one device is trying to drive the line high while another tries to pull it low, eliminating the potential for damage to the drivers or excessive power dissipation in the system. Each signal line has a pull-up resistor on it, to restore the signal to high when no device is asserting it low. Sparkfun / https://learn.sparkfun.com/tutorials/i2c

SPI Serial Peripheral Interface A Motorola protocol implemented on 4 signal lines: A clock signal named SCLK, sent from the bus master to all slaves; all the SPI signals are synchronous to this clock signal; A slave select signal for each slave, SSn, used to select the slave the master communicates with; A data line from the master to the slaves, named MOSI (Master Out-Slave In) A data line from the slaves to the master, named MISO (Master In-Slave Out). Byte Paradigm, http://www.byteparadigm.com/applications/introduction-to-i2c-and-spi-protocols/

Master-Slave Transfer Diagram Motorola SPI Block Guide V03.06/ (2003)

SPI Signals Sparkfun / https://learn.sparkfun.com/tutorials/i2c

USB Universal Serial Bus Standardized interface to computer peripherals. Has largely replaced RS232 and parallel ports. Standard, mini and micro sizes. Downstream facing devices supply power.

USB Speeds Wikipedia, USB

USB Hubs in a Desktop Environment Universal Serial Bus Specifications, Revision 2 (2000)

USB A and B Connectors Universal Serial Bus Specifications, Revision 2 (2000)

FTDI Chips and Software Future Technology Devices International, Ltd. (FTDI) They specialize in USB connectivity and display interfaces. Their software drivers are commonly used with USB peripheral devices. They have a number of USB based converter cables - e.g. for USB-TTL, USB-RS232, USB- RS422, USB-RS484 and others. Future Technology Devices International, Ltd.

Adding FTDI to Arduino This is a USB to TTL serial cable, with a FTDI FT232RL USB/serial chip embedded in the head. It has a 6-pin socket at the end with 5V power and ground, as well as RX, TX, RTS and CTS at 3V logic level Adafruit, https://www.adafruit.com/products/70

Ethernet Networking method for home, business and communities. Speed ups to 100 Gbit/s; with 400 Gbit/s coming. Data streams are divided into frames. Each frame contains source and destination addresses and error checking. Communication via twisted pair copper wire, fiber optics or wireless.

Adding Ethernet to Arduino Although available, Arduino is no longer supporting this Ver. 3 board. Consider instead a wireless interface discussed next. Arduino

Wireless Network Wireless data connection between nodes, using radio frequencies. Includes internet, cell phones, sensor networks, stellite and terrestrial communication. WLAN (wireless local area network) links two or more devices over a short distance usually through an internet access. Wi-Fi. Bluetooth is a licensed spread spectrum based communication protocol for short range.

Adding Wi-Fi to Arduino Arduino Wi-Fi Shield 101 connects the Arduino to the internet. Open source documentation, software and even board files. Operating voltage both 3.3V and 5V (supplied from the host board) Connection via: IEEE 802.11 b/g/n for up to 72 Mbps networks Encryption types: WEP and WPA2 Personal Support TLS 1.1 (SHA256) Connection with Arduino on SPI port Onboard Crypto Authentication by ATMEL Arduino, https://www.arduino.cc/en/main/arduinowifishield101

Bluetooth Bluetooth operates at frequencies between 2402 and 2480 MHz, or 2400 and 2483.5 MHz including guard bands 2 MHz wide at the bottom end and 3.5 MHz wide at the top. Uses the Industrial, Scientific and Medical (ISM) 2.4 GHz shortrange radio frequency band. Bluetooth uses a radio technology called frequency-hopping spread spectrum. Bluetooth divides transmitted data into packets, and transmits each packet on one of 79 designated Bluetooth channels. Each channel has a bandwidth of 1 MHz It usually performs 800 hops per second, with Adaptive Frequency- Hopping (AFH) enabled. Bluetooth low energy uses 2 MHz spacing, which accommodates 40 channels.

Adding Bluetooth to Arduino The Bluefruit EZ-Link - Bluetooth Serial Link & Arduino Programmer - v1.3 The Bluefruit LE UART Friend adds Bluetooth Low Energy connectivity Adafruit, https://www.adafruit.com/products/1588 https://learn.adafruit.com/introducing-the-adafruit-bluefruit-le-uart-friend Image courtesy of Kevin Townsend

Single Chip Microcontroller and Wi-Fi IoT (For future Internet of Things applications) Cloud Connectivity Home Automation Home Appliances Access Control Security Systems Smart Energy Internet Gateway Industrial Control Smart Plug and Metering Wireless Audio IP Network Sensor Nodes TI CC3200 SimpleLink Wi-Fi

Summary Microcontrollers Memory RAM and ROM. Analog to Digital (ADC) and Digital to Analog Converters (DAC) Current Communication protocols: Low speed I 2 C (preferred) and SPI. High speed USB and Ethernet. Wireless network WLAN Bluetooth