How to create your own peripheral modules for use with the ARC EMSK and embarc

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

Prototyping Module Datasheet

Using a secondary bootloader on the EMSK

Pmod ESP32 Reference Manual

ARDUINO PRIMO. Code: A000135

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

Modtronix Engineering Modular Electronic Solutions SBC28DC. Single board computer for 28 pin DIP PICs

Various power connectors. 3.3V regulator. 64K Flash (Internal) 2K EEPROM (Internal) 4K SRAM (Internal) JA Mem Adr/ Data. Doc: page 1 of 9

EPT-200TMP-TS-U2 TMP102 Temperature Sensor Docking Board Data Sheet

1.6inch SPI Module user manual

Digilent I 2 C Pin Configurations

MAX14850PMB1 Peripheral Module

PmodJSTK2 Reference Manual. Overview. 1 Functional Descriptions. Revised July 19, 2016 This manual applies to the PmodJSTK2 rev. C

Raspberry Pi - I/O Interfaces

< W3150A+ / W5100 Application Note for SPI >

BT 31 Data Sheet. Amp ed RF Technology Inc.

User s Manual iceprogm1050, icecablem100 and SAB-XXXXX-X V 1.2

keyestudio Keyestudio MEGA 2560 R3 Board

HZX N03 Bluetooth 4.0 Low Energy Module Datasheet

Approved by: Date CET Initials Name Justification :20:12 NTJ Niels Thybo Johansen

MAX31723PMB1 Peripheral Module

Interfacing Techniques in Embedded Systems

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

BLE Bluetooth Low Energy Modules SBC2112-B. Preliminary Specification. Version 1.0

VN310 Hardware Integration

Revision: 05/05/ E Main Suite D Pullman, WA (509) Voice and Fax. Various power connectors. 3.3V regulator

ARDUINO MEGA ADK REV3 Code: A000069

Doc: page 1 of 6

Microcontroller. BV523 32bit Microcontroller. Product specification. Jun 2011 V0.a. ByVac Page 1 of 8

MAX44000PMB1 Peripheral Module

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

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

General-Purpose Microcontroller Module 12a Hardware Reference Release 1.4a (October 11, 2017)

Doc: page 1 of 8

Product Specification

xpico 200 Series Evaluation Kit User Guide

Breeze Board. Type A. User Manual.

or between microcontrollers)

Please refer to "4. Evaluation Board" on page 2 for more information about these steps. Figure 1. System Connections

ARDUINO LEONARDO ETH Code: A000022

Arduino ADK Rev.3 Board A000069

AN10428 UART-SPI Gateway for Philips SPI slave bridges

ARDUINO MICRO WITHOUT HEADERS Code: A000093

Skywire RL78/Kurumi Adapter User Manual

WICE-SPI Hardware Operation Manual

ARDUINO YÚN Code: A000008

EECS 373 Design of Microprocessor-Based Systems

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

Device: MOD This document Version: 1.0. Matches module version: v3 [29 June 2016] Date: 23 October 2017

ARDUINO MEGA 2560 REV3 Code: A000067

PIC-32MX development board Users Manual

User's Manual Rev. 1. Freescale Semiconductor Inc. TWRS08UNIVUM

USER GUIDE. Atmel OLED1 Xplained Pro. Preface

Ultratronics v1.0 DATASHEET

Real-Time Embedded Systems. CpE-450 Spring 06

6LoWPAN Development Platform Saker Manual

Shack Clock kit. U3S Rev 2 PCB 1. Introduction

EECS 373 Design of Microprocessor-Based Systems

ESPino - Specifications

MicroBolt. Microcomputer/Controller Featuring the Philips LPC2106 FEATURES

Doc: page 1 of 6

Cerebot Nano Reference Manual. Overview. Revised April 15, 2016 This manual applies to the Cerebot Nano rev. A

Win-I2CUSB Hardware User s Manual

EMX Module Specifications

MTi 1-series Development Kit

Cookie User Manual. For NuMicro Edition 1.0. Rev. 1.0 Release: forum.coocox.org.

Overview. Functional Description. Calidad en nuestros productos. Tecnología a su servicio.

MAX5216PMB1 Peripheral Module

4G LTE-E click (Europe)

MINITRONICS v1.0 DATASHEET

ARDUINO YÚN MINI Code: A000108

802.11b/g/n IOT Module

Microcontrollers and Interfacing

PICado Alpha Development Board V1.0

Introduction. PURPOSE: - List and explain the 15 i.mx1 modules that are also used on the i.mx21 device.

SKB360I Bluetooth 4.0 Low Energy Module Datasheet

KNJN I2C bus development boards

Pmod I2S2 Reference Manual

PIXI click PID: MIKROE Weight: 28 g

Atmel ATMXT143E touchscreen controller Capacitive touch ITO 320 x 240 pixel LCD display with SPI interface LED backlight

Universität Dortmund. IO and Peripheral Interfaces

DS1086LPMB1 Peripheral Module

Thermo 6 click PID: MIKROE-2769

Product Specification

PCB-STM32-F3U. Development baseboard for the STMicro Discovery-F3 module (STMicro part# STM32F3DISCOVERY)

04/12/11 version 1.0

WM1030 Rev Introduction. Ultra low power DASH7 Modem. Applications. Description. 868 / 915 MHz. Features. WIZZILAB Technical datasheet 1/10

USB UART 4 click PID: MIKROE Weight: 23 g

Multicommunication Type Identifying Debugging Probe

GSM 4 click MIKROE Weight: 33 g

USER GUIDE. ATWINC1500 Xplained Pro. Preface

Stepper 6 click. PID: MIKROE 3214 Weight: 26 g

Environmental Data Acquisition Using (ENC28J60)

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

KNJN I2C bus development boards

ARDUINO LEONARDO WITH HEADERS Code: A000057

chipkit Cmod Reference Manual Overview Revised November 6, 2013 This manual applies to REV E of the board.

March 21, BT22 Datasheet. Amp ed RF Technology, Co., Ltd.

CSCI 6907 PROJECT PROPOSAL LIGHTS OUT MANAGEMENT

XPort Direct+ Integration Guide/Data Sheet

Transcription:

How to create your own peripheral modules for use with the ARC EMSK and embarc Overview embarc is an open software platform designed to help accelerate the development and production of embedded systems based on DesignWare ARC processors. The ARC EM Starter Kit (EMSK) is a low-cost, versatile solution enabling rapid software development, code porting, software debugging and profiling for the ARC EM Family of processors, including the EM4/6/5D/7D/9D/11D cores (depending on EMSK version). Together, the EMSK and embarc open software platform provide developers with a powerful platform with six (6) unified connectors that can be used to extend the system s capabilities through various peripheral devices. These connectors comply with Pmod Interface Specification by Digilent Inc. This article provides instructions on how to create your own module to be connected to the Pmod interface for use with the EMSK and embarc. NOTE: This article assumes the reader is already familiar with embarc. If this is your first project with embarc, please start by first reading our Quick start article. Please visit https://www.embarc.org/index.html for more information on embarc. 1

EMSK Four versions of the EMSK are supported in embarc: v1.1, v2.0, v2.1 and v2.2. The EMSK board is based on a Xilinx Spartan -6 FPGA. It supports hardware extensions using six unified 2x6 connectors allowing users to extend capabilities by connecting peripheral modules such as sensors, actuators, displays, buttons, switches and communication devices. These connectors comply with the Digilent Pmod Interface Specification. The core configurations in EMSK v1.1 and v2.x are shown below. The EM4 processor is a subset of EM5D and EM6 is a subset of EM7D, so software may be built for EM4 or EM6 and also run on EM5D or EM7D respectively. EMSK 1.1 Predefined ARC Configuration Parameters ARC_EM4 ARC_EM4_16CR ARC_EM6 ARC_EM6_GP ICCM 128 KB 128 KB 32 KB 32 KB DCCM 64 KB 64 KB - - Instruction - - 32 KB, 4-way, 16 KB, 2-way, Cache Line Length 128 Data Cache - - 32 KB, 4-way, Line Length 128 Timer 2 1 2 1 Core Register 32 16 32 32 Address Width 32 24 32 32 Line Length 32 16 KB, 2-way, Line Length 32 2

EMSK 2.1 Predefined ARC Configuration Parameters ARC_EM5D ARC_EM7D ARC_EM7DFPU ICCM 128 KB 32 KB 32 KB DCCM 256 KB 32 KB 32 KB Instruction Cache - 16 KB 16 KB Data Cache - 16 KB 16 KB Timer 2 2 2 Core Register 32 32 32 Address Width 32 32 32 NOTE: Please refer to EMSK User Guide for Configuration information if using EMSK version other than the ones listed in above tables. The EMSK hardware board integrates many peripheral devices such as SPI master, SPI slave, I 2 C, UART and GPIO. Pmod pins are configured by the Pin Mux Controller using the PMOD_MUX_CTRL register. The peripheral connections for EMSK boards are shown below. Please note that the SPI slave is not available for the ARC_EM6 and ARC_EM6_GP configurations in EMSK 1.1. The EMSK 2.2 peripheral connections are compatible with EMSK 2.1 and 2.0. EMSK 1.1 Peripheral Device Connection to Pmods Pmod Connector MUX option0 MUX option 1 Pmod1 J1 GPIOs External SPI master + UART Pmod2 J2 GPIOs ARC EM control/status signals + I2C Pmod3 J3 GPIOs GPIO + I2C Pmod4 J4 GPIOs GPIO + I2C Pmod5 J5 GPIOs External SPI slave 1 and 2 Pmod6 J6 GPIOs External SPI slave 0 and CS outputs for all other SPI slaves + ARC EM control/status signals EMSK 2.x Peripheral Device Connection to Pmods Pmod Connector MUX option0 MUX option 1 Pmod1 J1 GPIOs External SPI master + UART0 Pmod2 J2 GPIOs ARC EM control/status signals + I2C_0 Pmod3 J3 GPIOs GPIO + I2C_0 Pmod4 J4 GPIOs GPIO + I2C_1 Pmod5 J5 GPIOs External SPI slave 1 + UART2 Pmod6 J6 GPIOs External SPI slave 0 and CS outputs for all other SPI slaves + ARC EM control/status signals 3

Pmod Interface The EMSK Pmod interface is used to connect low frequency, low I/O pin count peripheral modules. The twelve-pin version Pmod on the EMSK hardware board provides eight I/O signal pins, two power pins and two ground pins. The image below shows the Pmod pins location on the board connectors. Pmod bits [5] and [11] are shorted together and connected to ground (GND). Pmod bits [6] and [12] are shorted together and connected to a 3.3 V power supply. Pmod bits [4:1] and [10:7] are functional pins. Electrical specifications The I/O pins on the EMSK hardware board have symmetrical 24 ma source/sink capability. For most Pmod peripheral modules, a 3.3 V logic power supply is required and the signals conform to LVCMOS 3.3 V or LVTTL 3.3 V logic conventions. The pins driver should be able to source or sink at least 5 ma of current at whatever the operating speed of the interface on Pmod is expected to be. The amount of power that a peripheral module is allowed to draw from the host is not specified, but should not be assumed to be more than approximately 100 ma. Physical connection standard Pmod connections are made using standard 100 mil spaced, 25 mil square, pin-header style connectors. There are multiple connectors placed side-by-side along board edge on the EMSK board. The connectors are spaced 0.9 inch, center-to-center. This allows for 0.8 inch wide modules to be plugged side-by-side into the EMSK board without interference. Peripheral modules with multiple connectors must also have them spaced on 0.9 inch centers for direct connection to the EMSK board. In the following sections, peripheral modules complying with Digilent Pmod Interface Specification are introduced for I 2 C, SPI and UART interfaces. A flexible method is provided to make peripheral modules compatible with Pmod Interface Specification for your own modules. 4

Various Pmod peripheral modules can be bought from Digilent. Please visit http://www.digilentinc.com/products/catalog.cfm?navpath=2,401&cat=9 for Pmod peripheral modules and visit http://www.digilentinc.com/pmods/digilent- Pmod_%20Interface_Specification.pdf for the Digilent Pmod Interface Specification. Creating your own modules Pre-requisites Small, blank PCB board 2x4 pin header/2x6 pin header Soldering iron and wire, experience with small electronics soldering 2x40 pin double-row curved header 40-pin single-row header These components can be bought from Amazon and / or Taobao (China). I 2 C interface I 2 C pin assignment The peripheral module with I 2 C interface generally uses a 2x4 pin header connector to provide two sets of I 2 C signals, power and ground. So the I 2 C bus can be formed by daisy chaining modules and system boards. The following image and table show basic PCB dimensions, physical connector placement and pin numbering conventions for the module circuit boards intended for direct connection to the EMSK board. OLED module with I 2 C interface is introduced as an example. Pin Signal 1,2 SCL 3,4 SDA 5

5,6 GND 7,8 VCC OLED module SSD1306 is a 128 x 64 dot matrix OLED/PLED segment/common driver with controller. It can be connected with the I 2 C interface. The SSD1306 pin description is shown below. Pin Signal 1 VCC 2 GND 3 SCL 4 SDA Assemble the SSD1306 OLED module on a blank PCB and use wires to connect module pins to the 2x4 pins header connector according to the above I 2 C pin assignment. Then SSD1306 OLED module can be connected to the EMSK board as shown below. SSD1306 OLED modules can be bought from Amazon and Taobao by searching keyword OLED module. SPI interface SPI pin assignment 6

Pin Signal Direction Description 1 SS Out Slave select, active low to enable slave device 2 MOSI Out Master out slave in, data from master to slave 3 MISO In Master in slave out, data from slave to master 4 SCK Out Serial clock 5 GND -- 6 VCC -- 7 INT In Interrupt signal from slave to master 8 RESET Out Reset signal for master to reset slave 9 N/S -- Not-specified, depending on the module 10 N/S -- Not-specified, depending on the module 11 GND -- 12 VCC -- The peripheral module with SPI interface conforms to the pin assignment above. This provides a SPI interface plus additional control signals. The additional control and status signals can provide additional functions between master and slave devices. Please note that INT and RESET are implemented with EMSK GPIO signals when the EMSK board acts as a SPI master device. RF2 module MRF24J40MA is a SPI-based RF2 module and its pin description is shown below. Pin Signal Direction Description 1 GND Ground 2 RESET In Global hardware reset pin, active low 3 WAKE In External wake-up trigger 4 INT Out Interrupt pin to microcontroller 5 SDI In Serial interface data input 6 SCK In Serial interface clock 7 SDO Out Serial interface data output from MRF24J40 8 CS In Serial interface enable, active low 9 NC No connection (allow pin to float) 10 Vin Power supply 11 GND Ground 7

12 GND Ground Assemble the MRF24J40MA module on the blank PCB and use wires to connect module pins to the 2x6 pins header connector according to the above SPI pin assignment. WAKE signal (pin 3) is not defined in the SPI pin assignment and can be connected to EMSK Pmod connector pin 9. A GPIO signal acts as WAKE signal. The MRF24J40MA module can be connected to the EMSK board as shown below. MRF24J40MA RF2 modules can be bought from Amazon and Taobao by searching keyword MRF24J40MA. WiFi module RW 009 is a SPI-based WiFi module and its pin description is shown below. No. Signal Direction Description 8

1 VCC 3.3 V power supply 2 MOSI In Serial interface data input 3 MISO Out Serial interface data output 4 SCK In Serial interface clock 5 CS In Serial interface enable 6 RST In/Out Global hardware reset pin 7 INT Out Interrupt pin 8 GND Ground Assemble the RW 009 module on the blank PCB and use wires to connect module pins to 2x6 pins header connector according to the above SPI pin assignment. CS signal is connected to EMSK Pmod connector pin 9. A GPIO signal acts as CS signal. The RW 009 module can be connected to the EMSK board as shown below. UART interface UART pin assignment Pin Signal Direction Description 1 CTS In Device will only transmit when this signal is asserted 2 TXD Out Data from host to peripheral 3 RXD In Data from peripheral to host 4 RTS Out Device is ready to receive data 5 GND 6 VCC 7 INT In Interrupt signal from peripheral to host 9

8 RESET Out Reset signal for host to reset peripheral 9 N/S Not-specified, depending on the module 10 N/S Not-specified, depending on the module 11 GND 12 VCC The peripheral module with UART interface conforms to the above pin assignment. The hardware flow control and additional control signals are optional. EMSK UART signals CTS, TXD, RXD and RTS are programmable and can be configured to be any order on Pmod1 pins 1, 2, 3 and 4. Please note that INT and RESET are implemented with EMSK GPIO signals. BLE module The HM-10 is an UART-based BLE (Bluetooth Low Energy) module and its pin description is shown below. The HM-10 BLE module has two power supply pins, DV33 and DV50. If DV33 is connected to a 3.3V power supply, the TX/RX are 3.3V signals and DV50 should be kept floating. If DV50 is connected to a 5.0V power supply, the TX/RX are 5V signals and DV33 should be kept floating. Since the EMSK provides a 3.3V power supply from Pmod connector pins 6 & 12, the DV50 pin of HM-10 BLE module can simply be removed/clipped. The module can be connected to the EMSK board as below. EMSK Pmod1 pin 3 and pin4 are configured as RXD and TXD. 10

HM-10 BLE modules can be bought from Amazon and Taobo by searching keyword HM-10 BLE module. IMPORTANT NOTE: When making your own peripheral module connected to the EMSK board Pmod interface, the interface should be based on UART/SPI/I 2 C/IO. The power supply & signals of the module are 3.3 V since the EMSK board only provides 3.3 V power supply. When completing your own Pmod module, please check VCC and GND signals (Pin 6, 12, 5 and 11) and make sure that VCC signal is not connected to GND signal by mistake to avoid damaging the EMSK board. 11