#ifndef _EESD_H_ #define _EESD_H_ #include /************************************************************ * This is the header file that goes with the starting * library routines that Drive LCD display * */ /* LCD Routines * * Notes: Board is setup for 4 bit data on the upper * bits of port D. Control port is on poert E.0 and * E.1. Note that the R/W is pulled to 0, so that only * writing is done to the display. * NOTE: Ports must be set digital before using the LCD display * */ // Ports naming #define LCD_DATA latd // LCD data port #define LCD_E_port late // enable control port #define LCD_RS_port late // register select port volatile bit rxflag@PIR1.5 = 0; //volatile bit data1@PORTB.1 = 0; //volatile bit data2@PORTB.2 = 0; extern bool gameisnotover = 1; extern bool sflag1 = 1; // Sensor 1 flag extern bool sflag2 = 1; // Sensor 2 flag extern bool sflag3 = 1; // Sensor 3 flag extern bool sflag4 = 1; // Sensor 4 flag extern bool sflag5 = 1; // Sensor 5 flag extern bool sflag6 = 1; // Sensor 6 flag extern bool reset = 1; // Control signals #define LCD_E_bit 1 // LCD enable register #define LCD_RS_bit 0 // LCD register select // Some usefull macros. These set or clear the control // or register select bits. #define LCD_E_U set_bit(LCD_E_port, LCD_E_bit) #define LCD_E_D clear_bit(LCD_E_port, LCD_E_bit) #define LCD_RS_U set_bit(LCD_RS_port, LCD_RS_bit) #define LCD_RS_D clear_bit(LCD_RS_port, LCD_RS_bit) // Use nested macros #define write_data LCD_RS_U; LCD_E_U; LCD_E_D; // RS=1, toggle enable bit #define write_cmd LCD_RS_D; LCD_E_U; LCD_E_D; // RS=0, toggle enable bit // LCD Function prototypes void LCD_init(void); // init LCD display void LCD_ph1(char data); // sends ascii of a single hex digit to display void LCD_char(char data); // sends ascii character to display void LCD_icmd(char data); // sends 8 bit command (init till set to 4 bits) void LCD_cmd(char data); // sends command to 4 bit interface nibble by nibble void LCD_dec(char data); // displays byte as decimal number void LCD_dec(short data); void LCD_dec(unsigned short data); void LCD_hex(char data); // displays byte as hex number void LCD_hex(short data); // displays byte as hex number void LCD_hex(unsigned short data); // displays byte as hex number void LCD_int(char data); void LCD_int(short data); void LCD_rxint(short data); void LCD_nib(char data); void LCD_bin(char data); // displays byte as binary number void LCD_bin(unsigned short data); // displays byte as binary number void LCD_init(void); //initializes LDC display void LCD_printf( const char* text ); //sends ascii string to display void LCD_setpos(char line, char pos); //sets potition on display void LCD_clear(void); // clear LCD Screen //Zigbee void Serial_init(void); //Initializes the USART for serial transmission void putc(char dat); //Send data with USART void putc(int dat); char getc(void); //Recieve data with USART void Send_Zigbee(const char* text); //Send text with USART, Print to LCD void Send_Zigbee(int data); void Zigbee_init(void); void Zigbee_restore(void); void Zigbee_read(void); //SPI void LED(unsigned short val); void SEVEN(unsigned short val); void B_code(void); void No_decode(void); void LED_maxim_init(void); void SEVEN_maxim_init(void); //Score displays void score1(int data); void score2(int data); void score1rx(int data); void gameswon1(int data); void gameswon2(int data); //Number Display for Team 1 void display1_0(void); void display1_1(void); void display1_2(void); void display1_3(void); void display1_4(void); void display1_5(void); void display1_6(void); //Number Display for Team 2 void display2_0(void); void display2_1(void); void display2_2(void); void display2_3(void); void display2_4(void); void display2_5(void); void display2_6(void); //Games Won for Team 1 void games_display1_0(void); void games_display1_1(void); void games_display1_2(void); void games_display1_3(void); void games_display1_4(void); void games_display1_5(void); void games_display1_6(void); void games_display1_7(void); void games_display1_8(void); void games_display1_9(void); //Games Won for Team 2 void games_display2_0(void); void games_display2_1(void); void games_display2_2(void); void games_display2_3(void); void games_display2_4(void); void games_display2_5(void); void games_display2_6(void); void games_display2_7(void); void games_display2_8(void); void games_display2_9(void); void games_display1_0x(void); void games_display1_1x(void); void games_display1_2x(void); void games_display1_3x(void); void games_display1_4x(void); void games_display1_5x(void); void games_display1_6x(void); void games_display1_7x(void); void games_display1_8x(void); void games_display1_9x(void); // All hole LED functions void blink(void); void bounce_blink(void); void zigbee_blink(void); // Hole 1 LED functions void display_sega1(void); void display_segb1(void); void display_segc1(void); void display_segd1(void); void display_sege1(void); void display_segf1(void); void display_segg1(void); void display_segdp1(void); void display_sega1_off(); void display_segbg1_off(); void display_segcf1_off(); void display_segde1_off(); void all_on1(void); void all_off1(void); void blink1(void); // Hole 2 LED functions void display_sega2(void); void display_segb2(void); void display_segc2(void); void display_segd2(void); void display_sege2(void); void display_segf2(void); void display_segg2(void); void display_segdp2(void); void display_sega2_off(); void display_segbg2_off(); void display_segcf2_off(); void display_segde2_off(); void all_on2(void); void all_off2(void); void blink2(void); // Hole 3 LED functions void display_sega3(void); void display_segb3(void); void display_segc3(void); void display_segd3(void); void display_sege3(void); void display_segf3(void); void display_segg3(void); void display_segdp3(void); void display_sega3_off(); void display_segbg3_off(); void display_segcf3_off(); void display_segde3_off(); void all_on3(void); void all_off3(void); void blink3(void); // Hole 4 LED functions void display_sega4(void); void display_segb4(void); void display_segc4(void); void display_segd4(void); void display_sege4(void); void display_segf4(void); void display_segg4(void); void display_segdp4(void); void display_sega4_off(); void display_segbg4_off(); void display_segcf4_off(); void display_segde4_off(); void all_on4(void); void all_off4(void); void blink4(void); // Hole 5 LED functions void display_sega5(void); void display_segb5(void); void display_segc5(void); void display_segd5(void); void display_sege5(void); void display_segf5(void); void display_segg5(void); void display_segdp5(void); void display_sega5_off(); void display_segbg5_off(); void display_segcf5_off(); void display_segde5_off(); void all_on5(void); void all_off5(void); void blink5(void); // Hole 6 LED functions void display_sega6(void); void display_segb6(void); void display_segc6(void); void display_segd6(void); void display_sege6(void); void display_segf6(void); void display_segg6(void); void display_segdp6(void); void display_sega6_off(); void display_segbg6_off(); void display_segcf6_off(); void display_segde6_off(); void all_on6(void); void all_off6(void); void blink6(void); // Interrrupt functions void interrupt(void); void interrupt_init(void); #endif //_EESD_H_