PPIC
IC DDevelopment Board Ultra 2
IC
+ Arduino UNO
USER'S GUIDE
WIDE.HK
page
2
PIC Development Board Ultra 2
Table of content
Introduction
Connectivity
Introduction to PIC . . . . . . . . . . . . . . . . . . . . . . . . . . . .03
PIC sockets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
04
Full I/O with LEDs . . . . . . . . . . . . . . . . . . . . . . . . . . ..
15
Key features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
It’s good to know . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 05
Create MPLAB Project + install software. . . . . . . . . . 06-08
Arduino & Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . 09
Displays
LCD 2x16 characters . . . . . . . . . . . . . . . . . . . . . . . . . .16
GLCD KS0108 128x64. . . . . . . . . . . . . . . . . . . . . . . . 17
Setting
0.96” OLED 128x64 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
Switches for MCU / Reset . . . . . . . . . . . . . . . . . . . . . 10
8 digit 7-seg display . . . . . . . . . . . . . . . . . . . . . . . . . .
19
Modules
Programming
On-board programmer . . . . . . . . . . . . . . . . . . . . . . . . 11
Oscillator / ICSP Jumper . . . . . . . . . . . . . . . . . . . . . . .12
DS18B20 - Digital Temperature Sensor . . . . . . . . . . . 20
.
4x4 Keypad Matrix. . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4x ADC inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Power Supply
I2C EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
DS1307 Real-Time Clock . . . . . . . . . . . . .. . . . . . . . .
24
IrDA Infrared Radiation Receiver . . . . . . . . . . . . . . . .
25
USB Communication
Stepper Motoer in Unipolar . . . . . . . . . . . . . . . . . . . .
26
PIC UART via USB UART. . . . . . . . . . . . . . . . . . . . . . 14
RC Servo motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
PIC via USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
DC motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
Piezo Buzzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
PS/2 Communication Interface . . . . . . . . . . . . . . . . .
29
NTSC Video-Out . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
Accelermeter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
MMC / SD PROTO. . . . . . . . . . . . . . . . . . . . . . . . . . .
30
Dual power supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Information
Examples / Chip information . . . . . . . . . . . . . . . . . . .
WIDE.HK
31
page
3
PIC Development Board Ultra 2
Introduction to PIC Development Board Ultra 2
The PIC Development Board Ultra 2 provided a economy and high performance development environment for students
and professional , the development board possess more function for different requirement , and to broaden the current life
needed. The PIC is base on CCS environment and a few example for Microchip C18 language to study , we hope you
can satisfaction of the develop of the hardware in the future.
WIDE.HK
4
page
PIC Development Board Ultra 2
Key features
5
1
11
28
15
23
24
33
17
18
19
20
21
22
8
9
12
16
14
7
3
2
4
6
29
13
34
25
10
28
31
32
26
30
27
Key Features
1. Power supply voltage regulator
2. On-board PIC programmer USB module
3. External debugger (ICD3) connector / PICKit2/3
4. USB-UART communication module / Arduino programmer
5. PS/2 Keyboard module
6. LED I/O switches
7. PIC UART jumper
8. DC-Motor module
9. Stepper Motor module
10. Full PIC16/24 I/O Port
11. Reset button / Servo motor 4x
12. Modules switches to enable pull-up/pull-down
13. 48x LEDs to indicate pins’ logic state
14. NTSC module
15. 30x PIC Push buttons inputs
16. 3-Axis Accelermeter module
17. DS1307 real-time clock module
18. IrDA Infrared Radiation Receiver
19. DS1820 temperature sensor module
20. Speaker module
21. I2C 24C16/LC16 EEPROMs
22. Keypad 4x4
23. 3x Oscillator for PIC16*/24
24. SD-Card Module with LEDs
25. 128x64 graphic LCD display(Or TFT) , 0.96 oLED
26. Seven Segment / 16x2 LCD display
27. 4x Touch pad (For additional experiment)
28. PIC16 microcontroller sockets
29. PIC24 microcontroller sockets (DIP28/40)
30. 4x A/D converter inputs
31. LCD I/O jumper
32. Arduino UNO
33. Ext. Port for additional module (eg. Bluetooth)
34. 2x LCD Contrast Potentiometer
Copyright and trademarks
Copyright © 2014 WIDE.HK
Microchip and dsPIC are registered marks of Microchip in the USA and other countries.
This document applies to PIC Development Ultra 2 hardware revision V6.0
WIDE.HK
page
5
PIC Development Board Ultra 2
It’s good to know
The PIC development boards were equipped with PIC16® as the default chip.
Now we are giving you standared chip for user, PIC16F877A is the default
chip of PIC Ultra 2+ , It has 8K bytes of linear program memory, 256 bytes of
linear data memory, and support for a power supply from 1.8V to
5V. It’s loaded with great modules:
32 General purpose I/O pins, 5 Analog Input pins
(AD), 10-bit, up to 8-channel Analog-to-Digital
Converter (A/D). It also has pair of CCP, 2 Comparators
tors
and MSSP modules (which can be either SPI or I2C).
).
High Performance, Low Power Atmel®AVR® 8-Bit
Microcontroller Family Atmega328P is the default
chip of Arduino UNO, it has a 32K bytes flash
memory, 1k bytes EEPROM , 20 MIPS Throughput
at 20MHz, 23 General purpose I/O pins,
6x PWM Channels, I2C and SPI.
Power supply
7–20V AC or 9–25V DC
or via USB cable (5V DC)
M
Modules
Up to 12 Modules for all
Testing
Board dimensions
300 x 188mm (30x18.8cm)
Weight
~325g (0.712 lbs)
Package contains
CD-ROM :
1) Manual / Schematics
2) Software / Example
PCB color : RED / Purple
MCU :
1) PIC16F877A (on-Board) x1
2) Atmega328 (on-Board) x1
Accessories contains
1602 LCD Display x1
0.96” 128x64 OLED x1
WIDE.HK
Dupont wire x 20
8 Channel IR Remote
PIC Development Board Ultra 2
Create MPLAB project
1) Install MPLAB from CD-ROM Develop Tools of “MPLAB_IDE_8_88 ”
*Install MPLAB-X from CD-ROM if possible*
2) Install C18 & C30 tools from “Comiler ” folder
3) Install CCS_PCWHD_4.184
4) Setup the PICkit 2 from CD-ROM
5) Click the MPLAB ICON from desktop
6) Click the Project WIZARD
Microchip MPLAB
page
6
7) Click the “NEXT”
8)Select the PIC Device PIC16F877A or PIC18F46K20
C18F46K20
9) Click the “Micrichip C18 Toolsuite
10) Select the ”MPLAB C18 Compiler(mcc18.exe(
18.exe( v3.46)
v3.46 “
v3.
and Click ”Next”
WIDE.HK
page
7
PIC Development Board Ultra 2
Create MPLAB project
13) Input the MPLAB Projector path , read the example as below and click “SAVE”
14) CLick “Next”
WIDE.HK
Microchip MPLAB
11) First , please copy the example from your CD-ROM to you PC , such as : “C: drive”
12) Click the “Browse” of selection
page
8
PIC Development Board Ultra 2
Create MPLAB project
15) Select your exmaple and “ADD>>” to your created proejct (Example as below)
16) Click the “Next” and “Finished”
15) Successful and you can click the build the output the *.hex file
**PS : (User also can be select the programmer and PICKIT2, BUT IT IS NOT A FULL HARDWARE SUPPORT
FOR ALL PIC DEVICES, so you may need a *.hex file and load from PICKIT2 software after you compiler.)
WIDE.HK
page
9
PIC Development Board Ultra 2
Arduino & Hardware
1) Install “ arduino-1.5.6-r2-windows.exe” from CD-ROM Arduino folder
** P.S You can be copy the “arduino-0023” folder to your P.C without install, it is old
version but compatible all example.
2) The Arduino exmaple is contains a libraries such as *.c or *.h , User must under the
arduino libraries folder to create a example folder for it, and copy the *.c or *.h to
your example BEFORE to open the Arduino Software.
WIDE.HK
page
10
PIC Development Board Ultra 2
Switches for MCU / Reset
Switches
TO MCU (RESET/MCLR)
to A rduino
The purpose of the protective resistor is to limit maximum current thus preventing a short circuit from occurring. Just next to
the push buttons, there is a RESET button which is not connected to the MCLR pin.
RESET
R55
RESET
330R
GND
R56
VCC
10K
The switches can connected to MCU with modules when you pull up.
Reset Button for MCU devices
To modules
VR1 (ADC)
VR2 (ADC)
VR3 (ADC)
VR4 (ADC)
Stepper (A)
Stepper (B)
Stepper (C)
Stepper (D)
VCC
To modules
PS2(CLK)
PS2(DAT)
NTSC(OSC)
NTSC(OSC)
DC motor +1
DC motor +2
Enable 18F_J
Enable USB
Switch for Devices and I/O
To I/O LEDs
Switch
5V
3.3V
MCU VCC
Select the voltage for PIC.
To MCU I/O
7 8
RA0
RA1
RA2
RA3
RC0
RC1
RC2
RC3
PIC10/12/16/18 PIC24
7 8
RB0
RB1
RA4
RB4
RA1
RA0
Vcap(18J)
VUSB(RC3)
[
RA
RB
RC
RD
RE
B2
B3
RA4
7 8
To MCU I/O
To MCU I/O
VCC
28pin
RA5
40pin
RA5
Switches have a few function to PIC MCU , such as LEDs , PS2, NTSC, DC Motor, 18F_J, ADC, Stepper and Enable function of
PIC USB, so select you needed and pull up.
WIDE.HK
page
11
PIC Development Board Ultra 2
Programming
Connected with PIC programmer
Two Programmer available at same time connected
to PC , the black USB can be connected to MCU
directly such as 18F2550 USB interface with UART.
PIC Chip type selector :
Left (DIP40/28/18)
Right (DIP20/14/8)
How to Connect with Arduino?
TX LED lights is send data
RX LED lights is receive data
ACT (Active) LED lights
up when PC is connected.
USB Module (RX and TX)
Driver !
**User might need to install UART USB driver, the driver in CD-ROM > develop tools > UART driver
For 32bit : Installer_x86.exe
For 64bit : Installer_x64.exe
For MacOS : USBDriverDisk.dmg
WIDE.HK
page
12
PIC Development Board Ultra 2
Oscillator / ICSP jumper
Oscillator
FOR PIC24 USING
*RTCC
RA4
RB4
32.768kHZ
*For PIC DIP18 DIP28 , DIP40
*For PIC DIP20 , DIP14 ,DIP8
OSCB_2
FOR PIC24 USING
RA2
RA7 RA6
OSCA_2
RA4
RA5
RA3
OSCA_1
OSCB_1
OSCC
OSCB
OSCA
FOR PIC Porgrammer such as PICKIT2/ICD3
ICD (VPP)
On-Board Programmer
On-Board Programmer
24F (PGD)
24F (PGC)
MCU (VPP)
ICSP Pin
ICD (PGC)
MCU (PGC)
On-Board Programmer
Vpp/ MCLR
VSS/ GND
PGC/ ICSP_CLK
Vcc +5V
PGD/ ICSP_DAT
N/A
WIDE.HK
MCU (PGD)
ICD (PGD)
The jumper for you connect internal
programmer or External , Such as
additional ICD3 Debug Tools
page
13
PIC Development Board Ultra 2
Power Supply
Dual Power
Board contains switching power supply that creates
stable voltage and current levels necessary for
powering each part of theboard. Power supply
section contains two power regulators:
MC34063A which
generates VCC-5V, and
ASM117-3.3 which
creates VCC-3.3V power .
Supply Select
USB Power
ON/OFF
SWITCH1
3
DC. 5.0v
1
3
2
1
VCC
Ext Power
R38
R36
E3
3K
1,7,8
J1
DC 9-20V
2
3
1
1
4
U3
3
100uF
L2
110uH
4.7R
5
V in
3.3v
GND
6
U1
C20
0.1uF
3
220P
ASM1 117-3.3
2
V in
Vout
GND
1
D2
C18
2
4
U2
3
MC34063A
E3
C19
0.1uF
E2
100uF
100uF
GND
GND
GND
GND
GND
GND
GND
GND
The board can be powered in Two different ways:
with USB power supply , or external adapter voltage levels must be in range of 9-12V DC or
9-20V AC. Use switch to specify which power source you are using 5V or 3.3V . Upon providing the
power using either external Supply or USB power source you can turn on power supply by using
SWITCH Power LED will indicate the presence of power supply.
* MCU POWER SUPPLY
For Standard o r nanoWatt XLP
TO MCU
3.3V
C30
3
1
2
VCC
Jumper
0.1uF
0.1uF
GND
WIDE.HK
C29
page
14
PIC Development Board Ultra 2
USBCommunication
Jumper for UART to MCU,
eg 1. PIC16F877A is RC7 and RC6
eg 1. PIC16F88 is RB2 and RB5
Fig 14.2
Fig 14.1
PIC UART via USB UART
DC. 5.0v
USB_VCC
VCC
7,8
VCC
5 USB D-
U A RT
E xt.U SB
USB Type A
RN8
1K
RN8
1K
TX LED
11
1
RX LED
26
D- RC4
D+ RC5
+
GND
25
4 USB D+
3
1
2
JUMPER
GND
to RXD
to TXD
VCC
Vcc
Pin 1 : VCC 5V
Pin 4 : GND
to MCU Jumper
RN8
1K
PWR
RC0
RC1
RC2
RC3
D2
Fig 14.1
PIC via USB
* Closed the jumper to Ext.USB and enable the USB port function
with PIC such as 18F4550 or 18F2550...
1
4
GND
3
D+
* Turn on the switch " Vusb " to enable usb devices
PIC(RC3)
RC4
2
JUMPER
WIDE.HK
7 8
D-
RC5
D+
RC6
RC7
C32
0.47u
3
Switch
page
15
PIC Development Board Ultra 2
Connectivity
Fig 15.1
Fig 15.2
The board contains eleven DIP sockets: DIP40, DIP28, DIP20, DIP18A, DIP18B, DIP14, DIP8 and support
for PIC10F MCUs. With dual power supply and smart on-board PIC Development board is capable of
programming more microcontrollers from PIC10F, PIC12F, PIC16F, PIC18F, PIC18FJ , PIC18FK ,PIC24FJ,
PIC24HJ and dsPIC33(28pin) families. There are two DIP18 sockets for PIC microcontrollers provided on
the board - DIP18A and DIP18B.
IMPORTANT: When using PIC18F2331 or PIC18F2431 microcontrollers it is necessary
to place jumper, in order to route VCC power line to RA5 pin (Figure 15.3)
Fig 15.3
PIC I/O with LEDS / Arduino PWM LEDs
1K
1K
1K
1K
PIC24
PORT RE
RA0
AVdd
GND
RA2
RB15
RB0
RB14
RB1
RB13
RB2
RB12
RB3
RB11
GND
RB10
Cap
RA3
C7
PIC24
AVdd
RA0
RB25
RA1
RB24
RB0
RB23
RB1
RB22
RB4
GND
RB9
RB2
RA4
RB8
RA16
Vdd 3.3v
RB7
RB17
RB12
RB5
RB6
RA2
C13
44pin(PIC24FJ64GA004)
dsPIC33FJ64GP802
RB15
RB14
RB3
C12
RB18
RB11
GND
RB10
RA2
Cap
RA3
RA8
RA7
RB4
RA4
PORT RB
1K
PORT RC
1K
R52
Vdd 3.3V
PORT RD
1K
RA9
RA10
RB5
RB21
C14
C12
D9
C9
D11
RA4
B3 PIC24
B2
RE
RD
RC
RB
Arduino PWM LEDs
PORT RB (For PIC24/33F)
WIDE.HK
C11
C15
RB6
RB20
C10
PORT RB (For PIC24/33F)
RB8
RB7
AVdd
D5
D10
RB9
RB19
D3
D6
RB13
page
16
PIC Development Board Ultra 2
LCD 2x16 characters
HD44780
VR5
Microchip Chip
10k
Control
to PIC
4Bit Data
Jumper Setting ::
E
CS
RW
DB0
DB1
DB2
DB3
DB4
DB5
DB6
DB7
3
PIC MCU Port
- DATA BUS LCD Port
or Connect to Arduino
Fig 16.2 (For reference)
Fig 16.1
Connector pinout explained
Liquid Crystal Displays or LCDs are cheap and popular
way of representing information to the end user of
some electronic device. Character LCDs can be used
to represent standard and custom characters in the
predefined number of fields. PIC Ultra 2 provides the
connector and the necessary interface for supporting
2x16 character LCDs in 4-bit mode. This type of display
has two rows consisted of 16 character fields. Each
field is a 7x5 pixel matrix. Communication with the
display module is done through jumper connector.
GND and VCC - Display power supply lines
Vo - LCD contrast level from potentiometer P4
RS - Register Select Signal line
E - Display Enable line
R/W - Determines whether display is in Read or Write mode. It’s
always connected to GND, leaving the display in Write mode all
the time.
D0–D3 - Display is supported in 4-bit data mode, so lower half of
the data byte interface is connected to GND.
D4–D7 - Upper half of the data byte
Arduino Code : Example\Adrino UNO Example\03 4Bit_1602
LED+ - Connection with the back-light LED anode
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\03 Ex_1602
LED- - Connection with the back-light LED cathode
WIDE.HK
page
17
PIC Development Board Ultra 2
GLCD 128x64
KS0108
VR6
Microchip Chip
to PIC
Jumper Setting ::
MCU Port
DB0
DB1
DB2
DB3
DB4
DB5
DB6
DB7
CS1
CS2
CS
RW
E
RST
to PIC
- DATA BUS -
LCD Port
or Connect to Arduino
ADC:RA0
WIDE.HK
**The Pin port is compactable with EasyPIC5/6/7
and Example**
Connector pinout explained
Fig 17.1
Fig 17.2 (For reference)
1 /CS1 H/L CHIP SELECT SIGNAL FOR IC1
2 /CS2 H/L CHIP SELECT SIGNAL FOR IC2
3 VSS - 0V
4 VDD - +5V
5 VO - CONTRAST ADJ.
6 RS - Data (High), Instruction (Low) selection line
7 R/W H/L H:READ(LCD MPU) L:WRITE(MPU LCD)
8 E Display Enable line
9 DB0 H/L DATA BIT0
10 DB1 H/L DATA BIT1
11 DB2 H/L DATA BIT2
12 DB3 H/L DATA BIT3
13 DB4 H/L DATA BIT4
14 DB5 H/L DATA BIT5
15 DB6 H/L DATA BIT6
16 DB7 H/L DATA BIT7
17 RST L RESET SIGNAL
18 VEE - Reference voltage for GLCD contrast
19 LED+ - Connection with the back-light LED anode
20 LED- - Connection with the back-light LED cathode
Graphical Liquid Crystal Displays, or GLCDs are used to display
monochromatic graphical content, such as text, images, human-machine
interfaces and other content. The GLCD with resolution of 128x64 pixels,
driven by the KS0108 or compatible display controller.
Arduino Code : Example\Adrino UNO Example\02 KS0108
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\02 Ex_12864(KS0108)
WIDE.HK
page
18
PIC Development Board Ultra 2
0.96 OLED 128x64
SSD1306
0.96 OLED Port
SPI Mode to Arduino
5v | 3.3v
D0
(SCLK)
D1
(SDIN)
D2
Vcc
D3
WR
D4
RD
RD7
ICSP
RS
CS
D5
RES
D6
Vss
D7
Vss
RN28
10R
RN28
10R
Full 8080 I/O Mode to PIC
Demo in SPI for PIC
R51
1k
RA5
RA4
RE0
RE1
RE2
Arduino
RD0
RN28
10R
13 12 11 10 9
RN28
10R
*Microchip PIC18F_ (The Example is SPI mode in CCS, because 16F877A is not enough the RAM)
*Microchip PIC18F_K (The Example is SPI mode in C18)
The Arduino Example can be plug the OLED module on the port to display the screen as a picture. If for PIC example,
user might need to using 7 -wire for connected with a demo for testing, plug and play is not working in microchip (DM164134)
C18 demo. The connection as below
1 CS >> RA7
2 RES >> RA4
3 RS >> RA5
4 D0 (SCL) >> RC3
5 D1 (SDA) >> RC5
WIDE.HK
6 VCC >> 3.3v / 5v
7 GND
Arduino Code : Example\Adrino UNO Example\21 SSD1306 SPI_OLED
PIC Code : Example\PIC18F_C18_Example\01 SPI SSD1306 OLED
PIC CCS is not included. Pls reference Page33(Additional-Chip)
page
19
PIC Development Board Ultra 2
8 digit 7-Seg display
RD0 RD1 RD2 RD3 RD4 RD5 RD6 RD7
DIG
DIG1
A
B C
D E F G dp
DIG8
1
2
3 4
5
6 7
8
Q1 - Q8
BC847
DIG1
DIG2
DIG3
DIG4
DIG5
DIG6
DIG7
DIG8
7-Segment
A
B
C
An cathode LED
D
E
F
G
DP
Details : Read a schematics(CD-ROM)
One seven segment digit consist of 7+1 LEDs
which are arranged in a specific formation which
can be used to represent digits from 0 to 9 and
even some letters. One additional LED is used
for marking the decimal dot, in case you want to
write a decimal point in the desired segment.
PIC development Ultra 2 contains eight of these
digits put together to form 8-digit 7-segment
display. Driving such a display is done using
multiplexing techniques. Data lines are shared
between segments, and therefore the same
segment LEDs in each digit are connected in
parallel. Each digit has it’s unique digit select line.
Arduino Code : Example\Adrino UNO Example\14 Segment
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\14 Ex_Segment
WIDE.HK
page
20
PIC Development Board Ultra 2
DS18B20 - Digital Temperature Sensor
DS18B20
Arduino
PIC
R49
How to connect with Arduino?
RB0 | RA0
DQ
Pin 2 connect to ouput (DQ)
DS18B20 Thermometer
2 1 0
Arduino
ICSP
The DS18B20 is the digital thermometer from Dallas Semicondutor (Maxim). It communicates with the microcontroller
by the 1-Wire® interface. The temperatures from -55°C to 125°C with an accuracy of +/- 0.5°C. The DQ (data pin) is
connected to the RA0 OR RB0 pin of the PIC16F877A microcontroller. The data pin should be connected to power
supply through 10k pull-up resistor.
Arduino Code : Example\Adrino UNO Example\05 DS18B20
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\05 Ex_DS18B20_LCD
Fig 20
DS1820 is a digital temperature sensor that
uses 1-wire® interface for it’s operation.
It is capable of measuring temperatures
within the range of -55 to 128°C, and
provides ±0.5°C accuracy for temperatures
within the range of -10 to 85°C. It requires
3V to 5.5V power supply for stable operation.
It takes maximum of 750ms for the DS1820 to calculate temperature with 9-bit resolution. 1-wire® serial communication
enables data to be transferred over a single communication line, while the process itself is under the control of the
master microcontroller. The advantage of such communication is that only one microcontroller pin is used. For arduino
, connected DS18B20 (DQ)pin to arduino 2 pin, the LCD setting please reference the example code for it.
WIDE.HK
page
21
PIC Development Board Ultra 2
4x4 Matrix Keypad
4x4 Keypad
PIC Mode RB0-3 (Col), RB4-7(ROW)
For PIC PIN
Microchip Chip RB
1
2
3
A
4
5
6
B
7
8
9
C
RB0-3 RB4-7
COL
ROW
Jumper : Plug the 4x4
8
1
RN2
10K
8
1
VCC 5V
[
VCC
GND
** Please note the direction
Arduino pin
COLs
Arduino D8 pin to Port RB0 pin
Arduino D9 pin to Port RB1 pin
Arduino D10 pin to Port RB2 pin
Arduino D11 pin to Port RB3 pin
ROWs
Arduino A2 pin to Port RB4 pin
Arduino A3 pin to Port RB5 pin
Arduino A4 pin to Port RB6 pin
Arduino A5 pin to Port RB7 pin
Arduino Code : Example\Adrino UNO Example\12 4x4 Keypad_LCD1602
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\12 Ex_4x4 Key
WIDE.HK
page
22
PIC Development Board Ultra 2
4x ADC inputs
ADC
RA0~RA3 is A/D input
VCC
VCC
JUMPER
VR4
VR4
VCC
VCC
VR3
VR3
Power In
VCC
VR2
VR1
ICSP
Analog In
0 1 2 3 4 5
VCC
VCC
VR2
VCC
Connected with wire to Arduino Analog in
VR1
DIP40 package and A/D converter test inputs connection
RA0~RA3 is A/D input
DIP18A package and A/D converter test inputs connection
RA0~RA3 is A/D input
VCC
VCC
VR4
VR4
VCC
VCC
JUMPER
VR3
VR3
VCC
VCC
JUMPER
VR2
VR2
VCC
VR1
DIP40 package and A/D converter test inputs connection
VCC
VR1
DIP28 package and A/D converter test inputs connection
Digital signals have four discrete states, which are decoded as high and low, and interpreted as logic 1 and logic 0. Analog
signals, on the other hand, are continuous, and can have any value within defined range. A/D converters are specialized
circuits which can convert analog signals (voltages) into a digital representation, usually in form of an integer number.
The value of this number is linearly dependent on the input voltage value.
The A/D converter built into the microcontroller provided with
the PIC development system converts an analog voltage value
into a10-bit number. Voltages varying from 0V to 5V DC may
be supplied through the A/D test inputs in VR0,VR1,VR2 and
VR3 for Port RA0 to RA3.
Arduino Code :
Example\Adrino UNO Example\06 ADC_LCD1602
PIC Code :
Example\PIC16_CCS Example\16F877A_CCS\06 Ex_ADC
WIDE.HK
page
23
PIC Development Board Ultra 2
I2C EEPROM
I2C ™ EEPROMs
VCC
Vcc : 5V Full Operation
16k Bit
A0
A1
WP
[ PIC | Arduino ]
24LC16
A2
SCL (RC3 / A5)
GND
SDA (RC4 / A4)
R63
4.7K
R64
4.7K
VCC
16K bit Electrically Erasable PROMs in ISO modules for smart card applications. The device is organized as four or eight blocks of 256 x 8-bit memory with a 2-wire serial interface. The 24LC16 also have
a page-write capability for up to 16 bytes of data.
EEPROM is short for Electrically Erasable Programmable
Read Only Memory. It is usually a secondary storage
memory in devices containing data that is retained even
if the device looses power supply. Because of the ability
to alter single bytes of data, EEPROM devices are used
to store personal preference and configuration data in a
wide spectrum of consumer, automotive, telecommunication,
medical, industrial, and PC applications.
EEPROM which uses I2C communication interface and has
16 kbytes of available memory. Board contains socket for
serial EEPROMs in DIP8 packaging, so you can easily
exchange it with different memory size EEPROM IC.
EEPROM itself supports single byte or 16-byte (page) write and read operations.
Data rate is 400 kHz for both 3.3V and 5V power supply.
Arduino Code : Example\Adrino UNO Example\18 24C16 eeprom
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\18 Ex_RW_EEprom
WIDE.HK
page
24
PIC Development Board Ultra 2
DS1307 Real-Time Clock
RTC Clock
32.768khz
X1
X2
Vcc2
CR2032
3V Cell
VCC
DALLAS
DS1307
GND
DS1307 64 x 8, Serial, I2C Real-Time Clock
[ PIC | Arduino ]
SDL (RC3 / A5)
SDA (RC4 / A4)
R61/R62
4.7K
VCC
The DS1307 Serial Real Time Clock is a low power, full BCD clock/calendar plus 56 bytes of
nonvolatile SRAM. Address and data are transferred serially via a 2-wire bi-directional bus. The
clock/calendar provides seconds, minutes, hours, day, date, month, and year information.
The RTC2 Board features the
DS1307 serial real-time clock
(RTC). It is a low-power, full
binary-coded decimal (BCD)
clock/calendar plus 56 bytes of NV SRAM. Timekeeping operation continues even when the power supply goes off
as it is then powered from the backup supply. It is easily connected to standard prototyping boards. The board comes
with the appropriate schematic and software examples.
Arduino Code : Example\Adrino UNO Example\15 DS1307_LCD1602
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\15 Ex_DS1307_LCD_UART
WIDE.HK
page
25
PIC Development Board Ultra 2
IrDA Infrared Radiation Receiver
IrDA - Infrared radiation
Infrared Data Association, a group of device manufacturers that developed a standard for
transmitting data via infrared light waves. Increasingly, computers and other devices come
with IrDA ports are PortB ,from RB0 to RB7 of 8 channel for LED example.
IrDA
Testing the Infrared radiation with 8 channel LED on RB0-RB7 & 10Mhz
Microchip Chip RA0
Remote 38Khz
GND
OUT
VCC
Jumper
RA0
*When running the IrDA infrared example
Please disconnected the button jumper (Fig 25) for All.
Even pullup/down , Vcc or GND.
Arduino Example : Remote out = Arduino 8 pin
Fig 25.
WIDE.HK
Arduino Code : Example\Adrino UNO Example\08 IrDA Receiver
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\08 Ex_IR Receiver
page
26
PIC Development Board Ultra 2
Stepper Motoer in Unipolar
Stepper Motor
Jumper
for PIC / Arduino
Unipolar Stepper Motor
Microchip Chip RC0/1/2/3
7 8
RC0
RC1
RC2
RC3
A>
B>
C>
D>
I N 1 Out1
I N 2 Out2
I N 3 Out3
+5v ~ 12v
+
I N 4 Out4
I N 5 Out5
I N 6 Out6
I N 7 Out7
Vcc
R40
1K
How to connect with Arduino?
Vcc1
Vcc
}
}
Coil
Fig 26.1
Fig 26.2
Fig 26.3
There are 3 spare darlington pairs on the ULN2003 driver chip, and, with a pull-up resistor for each, these can serve as
open-collector inverters to translate one or two switch settings into inputs appropriate for the CounterClockwise or
Clockwise. It is support 2 model stepper 5-wire (Fig26.3( 28BYJ-48 step) or 6 wire (Fig26.2) and they are running or step
is different.
Arduino Code : Example\Adrino UNO Example\09 Stepper_ULN2003
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\09 Ex_Stepper_Motor
WIDE.HK
page
27
PIC Development Board Ultra 2
RC Servo
RC Servo
A Servo is a small device that incorporates
a three wire DC motor, a gear train, a
potentiometer, an integrated circuit, and
an output shaft bearing. Of the three wires
that stick out from the motor casing, one is
for power, one is for ground, and one is a
control input line. The shaft of the servo can
be positioned to specific angular positions by
sending a coded signal. As long as the coded
signal exists on the input line, the servo will maintain
the angular position of the shaft. If the coded signal
changes, then the angular position of the shaft changes.
Servos are constructed from three basic pieces; a
motor, a potentiometer (variable resister) that is
connected to the output shaft, and a control board.
The potentiometer allows the control circuitry to monitor the current
angle of the servo motor
RC0
RC1
RD0
RD1
SIG VCC GND
How to connect with Arduino ?
1) Unplug the PIC Chip
2) Used cables connected to RC0...RD1 directly
4x Servo direct to PIC
Fig 27.2
Fig 27.1
Arduino Code : Example\Adrino UNO Example\11 Servo_ADC
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\11 Ex_Servo
WIDE.HK
page
28
PIC Development Board Ultra 2
DC Motor / Piezo Buzzer
DC Motor
The L2722 is monolithic
integrated circuits in minidip
intended for use as power
operational amplifiers in a wide
range of applications including
servo amplifiers and power
supplies.
Fig 28.1
Fig 28.2
Supply Voltage
Vcc : 5V Full Operation
VCC
Supply Voltage for DC 5-12V
D3
+
+
C17
100nf
DC Motor
D4
R67
10K
-
DC2722
-
INPUT1
RA0
INPUT2
RA1
GND
R68
10K
Arduino Code : Example\Adrino UNO Example\10 DC Motor
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\10 Ex_DC_Motor
Piezo Buzzer
VCC
PERSPECTIVE
VIEW
TOP
VIEW
PZ1
BUZZER
BUZZER
R48
RC2
10K
Jumper
Q11
2N8050
Buzzer starts "singing" when you provide PWM signal
from the microcontroller to the buzzer driver. The pitch
of the sound is determined by the frequency, and
amplitude is determined by the duty cycle of the PWM
signal.
Arduino Code : Example\Adrino UNO Example\04 Buzzer
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\04 Ex_Buzzer
WIDE.HK
page
29
PIC Development Board Ultra 2
PS2 / NTSC Video
PS/2
VCC
R41
R42
10k
10k
RB1
RB0
Jumper
Fig 29.1
The PS/2 connector enables input units, such as
keyboard and mouse, to be connected to the
development system. In order to enable
PS/2 communication, it is necessary to correctly
switch to devices, thus connecting DATA and CLK
lines to the microcontroller pins RB0 and RB1.
Arduino is connect to Jumper and switch off the PS/2.
Front View
Bottom View
Fig 29.2
Arduino Code : Example\Adrino UNO Example\19 PS2Keyboard
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\19 Ex_PS2_Keyboard
NTSC Video-Out
BC847
VCC
GND
1A
Q10
2B
E4
100u 16v
R58
3.3K
R59
3.3K
R60
4.7K
+
Fig 29.3
H
R57
75R
V
RB10
RB11
PIC24FJ64GA002
The NTSC standard for television defines a composite video signal with a refresh
rate of 60 half-frames (interlaced) per second. Each frame contains 525 lines and can
contain 16 million different colors. RB10 and RB11 is for frequency.
Arduino Code : Example\Adrino UNO Example\20 NTSC Video
PIC Code : Example\PIC24_C30_Example\03 Ex_PIC24 NTSC-Video
WIDE.HK
page
30
PIC Development Board Ultra 2
SD PROTO
MMC CARD
READY
R65
1K
P
P
A MultiMedia Card (MMC) have been superseded by
Secure Digital Cards (SD cards) lately, but they are still very popular
and widely used because they can be utilized with most devices that
support SD cards.
The MMC/SD PROTO additional board enables data read/write
between a 3.3V microcontroller and MMC/SD cards. Data transfer is
performed via a standard Serial Peripheral Interface (SPI).
Arduino Code : Example\Adrino UNO Example\19 PS2Keyboard
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\19 Ex_PS2_Keyboard
Accelermeter
** Select 3.3V OR 5V for modules
(it may damaged if wrong voltage, plese read a datasheet for modules before selected voltage)
X
Y
Z
VCC
NC
NC
GND
3.3v 3.3v
RA0
RA1
RA2
NC
Y (RA1)
NC
GND GND GND
Z
Z (RA2)
ST (SelfTest)
ST
X (RA0)
5V
NC
Y
COM
VCC
ADXL3xx
ST
3.3V
X
NC
The board is a small smart sensor
to measure acceleration within a
range of 3g of 3 axes. To measure
acceleration the Analog Devices
ADXL3xx and a PIC16F877A
microcontroller is used.
The board has a expansion port, which can be used as a digital
input and1602 LCD output
*Module IS NOT Included
Arduino Code : Example\Adrino UNO Example\07 ADXL3xx Accelerometer
PIC Code : Example\PIC16_CCS Example\16F877A_CCS\07 EX_ADXL330
WIDE.HK
page
31
PIC Development Board Ultra 2
Information
Information
Schematics :
1) Schematic_1.pdf
2) Schematic_2.pdf
3) Schematic_3.pdf
4) Schematic_4.pdf
Datasheet :
1) Chip datasheet
2) LCD/GLCD/OLED
Application :
1) Arduino Tools
2) MPLAB / PICkit2 Tools
3) CCS compiler Tools
4) UART Tools / Driver
WIDE.HK
DISCLAIMER
This product is provided “as is”. ingenia-cat expressly disclaims any warranty of any kind,
whether express or implied, including but not limited to, the implied warranties of
merchantability, fitness for a particular purpose, or non-infringement.
In no event shall ingenia-cat be liable for any incidental, special, indirect or consequential
damages, lost profits or lost data, harm to your equipment, cost of procurement of substitute
goods, technology or services, any claims by third parties (including but not limited to any
defense thereof), any claims for indemnity or contribution, or other similar costs.
WIDE provides this manual ‘as is’ without warranty of any kind, either expressed or implied,
including, but not limited to, the implied warranties or conditions of merchantability or fitness
for a particular purpose.
TRADEMARKS
The WIDE name and logo, the WIDE logo, PIC Development Board Ultra 2™ are trademarks
of WIDE.HK. All other trademarks mentioned herein are property of their respective companies.
All other product and corporate names appearing in this manual may or may not be registered
trademarks or copyrights of their respective companies, and are only used for identification or
explanation and to the owners’ benefit, with no intent to infringe.
W
Copyright © WIDE.HK™, 2014, All Rights Reserved.
Recommend using PIC18 CCS instead of PIC16F877A for DEMO
WU-001 0.96 SSD1306 OLED $8.0
WU-002 4x4 Keypad $2.5
Additional
Parts
WU-003 2.8”ILI9325 TFT Display $18
WU-005 DC-Motor $3.5
WU-007 28BYJ-48 Stepper $3.5
WU-004 KS0108 128x64 GLCD $15
WU-006 MG995 Servo $8.5
WU-008 6-Wire Stepper OLED $5.5
* Recommend using PIC18 instead of PIC16F877A
RAM size is more than 16F
For 0.96 OLED SPI mode in CCS Demo
PIC18F4550-DIP $5.0
*
PIC18F4620-DIP $5.0
PIC18F4520-DIP $5.0
PIC18F452 -DIP $5.0
For microchip (DM164134) C18 Oled Demo
PIC18F45K22-DIP $3.5
Additional
Chip
PIC18F2550-DIP $5.0
PIC24FJ64GA004 (40pin) $6.0
PIC18F46K20-DIP $3.5
PIC18F46K22-DIP $3.5
PIC24FJ64GA002-DIP $3.5
Bluetooth Module $9.5
PIC Android Module $9.5
Ethernet Module coming soon...
note :
WIDE.HK