AIS CUBE
2.83” AMOLED DISPLAY
Datasheet & Application Note | Rev.A | July 2010 Release
TECHNICAL OVERVIEW
Diagonal Size Driving Mode Colour Mode Interface Mode Driver IC Resolution Pixel Pitch Active Area Outline Area Thickness Weight Touch Screen
2.83� Active Matrix 16bit RGB 5/6/5 262K Colours 16bit RGB Interface (One Transfer per Pixel) S6E63D6 320 x RGB x 240 0.06 x 0.18 mm 43.2 x 57.6 mm 49.1 x 67.3 mm 1.75mm (Typical) 16g 4-wire Resistive
oled pin assignment
Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Name AR_VDD AR_VSS VCI VCI1 GND C12M C12P C11M C11P VLOUT1 C31P C31M C32P C32M VLOUT3 VLOUT2 C21P C21M VGS IOVCC
21
SPB
22
ID_MIB
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
DB17 DB16 DB15 DB14 DB13 DB12 DB11 DB10 DB9 DB8 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Description Positive Voltage for OLED (+4.6V) Negative Voltage for OLED (-4.6V) Power Supply for Analogue Circuit (2.5V-3.3V) A reference voltage for 1st booster(Connect a 1uF/10v capacitance to Gnd) Ground External capacitance connect pin between C12M and C12P (1uF/10V) External capacitance connect pin between C11M and C11P 1st booster output pin. (1uF/10V) External capacitance connect pin between C31M and C31P (1uF/10V) External capacitance connect pin between C32M and C32P (1uF/10V) 3rd booster output pin. (1uF/16V) 2nd booster output pin. (1uF/16V) External capacitance connect pin between C21M and C21P. (1uF/10V) A reference level for the grayscale voltage generation circuit. (Connect to Gnd) I/O power supply Select the CPU interface mode. (0=parallel interface 1=serial interface) Select the CPU type (0=Intel 80x-system 1=Motorola 68x-system)
Bi-Directional Data bus. BlazingCore Usage: 16bit CPU Interface Connection Pins: DB17 - DB10, DB8 - DB1
oled pin assignment 41
VSYNC
42
HSYNC
43
DOTCLK
44
ENABLE
45
SDI
46
SDO
47
CSB (CS/NCS)
48
RW_WRB (SCL)
49
RS
50
E_RDB
51 52 53 54 55 56 57 58 59 60 61
RESETB MVDD VREG1OUT VCI VGH VGL GND XYX+ Y+
Frame-synchronizing signal. (VSPL=0 Low active, VSPL=1 High active) FIX this pin at VSS level if the pin is not used Line-synchronizing signal. (HSPL=0 Low active, HSPL=1 High active) FIX this pin at VSS level if the pin is not used Input pin for clock signal of external interface: dot clock. DPL=0 Display data is fetched at DOTCLK’s rising edge DPL=1 Display data is fetched at DOTCLK’s falling edge Fix this pin at VSS level if the pin is not used. Data enable signal pin for RGB interface. EPL ENABLE GRAM write GRAM address 0 0 Valid Updated 0 1 Invalid Held 1 0 Invalid Held 1 1 Valid Updated For a serial peripheral interface (SPI), input data is fetched at the rising edge of the SCL signal, Fix SDI pin at VSS level if the pin is not used. For a serial peripheral interface (SPI), serves as the serial data output pin (SDO), Successive bits are output at the falling edge of the SCL signal. Chip select signal input pin. 0= driver IC is selected and can be accessed. 1= driver IC is not selected and cannot be accessed. Pin Function CPU Type Pin Description Read/Write operation selection pin RW 68-System 0=write 1=read Write strobe signal (Input pin) WRB 80-System Data is fetched at the rising edge. SCL SPI The synchronous clock signal Register select pin. 0=Index/status, 1=instruction parameter, GRAM data Must be fixed at VDD3 level when not used. Pin Function CPU Type Pin Description E 68-System Read/Write operation enable pin Read strobe signal. RDB 80-system Read out data at the low level When SPI mode is selected, fix this pin at VDD3 level Reset pin initializes the IC when low. Should be reset after power-on. Internal power for RAM. Connect a capacitance (1u/10v) to Gnd. A reference level for the grayscale voltage. Connect a capacitance (1u/10v) to Gnd. Power supply for analogue circuit(2.5v~3.3v) The positive voltage used in the gate driver. Connect a capacitance(1u/10v) to Gnd. The negative voltage used in the gate driver. Connect a capacitance(1u/10v) to Gnd. Ground (Touch Screen) (Touch Screen) (Touch Screen) (Touch Screen)
Electrical characteristics Dc characteristics
Electrical characteristics Dc characteristics (Cont’d)
Absolute maximum ratings
Environmental absolute ratings Item
Symbol
Temperature Min. Max.
Unit
Storage Temperature
TST
-40
+80
ºC
Operating Ambient Temperature
TOP
-20
+60
ºC
Remarks The storage duration for both critical temperatures (-40 & 80 ºC) meet reliability test criteria. The operating duration for both critical temperatures (-20 & 60 ºC) meet reliability test criteria.
electrical absolute ratings Item
Symbol
Value
Unit
Power Supply Voltage 1
AR_Vdd
+4.6V ± 0.05
V
Power Supply Voltage 2
AR_Vss
-4.4V ± 0.1
V
Power Supply Voltage 3
VCI
+2.5 ~ +3.3
V
Power Supply Voltage 4
VDD3 (IOVcc)
+1.65 ~ +3.3
V
Note: Note Stresses above those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. This is a stress rating only and functional operation of the device at those or any other conditions above those indicated in the operation listings of this specification is not implied. Exposure to maximum rating conditions for extended periods may affect device reliability.
Technical drawing
oled ORIENTATION
(0,0) X Axis
Y Axis
Horizontal (Default)
Vertical
oled interface board Features The OLED interface board comes with the following onboard features:
2.83� Active Matrix OLED Screen with Touch Screen
+/- 5V Regulated DC Power Supply for the OLED
Power Indicator
External Memory Card Support (MMC)
Light Dependent Resistor (LDR)
3-Axis Accelerometer
oled interface board pinout
16BIT Parallel BUS LINE
Board layout
schematics
Interfacing to bcore100 The following image illustrates an overview of the full basic setup of what will be needed if using just the OLED + BCore100 Platform. *Detailed information of the boards will be covered on the next page.
PORT5 PORT1
BUTTON1
LED1
Reset Button
JP1 JP3
JP4
PORT2
ADC
PORT4
JP2 BUTTON2
LED2 JP5
PORT7
PORT3
PORT6
SCK2A SDI2A SDO2A SD_DTEC CS_SD GND
Interfacing to bcore100
The BCore Series boards are designed to be entirely stackable. You will find that interfacing the OLED board with the BCore100 Board is just a matter stacking the two boards with the use of standard header pins, which at the same time serves as I/O Bus and Data Connection. Pins should match up as above. Recommended stacking method as shown above, with the BCore100 & OLED Display both facing outwards.
Board stack pin comparison Pins
BCore100 (REV.B)
1
GIO
2
GIO
3
GIO
4
GIO
5
GIO
JST1
OLED
Pins
-
49
GIO
RESETB
-
50
GIO
E-RDB
-
51
GIO
-
52
GIO
RW_WRB
-
53
GIO
CSB
JST2 PORT0 JST3
BCore100 (REV.B)
OLED
PORT6
RS
6
GIO
-
54
GIO
-
7
GIO
-
55
GIO
-
8
JST4 -
56
GIO
9
GIO
-
57
GIO
-
10
GIO
-
58
GIO
-
11
GIO
-
59
GIO
12
GIO
-
60
LED1
-
GIO
PORT1
PORT7
-
13
GIO
-
61
BUTTON1
-
14
GIO
-
62
GIO
-
15
GIO
-
63
GIO
-
16
-
64
GIO
-
17
GIO
ADC
-
65
GIO
-
18
GIO
ADC
-
66
LED2
-
19
GIO
ADC
-
67
BUTTON2
-
20
GIO
ADC
GIO
PORT2
21
GIO
ADC
-
22
GIO
ADC
-
23
GIO
ADC
-
24
GIO
ADC
-
25
GIO
ADC
LDR
26
GIO
ADC
z
27
GIO
ADC
Y
28
GIO
ADC
29
GIO
ADC
X-
30
GIO
ADC
Y-
31
GIO
ADC
X+
32
GIO
ADC
Y+
X PORT3
33
GIO
D8
34
GIO
D7
35
GIO
D6
36
GIO
37
GIO
D4
38
GIO
D3
39
GIO
D2
40
Accelerometer
Touch Screen
D5 PORT4
GIO
41
(SPI1) SDO1
D1
GIO
42
GIO
43
GIO
44
D10
(SPI1) SS1
D11
(SPI1) SCK1
D12
GIO
D13 PORT5
45 46
GIO
D14
GIO
D15
47
GIO
(SPIx) SS1A
D16
48
GIO
(SPIx)SCK1A
D17
16bit Data Bus Line
BlazingCore oLED command REFERENCE
OLED command reference OLED
The following pages list the members in the library available to interface with the OLED Display. Ready methods like printing text to screen, drawing primitives or even placing bitmaps to the screen are available for immediate usage. Examples of use are also also included.
OLED Part of the BCoreIDE library consists of optimized methods to control the OLED natively to ensure efficiency and speed of data transfer to the OLED Driver. Method Description Accel Background Clear() Cursor Draw FontType Foreground GRAM Init() LDR Orientation Print ReadRegister SetColour Touch WriteRegister
Provides Access to reading values from the onboard accelerometer Set Background colour Clears the screen Get or Set the Cursor Position Graphic library for drawing Primitives and Bitmaps to Screen *refer *refer to subtopic for details. Set the Font Size Set Foreground colour Provides Read-Only Read Only Access to the Graphics RAM Does the necessary one-time one time initialization of the OLED with a specified colour Provides access to reading values from the onboard Light Dependent Resistor (LDR) Set the orientation of the screen to portrait or landscape Print text to OLED Provides read abilities to the OLED driver (S6E63D6 ( ) registersยน registers Set foreground and background colours Provides access to reading values from the touch screen Provides write abilities to the OLED driver (S6E63D6 ( ) registersยน registers
ยน Please refer to S6E63D6 Driver IC Datasheet for full register listing.
.accel Provides Access to methods for reading values from the onboard accelerometer.
Member
Description
X Y Z
Get X axis reading Get Y axis reading Get Z axis reading
<variable> variable> = OLED.Accel.X() Code: 01. 02. 03. 04. 05. 06. 07. 08. 09. 10. 11. 12.
Public X,Y,Z as Integer Public Sub Main() Do X = OLED.Accel.X() OLED.Accel.X Y = OLED.Accel.Y() OLED.Accel.Y Z = OLED.Accel.Z() OLED.Accel.Z Debug Debug.Print Cstr Cstr(X);" ";Cstr Cstr(Y);" ";Cstr Cstr(Z) Delay Delay(200) Loop End Sub
OLED command Reference OLED
.background Set the background colour of the OLED. OLED.Background.COLOUR
Code: 01. 02. 03. 04. 05. 06. 07.
'CODE1 Public Sub Main() 'INIT THE OLED AND SET THE BACKGROUND COLOUR TO BLACK OLED.Init BCK.COLOUR.BLACK) OLED.Init(BCK.COLOUR.BLACK â&#x20AC;&#x2DC;CHANGE THE BACKGROUND COLOUR TO FUSCHIA OLED.Background.Colour = BCK.COLOUR COLOUR.Fuschia Fuschia End Sub
.Clear() Clears the screen. OLED.Clear OLED.Clear()
.cursor Get or Set the Cursor Position
Member
Description
X Y Home
Set X coordinate of cursor Set Y coordinate of cursor Sets the cursor to (0,0) position
To set the cursor position; OLED.Cursor.X = value OLED.Cursor OLED.Cursor OLED.Cursor.Y = value OLED.Cursor OLED.Cursor.Home()
Value: Any literal, constant, or expression To get the cursor position; value = OLED.Cursor.X OLED.Cursor.X value = OLED.Cursor OLED.Cursor.Y .Y
.DRAW Uses inbuilt native libraries in BCore to draw primitives and bitmaps on to the screen. All primitives are drawn using the specified foreground colour.
Member
Description
Point Points Line Lines Rectangle FillRectangle Circle BitmapFromDFlash BitmapFromMemCard
Plots a pixel at a specified point on the OLED Screen Plots an array of points. Draws a Line. Draws an array of Lines. Draws a Rectangle of specified sizing at a specified position. Draws a Filled Rectangle of specified sizing at a specified position. Draws a Circle of specified sizing at a specified position. Draws a bitmap file from the data flash memory chip. Draws a bitmap from External Memory Card (MMC) to the Screen
OLED command Reference OLED | Draw | Primitives
.POINT Plots a single pixel at a specified point on the OLED Screen. Point1 <x1, y1>
OLED.Draw.Point point) OLED.Draw.Point(point
.POINTs Plots an array of pixels. Points(1) s(1) <x1, y1>
Parameters: • Points() = point array; • Zero offset start = zero-offset Zero-offset offset start index of point array to start plotting from; • Number of points = number of points to plot.
Points(2) <x2, y2 2> Points(0) <x <x0, y0> Points(3) <x3, y3 3>
OLED.Draw.Points points(),zero-offset OLED.Draw.Points(points(),zero points(),zero offset start, number of points) points
.LINE
Point2 <x2, y2>
Draws a Line from point1 to point2 on the OLED Screen. OLED.Draw.Line point1, point2) OLED.Draw.Line(point1, point2 Point1 <x1, y1>
.LINEs Draws an array of points as a continuous connected line. Parameters: • Points() = point array; • Zero offset start = zero-offset Zero-offset offset start index of point array to start plotting from; • Number of points = number of points to plot.
Points(1) Point <x1, y1> Points(2) <x2,, y2> y Points(0) s(0) <x0, y0> Points(3) <x3,, y3> y
OLED.Draw.Lines points(),zero-offset OLED.Draw.Lines(points(),zero points(),zero offset start, number of points) points
.Rectangle
Point1 <x1, y1>
x
Draws a Rectangle using 2 points.
x
OLED.Draw.Rectangle point1, point2) OLED.Draw.Rectangle(point1, point2
.fillrectangle
Point2 <x2, y2>
Point1 <x1, y1>
Draws a solid/filled rectangle of foreground colour from point1 to point2 on the OLED Screen.
x
OLED.Draw.FillRectangle point1, point2) OLED.Draw.FillRectangle(point1, point2
x
Point2 <x2, y2>
.circle Draws a circle. Parameters accept center point position and radius of circle. OLED.Draw.Circle center-point, OLED.Draw.Circle(center point, radius) radius
Center-point R <x,y>
OLED command Reference Bitmaps
. Drawing Bitmaps to screen Storage and Rendering of Bitmap files are supported by the BCore OS. However, due to the nature of bitmap files, they tend to require a large amount of memory. As such, Bitmaps are only allowed to be stored on External Memory Cards (like MMC Cards), or the external DataFlash chip. Depending on where you store your Bitmap Files, Files, a single line command is able to fetch the image file and draw it onto the OLED screen, provided it is given the correct information. Please note: The commands to draw bitmaps to screen returns a value and must be assigned to a variable. This value will indicate if there has been any error during file fetching and/or drawing to the screen. Value ‘0’: Successful Value ‘1’: Error Note:
¹Bitmaps Bitmaps must be in Windows® Bitmap .bmp format. ²Bitmaps of bit depth 16bit 565 Mode, 24bpp, 32bpp are supported. ²Bitmaps ³For applications that require the OLED to update images really quickly, we recommend that the bitmaps are first ³For converted to the 16bit 565 RGB Format before importing it into the storage media for the BCore to access, since 24bpp and 32bpp files are converted by the chip to the 16bit 565 format before sending to the OLED Display, 24bpp thereby imposing a limitation to the update rate from the BCore to the OLED Display.
.Bitmapfromdflash Draws a bitmap on the OLED screen from a .bmp .bmp file stored in the external DataFlash chip. Code: 01. 02. 03. 04. 05. 06. 07. 08. 09. 10. 11. 12.
Dim P1 As Point Public Sub Main() Dim I1 As Integer DEBUG.PRINT "OLED - BITMAP" DELAY(200 200) OLED.INIT OLED.INIT(0) OLED.SETCOLOUR.FOREGROUND OLED.SETCOLOUR.FOREGROUND(31) I1 = ADDRESSOF(DATA1.B_PLAYER) ADDRESSOF(DATA1.B_PLAYER) P1.X = 50 P1.Y = 20 OLED.DRAW.BitmapFromDFlash(P1, I1) OLED.DRAW.BitmapFromDFlash(P1, End Sub
Note:: Please refer to APPENDIX A for more details on transferring Bitmap Files from the PC to the BCore’s External DataFlash.
.BitmapfromMemCard Draws a bitmap on the OLED screen from a .bmp file stored in the External Memory Card (MMC / SD Compatible). Compatible) OLED.Draw.BitmapFromMemCard(FileName,Position) Parameters: • FileName: Name of Bitmap File in String FileName: • Position Point XY location to draw bitmap Position:
Code: 01. 02. 03. 04. 05. 06. 07. 08. 09. 10. 11. 12.
Dim P1 As Point Public Sub Main() Dim I As Integer Dim STR1 AS STRING OLED.INIT OLED.INIT(0) OLED.SETCOLOUR.FOREGROUND OLED.SETCOLOUR.FOREGROUND(31) I = OS.MEMCARD.INIT() OS.MEMCARD.INIT() STR1 = "B_PLAYER.BMP" P1.X = 50 P1.Y = 20 I = OLED.DRAW.BITMAPFROMMEMCARD(STR1, P1) End Sub
OLED command Reference fonttype Sets the font size of text printed to the screen. Available font sizes are 8x8, 10x12, 16x16 pixels OLED.FontType Assignment • OLED.FontType = font size; 0 = 8x8 pixel; 1 =10x12 10x12 pixel; 2 = 16x16 pixel A BCore Constant that stores the font size values is available to make the code more readable. The following shows a code comparison on how to set the font size using direct assignment of values and using the BCore Constants. Both codes achieve the same effect.
Code: 01. 02. 03.
Code: OLED.FontType = 0 OLED.FontType = 1 OLED.FontType = 2
01. 02. 03.
OLED.FontType = BCK.Font.Small OLED.FontType = BCK.Font.Medium OLED.FontType = BCK.Font.Large
.foreground Set the foreground colour of the OLED.
OLED.Foreground.Colour
Code: 01. 02. 03. 04. 05. 06. 07.
'CODE1 Public Sub Main() 'INIT THE OLED AND SET THE BACKGROUND COLOUR TO BLACK OLED.Init( (BCK.COLOUR.BLACK BCK.COLOUR.BLACK) OLED.Foreground.Colour = BCK.COLOUR COLOUR.Fuschia Fuschia OLED.Print “Hello World!” End Sub
OLED command Reference GRAM | Initialize OLED | LDR
.GRAM The pixels displayed on the OLED screen correspond to the image data stored in the Graphics RAM (GRAM). Read access to the OLED GRAM is provided to the user. Read the colour data direct from GRAM, by providing the position to read. Read command returns the colour in 16bit 565 RGB Integer format. Member Submember Description Read
Point Rectangle
Returns the colour value from a single point in the GRAM Returns the colour values from a specified rectangular area in the GRAM into a specified user declared integer array.
OLED.GRAM.Read.Point(point) OLED.GRAM.Read.Point OLED.GRAM.Read.Rectangle memoryArr(),point1,point2) OLED.GRAM.Read.Rectangle(memoryArr(),point1,point2 memoryArr(),point1,point2 Parameter/s: memoryArr(); User declared single or 2 dimensional integer array to store the colour values read from the GRAM Users are expected to ensure that the memory allocation of the Integer Array is sufficient to store the total number of points being read to it Data from specified area will be stored stored in a continuous stream inside the integer array. Any row alignments (applicable only to 2 dimensional arrays) will be automatically done. point1 Starting point of Rectangle (0,0) ……. point2 X Axis (0,0) (320 320,0) Ending point of Rectangle …….
Y Axis
GRAM
(0,240)
.Init() Does the necessary one-time one time initialising required for the OLED to be controlled thereafter. Parameter accepts colour for the OLED screen to be initialised with. *Note:: Colour listing available. Please refer to the page on using colour constants. OLED.Init it(colour)
Code: 01. 02. 03. 04. 05.
'CODE1 Public Sub Main() 'INIT THE OLED AND SET THE BACKGROUND COLOUR TO BLACK OLED.Init BCK.COLOUR.BLACK) OLED.Init(BCK.COLOUR.BLACK End Sub
.LDR Provides access to reading values from the onboard Light Dependent Resistor (LDR) OLED.LDR.Read OLED.LDR.Read() Code: 01. 02. 03. 04. 05. 06. 07. 08.
Public LDR as Integer Public Sub Main() Do LDR = OLED.LDR.READ() OLED.LDR.READ Debug Debug.Print Cstr Cstr(LDR) Delay Delay(200) Loop End Sub
LDR
OLED command Reference .ORIENTATION Set the orientation of the OLED screen to portrait or landscape. OLED.Orientation(Orientation OLED.Orientation( Orientation) Parameter/s: Orientation; 0:: Landscape (Default) 1:: Portrait
.print Prints text to screen using specified foreground colour. Works just like Debug.Print. Debug.Print *Note:: Default text size is 8x8pixels. OLED.Print “[string]” | String Variable | String Const *Full set of 256 ASCII characters supported.
.READRegister Returns the contents of the OLED driver (S6E63D6 ( ) register at a specified address. OLED.ReadRegister( OLED.ReadRegister(Address)
.WriteRegister Provides write abilities to the OLED driver (S6E63D6 ( ) registers ¹ Please refer to S6E63D6 Driver IC Datasheet for full register listing. OLED.WriteRegister Address, Value) OLED.WriteRegister(Address, Value
.Setcolour Set foreground and background colours
Member
Description
Background Foreground
Set Background Colour Set Foreground Colour
OLED.SetColour.Background = <colour> OLED.SetColour.Foreground = <colour> <Colour>: *Refer to BCore Constants (BCK) for list of preset colours.
OLED command Reference Touch Screen
.Touch Provides access to touch screen methods.
Member
Description
X Y
Returns optimized X coordinate of touch Returns optimized Y coordinate of touch X Returns Raw Value of X Y Returns Raw Value of Y
Raw
X Returns calculated X coordinate of a touch on the touch screen. OLED.Touch.X OLED.Touch.X()
Y Returns calculated Y coordinate of a touch on the touch screen. OLED.Touch.Y OLED.Touch.Y() Code: 01. 02. 03. 04. 05. 06. 07. 08. 09. 10. 11.
Public X,Y as Integer Public Sub Main()
Do X = OLED.Touch.X() Y = OLED.Touch.Y() Debug Debug.Print Cstr Cstr(X);" ";Cstr Cstr(Y) Delay Delay(200) Loop End Sub
X.raw Returns raw X coordinate of a touch on the touch screen. OLED.Touch.X.Raw() OLED.Touch.X.Raw()
Y.raw Returns raw Y coordinate of a touch on the touch screen. OLED.Touch.Y.Raw() OLED.Touch.Y.Raw()
0,0
0,240
320 320,0
~100,120
~950,120
240,320 320
~100,910
~950,910
Optimized Values Valu
Raw Values Value
BlazingCore Constants
BlazingCore Constants BCK BCore constants are constants that hold values meant to be used in conjunction with certain method and property types within the BCore command set. Currently, it holds values for use mainly with the OLED library. Method
Description
Colour
Contains list of colours that represent valid 16bit (5/6/5) RGB values. Contains values to set font sizing
Font
colour/COLOR Contains list of colours that represent valid 16bit (5/6/5) RGB values.
Member Aqua Black Blue Fuschia Grey Green Lime Maroon Navy Olive Purple Red Silver Teal White Yellow
BCK.Colour Colour.<colour colour> BCK.Color Color.<color>
Note:
Where “BCK” represents “BlazingCore Constants” Each member of “Colour” contains a constant value representing a 16bit 565 mode RGB colour. Naming conventions “Colour” and “Color”, “Grey” and “Gray” are both supported.
Font Contains values to set font sizing. Available font sizes are 8x8, 10x12, 16x16 pixels Size Small
Description 8x8
Medium
10x12
Large
16x16
BCK.Font Font.<size>
Appendices
APPENDIX A Transferring Bitmap Files
Transferring Bitmap Files from PC to BCore Store the Bitmap Files in your BCore Project’s Resource Folder, and import it using the Resource Page in BCoreIDE. Files may be imported and downloaded into an external memory chip (DataFlash) or external memory card (MMC). Example code to draw bitmap files to the OLED from both external memory methods are available under its respective instruction set.
External DataFlash 1. To store Bitmap files in the External DataFlash, make sure the Bitmap files you want loaded into the DataFlash is stored in: “Your Project Folder” > Resource > EEPROM
Example view using windows explorer. Note: You may have to create these folders yourself if they do not exist. 2.
Next, Select the data file (DATA1) under the DataFlash Resources of your project, and declare an array of type data.
DATA myData(arraySize) FromFile “FileName”
Code: 01. 02. 03.
‘DATA1 DATA B_PLAYER(570) FROMFILE "P_PLAYER.bmp" DATA BLUEB16(455) FROMFILE "Blue16.bmp"
The array size should correspond to the size of your bitmap file in bytes (You can find out the size by placing your mouse over the particular bmp). (Refer to example as shown in figure above) 3. 4.
Compile and download the data file (DATA1) into the External DataFlash. BMP files are now programmatically accessible through the use of the variable name (in this case, B_Player) as per the example code under the OLED.Draw.BitmapDFlash Command.
Note: The data file downloads directly to the external data flash chip, separate from downloading the actual program. Downloading your program does NOT download the data from the data file to the external data flash chip at the same time.
External Memory Card 1. To store Bitmap files in the External Memory Card (MMC/ SD Compatible), make sure you slot an MMC card into your card reader on your Laptop/PC and open it up using Windows® Explorer. 2. Drag and Drop your Bitmap files into the External Memory Card. 3. When you’re done, eject the External Memory Card and slot it into the External Memory Card Socket onboard the OLED interface board. 4. The bitmap files in the External Memory Card are now programmatically accessible using the Bitmap File Name as per the example code under the OLED.Draw.BitmapFromMemCard Command.
*Please note that the file name length must be kept to 8 characters. Files with names longer than that may fail to open.
APPENDIX b ASCII Chart
Ascii chart The following is a standard extended ascii chart supported by the BCore Font Library.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
Notes Latest documentation All of our documentations are constantly updated to provide accurate and/or new information that we feel would help you with developing with our products. The latest documentation may be obtained from our website: http://www.aiscube.com/main/downloads.html How you can help You can help us to improve our documentations by emailing to us or posting a thread in our forum, reporting any mistakes/typos or errata that you might spot while reading our documentation. Email: TechSupport@aiscube.com Forum: http://forum.aiscube.com/index.php
Disclaimer All information in this documentation is provided ‘as-is’ without any warranty of any kind. The products produced by AIS Cube are meant for rapid prototyping and experimental usage; they are not intended nor designed for implementation in environments that constitute high risk activities. AIS Cube shall assume no responsibility or liability for any indirect, specific, incidental or consequential damages arising out of the use of this documentation or product.
Copyright 2009 - 2010 AIS Cube. All rights reserved. All product and corporate names appearing in this documentation may or may not be registered trademarks or copyrights of their respective companies, and are only used for identification or explanation for the owner’s benefit, with no intent to infringe. The BlazingCore(BCore) and BCore IDE are trademarks of AIS Cube in Singapore and/or other countries. All images depicting the Blazingcore or any part of it is copyrighted. All other trademarks or registered trademarks are the property of their respective owners.