An attempt tp port Arduino ST1201 code to the KL25Z

Dependencies:   mbed

Committer:
n5kzw
Date:
Mon Nov 25 21:02:23 2013 +0000
Revision:
0:76906da6c1ad
First try

Who changed what in which revision?

UserRevisionLine numberNew contents of line
n5kzw 0:76906da6c1ad 1 /* Header file for Arduino and KTM-S1201 LCD module
n5kzw 0:76906da6c1ad 2 Originally Written by Jeff Albertson Ver 1.0
n5kzw 0:76906da6c1ad 3 Modifications and code normalisation by Robert W. Mech rob@mechsoftware.com
n5kzw 0:76906da6c1ad 4 Modified by John Boxall 11/March/2013
n5kzw 0:76906da6c1ad 5
n5kzw 0:76906da6c1ad 6 These are the pins that are output on the KTM-S1201
n5kzw 0:76906da6c1ad 7
n5kzw 0:76906da6c1ad 8 LCD pin number
n5kzw 0:76906da6c1ad 9 Pin 1 LcdVcc +5V dc power
n5kzw 0:76906da6c1ad 10 pin 2 LcdVss GND
n5kzw 0:76906da6c1ad 11 pin 3 LcdnSck Not Serial clock
n5kzw 0:76906da6c1ad 12 pin 4 LcdSi Serial data
n5kzw 0:76906da6c1ad 13 pin 5 LcdCnD Select Command or Data mode
n5kzw 0:76906da6c1ad 14 pin 6 LcdnRes Reset LCD
n5kzw 0:76906da6c1ad 15 pin 7 LcdnBus LCD not busy
n5kzw 0:76906da6c1ad 16 pin 8 LcdnCs LCD not Chip select
n5kzw 0:76906da6c1ad 17 pin 9 Pot wiper Vlc LCD Contrast Connect POT between pin 9 and GND
n5kzw 0:76906da6c1ad 18 pin 10 NC
n5kzw 0:76906da6c1ad 19 */
n5kzw 0:76906da6c1ad 20
n5kzw 0:76906da6c1ad 21 #define HIGH 1
n5kzw 0:76906da6c1ad 22 #define LOW 0
n5kzw 0:76906da6c1ad 23
n5kzw 0:76906da6c1ad 24 // Here we set which LCD pins will connect to which Arduino pin
n5kzw 0:76906da6c1ad 25 /*
n5kzw 0:76906da6c1ad 26 #define LcdSck 4 //Not Serial clock
n5kzw 0:76906da6c1ad 27 #define LcdSi 5 //Serial data in
n5kzw 0:76906da6c1ad 28 #define LcdCnD 6 //Command or Not data in
n5kzw 0:76906da6c1ad 29 #define LcdnRes 7 //Not reset low = reset
n5kzw 0:76906da6c1ad 30 #define LcdnBus 9// Not Busy output from LCD not used if delay(1) after LcdnCs changes
n5kzw 0:76906da6c1ad 31 #define LcdnCs 8 //Not Chip select Low = LCD selected
n5kzw 0:76906da6c1ad 32 THESE DEFINITION MOVED TO DigitalOut FUNCTIONS IN main.cpp
n5kzw 0:76906da6c1ad 33 */
n5kzw 0:76906da6c1ad 34 // Put a delay(1) after every LcdnCs change or check LcdnBus
n5kzw 0:76906da6c1ad 35 #define t 100
n5kzw 0:76906da6c1ad 36 #define t1 10
n5kzw 0:76906da6c1ad 37
n5kzw 0:76906da6c1ad 38 // The Not Chip select pin is the only unique
n5kzw 0:76906da6c1ad 39 // Pin on the LCD all other pins can be paralleled
n5kzw 0:76906da6c1ad 40 // for more ktm-s1201 displays
n5kzw 0:76906da6c1ad 41 #define _Mode 0x40
n5kzw 0:76906da6c1ad 42 #define _USync 0x31
n5kzw 0:76906da6c1ad 43 #define _FBlink 0x1b
n5kzw 0:76906da6c1ad 44 #define _SBlink 0x1a
n5kzw 0:76906da6c1ad 45 #define _NoBlink 0x18
n5kzw 0:76906da6c1ad 46 #define _DispOn 0x11
n5kzw 0:76906da6c1ad 47 #define _Decode 0x15
n5kzw 0:76906da6c1ad 48 #define _NoDecode 0x14
n5kzw 0:76906da6c1ad 49 #define _LoadPtr 0xE0
n5kzw 0:76906da6c1ad 50 #define _SetDp 0xb8 // Set decimal point (Dp)
n5kzw 0:76906da6c1ad 51 #define _ClearDp 0x9f // Clear decimal point (Dp)
n5kzw 0:76906da6c1ad 52 #define _ClearDsp 0x20 // Clear display memory
n5kzw 0:76906da6c1ad 53
n5kzw 0:76906da6c1ad 54 // To set Dp you must be in NoDecode mode and point to character (LoadPtr)
n5kzw 0:76906da6c1ad 55 // --- 0x01
n5kzw 0:76906da6c1ad 56 //0x10 | | 0x02
n5kzw 0:76906da6c1ad 57 //0x20 ---
n5kzw 0:76906da6c1ad 58 //0x40 | | 0x04
n5kzw 0:76906da6c1ad 59 //0x80 --- o 0x08
n5kzw 0:76906da6c1ad 60
n5kzw 0:76906da6c1ad 61 #define _cet 0x31 // Celsius
n5kzw 0:76906da6c1ad 62 #define _ 0x0 // Space
n5kzw 0:76906da6c1ad 63 #define _A 0x77 //
n5kzw 0:76906da6c1ad 64 #define _B 0xF4 //
n5kzw 0:76906da6c1ad 65 #define _C 0xE0 //
n5kzw 0:76906da6c1ad 66 #define _D 0xE6 //
n5kzw 0:76906da6c1ad 67 #define _E 0xF1 //
n5kzw 0:76906da6c1ad 68 #define _F 0x71 //
n5kzw 0:76906da6c1ad 69 #define _G 0xD5 //
n5kzw 0:76906da6c1ad 70 #define _H 0x74 //
n5kzw 0:76906da6c1ad 71 #define _I 0x04 //
n5kzw 0:76906da6c1ad 72 #define _J 0x86 //
n5kzw 0:76906da6c1ad 73 #define _K 0x70 //
n5kzw 0:76906da6c1ad 74 #define _L 0xD0 //
n5kzw 0:76906da6c1ad 75 #define _M 0x76 //
n5kzw 0:76906da6c1ad 76 #define _N 0x64 //
n5kzw 0:76906da6c1ad 77 #define _O 0xE4 //
n5kzw 0:76906da6c1ad 78 #define _P 0x73 //
n5kzw 0:76906da6c1ad 79 #define _Q 0xDF //
n5kzw 0:76906da6c1ad 80 #define _R 0x60 //
n5kzw 0:76906da6c1ad 81 #define _S 0xB5 //
n5kzw 0:76906da6c1ad 82 #define _T 0xF0 //
n5kzw 0:76906da6c1ad 83 #define _U 0xC4 //
n5kzw 0:76906da6c1ad 84 #define _V 0xD6 //
n5kzw 0:76906da6c1ad 85 #define _W 0xF6 //
n5kzw 0:76906da6c1ad 86 #define _X 0x56 //
n5kzw 0:76906da6c1ad 87 #define _Y 0x72 //
n5kzw 0:76906da6c1ad 88 #define _Z 0xEB //
n5kzw 0:76906da6c1ad 89 #define _1 0x06 //
n5kzw 0:76906da6c1ad 90 #define _2 0xE3 //
n5kzw 0:76906da6c1ad 91 #define _3 0xA7 //
n5kzw 0:76906da6c1ad 92 #define _4 0x36 //
n5kzw 0:76906da6c1ad 93 #define _5 0xB5 //
n5kzw 0:76906da6c1ad 94 #define _6 0xF4 //
n5kzw 0:76906da6c1ad 95 #define _7 0x07 //
n5kzw 0:76906da6c1ad 96 #define _8 0xF7 //
n5kzw 0:76906da6c1ad 97 #define _9 0x37 //
n5kzw 0:76906da6c1ad 98 #define _0 0xD7 //
n5kzw 0:76906da6c1ad 99 #define _DASH 0x20 //
n5kzw 0:76906da6c1ad 100 #define _DEGREE 0x33 //
n5kzw 0:76906da6c1ad 101
n5kzw 0:76906da6c1ad 102