]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_LM3S102_KEIL/include/pdc.h
Add FreeRTOS-Plus directory.
[freertos] / FreeRTOS / Demo / CORTEX_LM3S102_KEIL / include / pdc.h
1 //*****************************************************************************\r
2 //\r
3 // pdc.h - Stellaris development board Peripheral Device Controller definitions\r
4 //         and prototypes.\r
5 //\r
6 // Copyright (c) 2005,2006 Luminary Micro, Inc.  All rights reserved.\r
7 //\r
8 // Software License Agreement\r
9 //\r
10 // Luminary Micro, Inc. (LMI) is supplying this software for use solely and\r
11 // exclusively on LMI's Stellaris Family of microcontroller products.\r
12 //\r
13 // The software is owned by LMI and/or its suppliers, and is protected under\r
14 // applicable copyright laws.  All rights are reserved.  Any use in violation\r
15 // of the foregoing restrictions may subject the user to criminal sanctions\r
16 // under applicable laws, as well as to civil liability for the breach of the\r
17 // terms and conditions of this license.\r
18 //\r
19 // THIS SOFTWARE IS PROVIDED "AS IS".  NO WARRANTIES, WHETHER EXPRESS, IMPLIED\r
20 // OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF\r
21 // MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.\r
22 // LMI SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR\r
23 // CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.\r
24 //\r
25 //*****************************************************************************\r
26 \r
27 #ifndef __PDC_H__\r
28 #define __PDC_H__\r
29 \r
30 #ifdef __cplusplus\r
31 extern "C"\r
32 {\r
33 #endif\r
34 \r
35 //*****************************************************************************\r
36 //\r
37 // The registers within the peripheral device controller.\r
38 //\r
39 //*****************************************************************************\r
40 #define PDC_VER                 0x0         // Version register\r
41 #define PDC_CSR                 0x1         // Command/Status register\r
42 #define PDC_DSW                 0x4         // DIP Switch register\r
43 #define PDC_LED                 0x5         // LED register\r
44 #define PDC_LCD_CSR             0x6         // LCD Command/Status register\r
45 #define PDC_LCD_RAM             0x7         // LCD RAM register\r
46 #define PDC_GPXDAT              0x8         // GPIO X Data register\r
47 #define PDC_GPXDIR              0x9         // GPIO X Direction register\r
48 #define PDC_GPYDAT              0xA         // GPIO Y Data register\r
49 #define PDC_GPYDIR              0xB         // GPIO Y Direction register\r
50 #define PDC_GPZDAT              0xC         // GPIO Z Data register\r
51 #define PDC_GPZDIR              0xD         // GPIO Z Direction register\r
52 \r
53 //*****************************************************************************\r
54 //\r
55 // Flags indicating a read or write to the peripheral device controller.\r
56 //\r
57 //*****************************************************************************\r
58 #define PDC_RD                  0x80        // PDC read command\r
59 #define PDC_WR                  0x00        // PDC write command\r
60 \r
61 //*****************************************************************************\r
62 //\r
63 // LCD panel (Crystalfontz CFAH1602B) commands, RS = 0\r
64 //\r
65 //*****************************************************************************\r
66 #define LCD_CLEAR               0x01        // Clear display (0 fill DDRAM).\r
67 #define LCD_HOME                0x02        // Cursor home.\r
68 #define LCD_MODE                0x04        // Set entry mode (cursor dir)\r
69 #define LCD_ON                  0x08        // Set display, cursor, blinking\r
70                                             // on/off\r
71 #define LCD_CUR                 0x10        // Cursor, display shift\r
72 #define LCD_IF                  0x20        // Set interface data length,\r
73                                             // lines, font\r
74 #define LCD_CGADDR              0x40        // Set CGRAM AC address\r
75 #define LCD_DDADDR              0x80        // Set DDRAM AC address\r
76 \r
77 //*****************************************************************************\r
78 //\r
79 // LCD Status bit\r
80 //\r
81 //*****************************************************************************\r
82 #define LCD_B_BUSY              0x80        // Busy flag.\r
83 \r
84 //*****************************************************************************\r
85 //\r
86 // The GPIO port A pin numbers for the various SSI signals.\r
87 //\r
88 //*****************************************************************************\r
89 #define SSI_CS                  GPIO_PIN_3\r
90 #define PDC_CS                  GPIO_PIN_3\r
91 #define SSI_CLK                 GPIO_PIN_2\r
92 #define SSI_TX                  GPIO_PIN_5\r
93 #define SSI_RX                  GPIO_PIN_4\r
94 \r
95 //*****************************************************************************\r
96 //\r
97 // Function Prototypes\r
98 //\r
99 //*****************************************************************************\r
100 extern void PDCInit(void);\r
101 extern unsigned char PDCRead(unsigned char ucAddr);\r
102 extern void PDCWrite(unsigned char ucAddr, unsigned char ucData);\r
103 extern unsigned char PDCDIPRead(void);\r
104 extern void PDCLEDWrite(unsigned char ucLED);\r
105 extern unsigned char PDCLEDRead(void);\r
106 extern void PDCLCDInit(void);\r
107 extern void PDCLCDBacklightOn(void);\r
108 extern void PDCLCDBacklightOff(void);\r
109 extern void PDCLCDClear(void);\r
110 extern void PDCLCDCreateChar(unsigned char ucChar, unsigned char *pucData);\r
111 extern void PDCLCDSetPos(unsigned char ucX, unsigned char ucY);\r
112 extern void PDCLCDWrite(const char *pcStr, unsigned long ulCount);\r
113 extern unsigned char PDCGPIODirRead(unsigned char ucIdx);\r
114 extern void PDCGPIODirWrite(unsigned char ucIdx, unsigned char ucValue);\r
115 extern unsigned char PDCGPIORead(unsigned char ucIdx);\r
116 extern void PDCGPIOWrite(unsigned char ucIdx, unsigned char ucValue);\r
117 \r
118 #ifdef __cplusplus\r
119 }\r
120 #endif\r
121 \r
122 #endif // __PDC_H__\r