洛阳理工学院毕业设计(论文)
if(At_once) }
void LCD_Open_Cursor(unsigned char Cursor_width) {
TR_LCD_SPI_BYTE(LCD_CMD_HEAD); TR_LCD_SPI_BYTE(LCD_Cursor_CMD); TR_LCD_SPI_BYTE(0x01); TR_LCD_SPI_BYTE(Cursor_width); }
void LCD_Open_hilight(unsigned char Hilight_mode) {
TR_LCD_SPI_BYTE(LCD_CMD_HEAD); TR_LCD_SPI_BYTE(LCD_Hilight_CMD); TR_LCD_SPI_BYTE(Hilight_mode); TR_LCD_SPI_BYTE(0x01); }
void LCD_BK_Light_SET(unsigned char Light_MODE) {
TR_LCD_SPI_BYTE(LCD_CMD_HEAD); TR_LCD_SPI_BYTE(LCD_BK_Light_Ctl_Cmd ); TR_LCD_SPI_BYTE(Light_MODE); }
void Init_LCD(void) {
unsigned char i; for(i=0;i<250;i++)
Delay_3US(); LCD_SH=1; while(!LCD_SH); }
void Init_GPS_module(void) {
rx_pointer=0;
32
LCD_Send_CMD_END();
洛阳理工学院毕业设计(论文)
gps_rx_mode=0; gps_data_ok_flag=0; RI=0; TI=0; SCON=0x40; PCON=0x00; TMOD=0x20; TH1=0xFD; TL1=0xFD; TR1=1; REN=1; ES=1; }
void Uart_Isr(void) interrupt 4 { if(RI) {
rx_gps_data(SBUF); }
if(TI) { ; } RI=0; TI=0; }
void rx_gps_data(unsigned char com_rx_byte) {
unsigned char i; if(com_rx_byte=='$') {
gps_rx_mode=0; rx_pointer=0;
for(i=0;i<5;i++)
33
洛阳理工学院毕业设计(论文)
com_rx_buf[i]=0; } else {
if(rx_pointer com_rx_buf[rx_pointer++]=com_rx_byte; } switch(gps_rx_mode) { case 0: if(com_rx_byte==',') { if((com_rx_buf[0]=='G')&&(com_rx_buf[1]=='P')&&(com_rx_buf[2]=='R')&& (com_rx_buf[3]=='M')&&(com_rx_buf[4]=='C')) { gps_rx_mode=1; } else if((com_rx_buf[0]=='G')&&(com_rx_buf[1]=='P')&&(com_rx_buf[2]=='G')&& (com_rx_buf[3]=='G')&&(com_rx_buf[4]=='A')) { rx_height_count=0; rx_height_mode=0; gps_rx_mode=12; } rx_pointer=0; } break; case 1: if(com_rx_byte==',') { 34 洛阳理工学院毕业设计(论文) for(i=0;i } //gps_time1[i]='|'; gps_rx_mode=2; rx_pointer=0; } break; case 2: if(com_rx_byte==',') { for(i=0;i } //gps_mode[i]='|'; gps_rx_mode=3; rx_pointer=0; } break; case 3: if(com_rx_byte==',') { for(i=0;i } //gps_longitude[i]='|'; gps_rx_mode=4; rx_pointer=0; } break; case 4: 35 洛阳理工学院毕业设计(论文) if(com_rx_byte==',') { for(i=0;i gps_latitude_dir[i]=com_rx_buf[i]; } //gps_longitude_dir[i]='|'; gps_rx_mode=5; rx_pointer=0; } break; case 5: if(com_rx_byte==',') { for(i=0;i gps_longitude[i]=com_rx_buf[i]; } //gps_latitude[i]='|'; gps_rx_mode=6; rx_pointer=0; } break; case 6: if(com_rx_byte==',') { for(i=0;i gps_longitude_dir[i]=com_rx_buf[i]; } //gps_latitude_dir[i]='|'; gps_rx_mode=7; rx_pointer=0; } 36