⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 新建.c

📁 采集GPS数据
💻 C
字号:
#include<reg51.h>
#include<intrins.h>
#include<stdio.h>
#include<absacc.h>
#define uchar unsigned char
#define uint unsigned int

sbit bflag=P0^0;
sbit rs=P2^0;
sbit rw=P2^1;
sbit en=P2^2;
uchar  get[42];
uchar getflag=0;
static uchar getnum;

void delay()
{uchar j;
for(j=250;j>0;j--);
}

void longdelay(uint s)  //长延时,0.25ms
{
 while(s--)
 {
  delay();
 }
}

//1602程序
void en_toggle()
{
  en=0;
  //_nop_();
delay();
  en=1;
delay();
// _nop_();
  en=0;
}             //必须加延时
void is_ready()
{
   P0=0x00;//设置为输入口 ,现实中应该送0xff
   rs=0;
   rw=1;
   en=1;
   while(bflag);
   en=0;
}
void write_cmd(uchar cmd)
{
  is_ready();
  rs=0;
  rw=0;
  P0=cmd;
  en_toggle();
  _nop_();
}

void display(uchar row,uchar col,uchar indata)//行,位置,字符
{uchar p;
if(row==1)
{p=0x80+col-1;
  write_cmd(p);}
else
{p=0xc0+col-1;
  write_cmd(p);
   }
   is_ready();
  rs=1;
  rw=0;
  P0=indata;
  en_toggle();
  _nop_();
}
void init_lcd()
{
write_cmd(0x38);
write_cmd(0x0f);
write_cmd(0x06);
write_cmd(0x01);
}


void init_series(void) //串口初始化
{SCON=0x50;//方式1,禁止多机通信,允许接收
 TMOD=0x20;//T1工作在方式2下
 PCON=0x00;
 IE=0x90;//T1禁止中断溢出,开中断
 TH1=0xfd;//波特率为:9600
 TL1=0xfd;
 TR1=1;
}

void serial()interrupt 4
{
  RI=0;
  if(SBUF=='$')
  {getflag=1;}
  if(getflag==1)
  {
    get[getnum]=SBUF;
    getnum++;
  }
}

void main()
{ uchar position,i,j;
  position=0;
  i=0;
  j=1;
  init_lcd(); //初始化1602
  getnum=0;
  init_series(); //初始化串口

  while(1)
  {
   if(getnum>43)
   {
    IE=0;
    display(1,1,get[27]);
    display(1,3,get[17]);
    display(1,4,get[18]);
    display(1,6,get[19]);
    display(1,7,get[20]);
    display(1,5,get[21]);
    display(1,8,get[22]);
    display(1,9,get[23]);//纬度

    display(2,1,get[40]);
    display(2,2,get[29]);
    display(2,3,get[30]);
    display(2,4,get[31]);
    display(2,6,get[32]);
    display(2,7,get[33]);
    display(2,5,get[34]);
    display(2,8,get[35]);
    display(2,9,get[36]);//经度

   }
  }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -