00001 /* This file has been prepared for Doxygen automatic documentation generation.*/ 00024 /**************************************************************/ 00025 // Definitions 00026 /**************************************************************/ 00027 #define LCD_INITIAL_CONTRAST 0x0F 00028 #define LCD_TIMER_SEED 15 00029 #define LCD_REGISTER_COUNT 20 00030 00031 /**************************************************************/ 00032 //MACROS 00033 /**************************************************************/ 00034 #define LCD_SET_COLON(active) LCD_displayData[8]=active; 00035 #define pLCDREG (*(unsigned char *)(0xEC)) // DEVICE SPECIFIC!!! (ATmega169(P)) 00036 #define LCD_CONTRAST_LEVEL(level) LCDCCR=(0x0F & level); // DEVICE SPECIFIC!!! (ATmega169(P)) 00037 00038 /**************************************************************/ 00039 // Global functions 00040 /**************************************************************/ 00041 void LCD_Init (void); 00042 void LCD_WriteDigit(unsigned char input, unsigned char digit); 00043 void LCD_AllSegments(unsigned char); 00044 00045 /**************************************************************/ 00046 // Global variables 00047 /**************************************************************/ 00048 union _LCD_status{ 00049 unsigned char allFields; 00050 struct{ 00051 volatile unsigned char updateRequired : 1; 00052 00053 00054 volatile unsigned char updateComplete : 1; 00055 00056 00057 unsigned char unused : 6; 00058 }; 00059 }; 00060 extern union _LCD_status LCD_status; 00061 00062 extern unsigned char LCD_timer; 00063 extern unsigned char LCD_displayData[LCD_REGISTER_COUNT];
1.4.5