BASICchip Pin Diagram
 



The BASICchip is a complete System on a Chip, all that is required is 2.5 through 3.3V power and GND.  Then just wire the available IOs into your application.  No extra crystals, external memories, or second supplies required.
 
There are a number of ways to program the BASICchip
 
BASIC function pin # alt notes
IO(39) TXD(0) 16 P1(7) Serial Output, TTL compatible (active high) -- debug connection
IO(38) RXD(0) 15 P1(6) Serial Input, TTL compatible (active high) -- debug connection
/RES 23 P0(0) RESET (internal pull-up) (active low)
IO(1) BOOT 24 P0(1) when LOW during reset, ISP is started which disables BASIC, (internal pull-up)

IO(4)
IO(5)

SCL
SDA

27
5

P0(4)
P0(5)

open drain outputs, can only pull down, require a pull-up resistor to drive high
can be connected to internal i2c peripheral

IO(2)
IO(3)
IO(6)
IO(7)
IO(8)
IO(9)
IO(10)
IO(11)

P0(2)
P0(3)
P0(6)
P0(7)
P0(8)
P0(9)
P0(10)
P0(11)

25
26
6
28
1
2
3
4








AD(0)

Input/Outputs -- user controlled - 0-3.3V level

4mA drive when configured as Outputs

P0.7 has a 20 mA driver

5V tolerant - use limiting resistor when connecting to a 5V supply

IO(32)
IO(33)
IO(34)
IO(35)
IO(36)
IO(37)
IO(40)
IO(41)

P1(0)
P1(1)
P1(2)
P1(3)
P1(4)
P1(5)
P1(8)
P1(9)

9
10
11
12
13
14
17
18

AD(1)
AD(2)
AD(3)
AD(4)
AD(5)

Input/Outputs -- user controlled

0-3.3V level

4mA drive when configured as Outputs

5V tolerant - use limiting resistor when connecting to a 5V supply

XTAL 19
20
optional crystal connection -- do not exceed 1.8V
VDD21Power 2.5-3.3V input power --do not exceed 3.3V
GND22Ground (0V)
AVDD 7 Analog power, must be equal to or less than VDD
AGND8Analog Ground (0V)

1These pins P0(4) and P0(5) are open-drain, when configured as outputs they can only pull down.
Port P1(x) pins can be accessed using the P1(x) keyword.  They can also be accessed using IO, IN, OUT, and DIR with indexes 32-41.
 
Minimal requirements to program a BASICchip
 
For reference the minimal connections for the BASIC chip are power (supplied from a 78L33 or similar or a 2V Zener diode, with adequate bypass caps) and connections for RESET, TXD0 and RXD0.  These are all that are needed to program the part from BASICtools.
 
 
Normally you can use the internal oscillator of the LPC1114, which is set to 12MHz plus or minus 1%,  This is good enough accuracy for serial communication and for most applications.  In this case XTALI and XTALO are not connected.  P0.1 is the BOOT line, you can use it as an output, but if you use it as an input, it must be high when RESET is asserted low, otherwise your BASIC program will not start up.
Below an illustration using the FTDI serial cable. This setup uses the 5V from the cable and a 78L33 to generate 3.3V. You should add bypass capacitors between power and ground.

 
 
USB dongle
 
And a minimal hookup with a Coridium USB dongle below.  This time using a 2V Zener diode to generate 3V from 5.  Notice the diode cathode mark, remember Zener diodes are reverse breakdown devices.  You should also add bypass capacitors between power and ground.
 
 
Using Zener Diode for power
 
Below another illustration using the FTDI serial cable. This setup uses the 5V from the cable and a 2V Zener diode to keep the supply at 3V, make sure the cathode of the diode connects to the 5V, remember Zener diodes are reverse breakdown devices. You should add bypass capacitors between power and ground. 
 
 
notes --
 
*PICaxe cable -- You can use FTDI's utility to un-invert the signals of the PICaxe USB cable, but that is a cumbersome process.