驾车路线:全程约828.5公里。
起点:宁波市
1.宁波市内驾车方案
1) 从起点向正西方向出发,沿县前街行驶90米,右转进入解放北路。
2) 沿解放北路行驶410米,过右侧的新金穗大楼B座约190米后,左转进入永丰路。
3) 沿永丰路行驶1.0公里,右转进入永丰北路。
4) 沿永丰北路行驶1.4公里,左转进入环城北路。
5) 沿环城北路行驶1.4公里,右转进入青林渡路。
6) 沿青林渡路行驶1.6公里,过江北大桥约310米后,直行进入江北大道。
7) 沿江北大道行驶380米,朝北环高架/G15/宁波北方向,直行上匝道。
8) 沿匝道行驶950米,直行进入北环高架。
9) 沿北环高架行驶6.9公里,直行进入沈海高速公路。
2.沿沈海高速公路行驶90米,直行进入沈海高速公路。
3.沿沈海高速公路行驶98.4公里,过嘉兴港区互通,朝杭州/浦东/嘉兴/苏州方向,稍向右转进入沈海高速公路。
4.沿沈海高速公路行驶2.8公里,直行进入乍嘉苏高速公路。
5.沿乍嘉苏高速公路行驶20.9公里,朝湖州/苏州/杭州/G60(西)方向,稍向左转进入常台高速公路。
6.沿常台高速公路行驶1.4公里,过嘉兴枢纽,直行进入常台高速公路。
7.沿常台高速公路行驶78.7公里,朝上海/北京/南京/苏南硕放国际机场方向,稍向右转进入苏州北枢纽。
8.沿苏州北枢纽行驶930米,过苏州北枢纽约1.6公里后,直行进入京沪高速公路。
9.沿京沪高速公路行驶44.1公里,朝南京/G42方向,稍向右转进入沪蓉高速公路。
10.沿沪蓉高速公路行驶1.1公里,过无锡枢钮,直行进入沪蓉高速公路。
11.沿沪蓉高速公路行驶150.5公里,过百水河大桥,朝南京二桥/南京三桥/禄口机场/G36方向,稍向右转进入马群枢纽。
12.沿马群枢纽行驶480米,过马群枢纽约470米后,直行进入绕城高速公路。
13.沿绕城高速公路行驶3.5公里,过东杨坊立交桥,直行进入宁洛高速公路。
14.沿宁洛高速公路行驶328.1公里,朝亳州/商丘/济南方向,稍向右转进入刘小集枢纽。
15.沿刘小集枢纽行驶960米,过刘小集枢纽,直行进入济广高速公路。
16.沿济广高速公路行驶64.8公里,在亳州市/涡阳出口,稍向右转上匝道。
17.沿匝道行驶1.2公里,直行进入S307。
18.亳州市内驾车方案
1) 沿S307行驶8.9公里,左前方转弯进入药都路。
2) 沿药都路行驶3.0公里,右转进入希夷大道。
3) 沿希夷大道行驶510米,到达终点(在道路左侧)。
终点:亳州市
字符'0'到'9'对应ASCII码是0x30-0x39,即十进制的48-57,
这里右移4位,再和某个数做位与,最后再加上48,就是根据g8563_Store的某个元素得到0-9中的某个数。
具体这个程序是干什么的,你给的只是代码片断,我就不知道了。
前段时间用pcf8563芯片做了个电子时钟,这个芯片自动走时间,我只用去读和写就行了,pcf8563要加一个后备电池,这样就不怕单片机掉电了。这个不太符合你的要求,不过这是我现成的,我可不想在这里重新写代码。代码不是很规范,但是能正常运行。
你在Keil里建个工程,下面一段是display.c的代码:
#include "at89x51.h"。
#include "PCF8563.h"。
//#include "TG12232.h"。
#define Key_Set P2_2。
#define Key_Add P2_1。
#define Key_Sub P2_0。
//#define LCD_CS P2_5。
//#define LCD_DATA P2_6。
//#define LCD_CLK P2_7。
void Key_down();。
void Displaybuffer(char Location);。
//void LCD_Display();。
unsigned char LedTable[10]={0x3f,0x03,0x6d,0x67,0x53,0x76,0x7e,0x23,0x7f,0x77};。
bit state=0;
char set=0;
void main()
unsigned char i,j,n=2;。
P1=0;
TMOD=0x01;
TH0=0x4c;
TL0=0x00;
ET0=1;
EA=1;
// P8563_init();。
P2=0xff;
P3=0x02;
P1=LedTable[8];。
// while(n--)
for(i=0;i<250;i++)。
for(j=0;j<6;j++)。
{
delay(10);;
P3<<=1;。
if(P3==0x80)。
P3=0x02;
delay(10);
}
delay(5000);
// lcd_init();
// set_lcd_position(0,1); //汉字定位到上行左端。
// lcd_display(0,0,"Welcome to use!");。
// lcd_display(1,0," Leo.Zheng ");。
// delay(1000);。
// lcd_send_com(0x01);//清除。
// lcd_display(0,0,"20 / /");。
while(1)
Key_down();
Displaybuffer(set);。
// LCD_Display();。
void Time0_H() interrupt 1。
static unsigned char i=0;。
TH0=0x4c;
TL0=0x00;
i++;
if(i==8)
{
i=0;
state=~state;
/*
void LCD_Display()。
lcd_display_char(0,2,((g8563_Store[6]&0xf0)>>4)+0x30);//年。
lcd_display_char(0,3,(g8563_Store[6]&0x0f)+0x30);//。
}*/
void Key_down()。
// static char set=0;。
unsigned char buffer;。
if(!Key_Set)
for(buffer=0;buffer<250;buffer++)。
_nop_();
if(!Key_Set)
if(set==0)
{
writeData(0x0,0x20);//使时间停止。
TR0=1;
}
set++;
if(set==4)
{
set=0;
TR0=0;
writeData(0x0,0x00);。
}
while(!Key_Set)。
Displaybuffer(set);。
if(!Key_Add)
for(buffer=0;buffer<250;buffer++)。
_nop_();
if(!Key_Add)
if(set==0)
return;
P8563_gettime();。
buffer= g8563_Store[set-1];。
buffer=((buffer&0xf0)>>4)*10+(buffer&0x0f);。
if(buffer>=59)。
buffer=0;
else if(buffer>=23 && set==3)。
buffer=0;
else
buffer++;
buffer=(buffer/10<<4)+(buffer%10);。
writeData(set+1,buffer);。
while(!Key_Add)。
Displaybuffer(set);。
if(!Key_Sub)
for(buffer=0;buffer<250;buffer++)。
_nop_();
if(!Key_Sub)
if(set==0)
return;
P8563_gettime();。
buffer= g8563_Store[set-1];。
buffer=((buffer&0xf0)>>4)*10+(buffer&0x0f);。
if(buffer == 0)。
{
if(set==3)
buffer=23;
else
buffer=59;
}
else
buffer--;
buffer=(buffer/10<<4)+(buffer%10);。
writeData(set+1,buffer);。
while(!Key_Sub)。
Displaybuffer(set);。
void Displaybuffer(char Location)。
unsigned char i;。
P8563_gettime();。
/*****************************************/ 。
if(Location==1 && state==0)。
P1=0;
P3=0;
goto sec_bit1;。
P3=0x02;
P1=LedTable[g8563_Store[0]&0x0f]; //sec。
sec_bit1:
for(i=0;i<250;i++);。
P1=0;
if(Location==1 && state==0)。
P1=0;
P3=0;
goto sec_bit2;。
P3=0x04;
P1=LedTable[(g8563_Store[0]&0xf0)>>4];。
sec_bit2:
for(i=0;i<250;i++);。
P1=0;
/*****************************************/。
if(Location==2 && state==0)。
P1=0;
P3=0;
goto min_bit1;。
P3=0x08;
P1=LedTable[g8563_Store[1]&0x0f]; //min。
min_bit1:
for(i=0;i<250;i++);。
P1=0;
if(Location==2 && state==0)。
P1=0;
P3=0;
goto min_bit2;。
P3=0x10;
P1=LedTable[(g8563_Store[1]&0xf0)>>4];。
min_bit2:
for(i=0;i<250;i++);。
P1=0;
/*****************************************/。
if(Location==3 && state==0)。
P1=0;
P3=0;
goto hour_bit1;。
P3=0x20;
P1=LedTable[g8563_Store[2]&0x0f]; //hour。
hour_bit1:
for(i=0;i<250;i++);。
P1=0;
if(Location==3 && state==0)。
P1=0;
P3=0;
goto hour_bit2;。
P3=0x40;
P1=LedTable[(g8563_Store[2]&0xf0)>>4];。
hour_bit2:
for(i=0;i<250;i++);。
P1=0;
P3=0x02;
/*****************************************/。
这下面一段是pcf8563.h的代码:
#ifndef __PFC8563_H__。
#define __PFC8563_H__。
#include <intrins.h>。
#define uchar unsigned char。
sbit SDA=P2^4;
sbit SCL=P2^3;
//extern void _nop_ (void);。
//extern void delay(unsigned int ms);。
uchar g8563_Store[7]; /*时间交换区,全局变量声明*/。
uchar code c8563_Store[7]={0x01,0x02,0x07,0x09,0x04,0x02,0x12}; /*写入时间初值:秒,分,时,日,周,月,年(BCD码)
07:59:00*/
void delay(long time)。
{while(time--);。
/********************************************。
内部函数,延时1
********************************************/。
void DD()
//delay(1);
// uchar i;
// for(i=0;i<250;i++)。
_nop_();
_nop_(); /*根据晶振频率制定延时时间*/。
/********************************************。
内部函数,I2C开始
********************************************/。
void Start()
{ EA=0;
SDA=1;
SCL=1;
DD();
SDA=0;
DD();
SCL=0;
/********************************************。
内部函数,I2C结束
********************************************/。
void Stop()
SDA=0;
SCL=0;
DD();
SCL=1;
DD();
SDA=1;
DD();
EA=1;
/********************************************。
内部函数,输出ACK ,每个字节传输完成,输出ack=0,结束读数据,ack=1;。
********************************************/。
void WriteACK(uchar ack)。
SDA=ack;
DD();
SCL=1;
DD();
SCL=0;
/********************************************。
内部函数,等待ACK
********************************************/。
void WaitACK()
{ uchar errtime=20;。
SDA=1;
DD(); /*读ACK*/。
SCL=1;
DD();
while(SDA)
{ errtime--;。
if(!errtime)。
{
Stop();
SDA=0; //自己加的******。
}
}
SDA=1; //自己加的******。
SCL=0;
DD();
/********************************************。
内部函数.输出数据字节
入口:B=数据
********************************************/。
void writebyte(uchar wdata)。
uchar i;
for(i=0;i<8;i++)。
{
if(wdata&0x80) SDA=1;。
else SDA=0;。
wdata<<=1;。
SCL=1;
DD();
SCL=0;
}
WaitACK(); //I2C器件或通讯出错,将会退出I2C通讯。
/********************************************。
内部函数.输入数据
出口:B
********************************************/。
uchar Readbyte()。
uchar i,bytedata;。
SDA=1;
for(i=0;i<8;i++)。
{
SCL=1;
bytedata<<=1;。
bytedata|=SDA;。
SCL=0;
DD();
}
return(bytedata);。
/********************************************。
输出数据->pcf8563。
********************************************/。
void writeData(uchar address,uchar mdata)。
Start();
writebyte(0xa2); /*写命令*/。
writebyte(address); /*写地址*/。
writebyte(mdata); /*写数据*/。
Stop();
/********************************************。
输入数据<-pcf8563。
********************************************/。
uchar ReadData(uchar address) /*单字节*/。
{ uchar rdata;。
Start();
writebyte(0xa2); /*写命令*/。
writebyte(address); /*写地址*/。
Start();
writebyte(0xa3); /*读命令*/。
rdata=Readbyte();。
WriteACK(1);
Stop();
return(rdata);。
void ReadData1(uchar address,uchar count,uchar * buff) /*多字节*/。
{ uchar i;
Start();
writebyte(0xa2); /*写命令*/。
writebyte(address); /*写地址*/。
Start();
writebyte(0xa3); /*读命令*/。
for(i=0;i<count;i++)。
{
buff[i]=Readbyte();。
if(i<count-1) WriteACK(0);。
}
WriteACK(1);
Stop();
/********************************************。
内部函数,读入时间到内部缓冲区。
********************************************/。
void P8563_Read()。
{ uchar time[7];。
ReadData1(0x02,0x07,time);。
g8563_Store[0]=time[0]&0x7f; /*秒*/。
g8563_Store[1]=time[1]&0x7f; /*分*/。
g8563_Store[2]=time[2]&0x3f; /*小时*/。
g8563_Store[3]=time[4]&0x07; /*星期*/。
g8563_Store[4]=time[3]&0x3f; /*日*/。
g8563_Store[5]=time[5]&0x1f; /*月*/。
g8563_Store[6]=time[6]; /*年*/。
/********************************************。
读入时间到内部缓冲区----外部调用。
********************************************/。
void P8563_gettime()。
P8563_Read();。
if(g8563_Store[0]==0)。
P8563_Read(); /*如果为秒=0,为防止时间变化,再读一次*/。
/********************************************。
写时间修改值
********************************************/。
//void P8563_settime()。
//{
// uchar i;。
// for(i=2;i<=8;i++) { writeData(i,g8563_Store[i-2]); }。
// writeData(6,g8563_Store[3]);。
//}
/********************************************。
P8563的初始化-----外部调用。
********************************************/。
/*
void P8563_init()。
uchar i;
if((ReadData(0xa)&0x3f)!=0x8) //检查是否第一次启动,是则初始化时间。
{
// for(i=0;i<=6;i++) g8563_Store[i]=c8563_Store[i]; //初始化时间。
// P8563_settime();。
writeData(0x0,0x00);。
writeData(0xa,0x8); //8:00报警。
writeData(0x1,0x12); //报警有效。
writeData(0xd,0xf0);。
}
*/
#endif
蚌埠——余姚:列车共1趟
D5431 蚌埠南 - 余姚 09:15 - 14:38 5小时23分 二等软座 227 一等软座 333。
余姚——慈溪:汽车
驾车路线:全程约22.6公里
起点:余姚市
1.从起点向正东方向出发,沿北兰江路行驶100米,左转进入康复路。
2.沿康复路行驶250米,右转进入世南西路。
3.沿世南西路行驶140米,直行进入世南东路。
4.沿世南东路行驶1.3公里,左转。
5.行驶260米,直行进入中山中路。
6.沿中山中路行驶1.0公里,右后方转弯进入阳明东路。
7.沿阳明东路行驶790米,过合心桥,左转进入城东路。
8.沿城东路行驶2.1公里,过万丰桥约70米后,直行进入余慈连接线。
9.沿余慈连接线行驶4.1公里,过郑河沿村约110米后,稍向右转进入S33。
10.沿S33行驶80米,右前方转弯进入S33。
11.沿S33行驶7.7公里,左转。
12.行驶20米,直行进入杨梅大道北段。
13.沿杨梅大道北段行驶1.4公里,朝乌山南路/宁波/沈海高速/G15方向,右前方转弯进入环岛。
14.沿环岛行驶30米,在第1个出口,右前方转弯进入前应路。
15.沿前应路行驶1.6公里,左转。
16.行驶20米,直行
17.行驶10米,直行进入孙塘南路。
18.沿孙塘南路行驶1.2公里,右转进入金一路。
19.沿金一路行驶250米,到达终点(在道路左侧)。
终点:慈溪
亳州-台州 未搜索到直达车次,以下为中转方案 按运行时间排序 按票价排序 1.亳州-宁波-台州 T328/T325(空调特快)转D2283(动车组) 全程用时:16小时17分 全程参考票价:173 T328/T325 亳州-宁波 22:15 11:37(次日) 硬座124 硬卧中223 D2283 宁波-台州 13:39 14:32 二等座49 2.亳州-宁波-台州 T328/T325(空调特快)转D5431(动车组) 全程用时:16小时32分 全程参考票价:173 T328/T325 亳州-宁波 22:15 11:37(次日) 硬座124 硬卧中223 D5431 宁波-台州 13:52 14:47 一等座62 二等座49 3.亳州-宁波-台州 K8563(空调快速)转D2285(动车组) 全程用时:17小时8分 全程参考票价:173 K8563 亳州-宁波 19:12 07:27(次日) 硬座124 硬卧中223 D2285 宁波-台州 11:21 12:20 一等座62 二等座49 4.亳州-合肥-台州 2278/2275(空调普快)转G7669/G7672(高速动车) 全程用时:12小时10分 全程参考票价:339.5 2278/2275 亳州-合肥 03:44 07:47 硬座44.5 硬卧中95.5 G7669/G7672 合肥-台州 11:07 15:54 一等座446 二等座295 5.亳州-合肥-台州 K4592/K4593(快速)转G7669/G7672(高速动车) 全程用时:13小时44分 全程参考票价:345.5 K4592/K4593 亳州-合肥 02:10 07:00 硬座50.5 硬卧中101.5 G7669/G7672 合肥-台州 11:07 15:54 一等座446 二等座295 6.亳州-杭州东-台州 K8563(空调快速)转D3231(动车组) 全程用时:14小时23分 全程参考票价:197.5 K8563 亳州-杭州东 19:12 04:59(次日) 硬座105 硬卧中190 D3231 杭州东-台州 07:20 09:35 一等座131 二等座92.5 7.亳州-合肥-台州 2278/2275(空调普快)转G7669/G7672(高速动车) 全程用时:12小时10分 全程参考票价:339.5 2278/2275 亳州-合肥 03:44 07:47 硬座44.5 硬卧中95.5 G7669/G7672 合肥-台州 11:07 15:54 一等座446 二等座295 8.亳州-合肥-台州 K4592/K4593(快速)转G7669/G7672(高速动车) 全程用时:13小时44分 全程参考票价:345.5 K4592/K4593 亳州-合肥 02:10 07:00 硬座50.5 硬卧中101.5 G7669/G7672 合肥-台州 11:07 15:54 一等座446 二等座295 9.亳州-杭州东-台州 K8563(空调快速)转D3231(动车组) 全程用时:14小时23分 全程参考票价:197.5 K8563 亳州-杭州东 19:12 04:59(次日) 硬座105 硬卧中190 D3231 杭州东-台州 07:20 09:35 一等座131 二等座92.5。