自行车测速仪的设计毕业论文 联系客服

发布时间 : 星期三 文章自行车测速仪的设计毕业论文更新完毕开始阅读f79f8bc25122aaea998fcc22bcd126fff7055d1c

}

shiwei=asc/10; BCD=shiwei*16+gewei;

return BCD; lcd_display() {

/***********************************

时间显示及其控制程序 t_sec=read_ds1302(0x81); sec1=t_sec&0x0f; sec2=t_sec>>4;

t_min=read_ds1302(0x83); min1=t_min&0x0f; min2=t_min>>4; t_min=min2*10+min1; t_hr=read_ds1302(0x85); hr1=t_hr&0x0f; hr2=t_hr>>4; t_hr=hr2*10+hr1; write_com(0x80+0x4e); write_dat1(table[sec2]); write_com(0x80+0x4f); write_dat1(table[sec1]); write_com(0x80+0x4d); write_dat1(':'); write_com(0x80+0x4c); write_dat1(table[min1]); write_com(0x80+0x4b); write_dat1(table[min2]); write_com(0x80+0x4a); write_dat1(':'); write_com(0x80+0x49); write_dat1(table[hr1]); write_com(0x80+0x48);

************************************/

write_dat1(table[hr2]); /*测速静态显示*/ write_com( 0x80+0x46 );

write_dat1( 'k' ); write_com( 0x80+0x47 ); write_dat1( 'm' );

write_com( 0x80+0x05 );

write_dat1( 'm' ); write_com( 0x80+0x06 ); write_dat1( '/' );

write_com( 0x80+0x07 );

write_dat1( 's' );

/***************************************

温度显示及其控制程序

***************************************/

write_com(0x80+0x09); write_dat1('T'); delay(200);

write_com(0x80+0x0a); write_dat1(':'); delay(200); temper=read_temp(); if(temper<0) { } {

temper=0-temper; write_com(0x80+0x0b); write_dat1('-'); delay(200);

write_com(0x80+0x0f);

write_dat1(((temper+0x01)&0x000f)*62.5/100+0x30); else

write_com(0x80+0x0b); write_dat1('+');

delay(200);

write_com(0x80+0x0f);

write_dat1((temper&0x000f)*62.5/100+0x30); }

write_com(0x80+0x0c);

write_dat1((temper>>4)0/10+0x30); write_com(0x80+0x0d);

write_dat1((temper>>4)+0x30); write_com(0x80+0x0e); write_dat1('.');

/***************************************

测速控制程序

*************************************/

if( SECsign ) \\

{

dis_mileage( );

speed =1.1* ncounter; //周长为2.2M,两个霍尔传感器,一圈两个信号

ncounter = 0; dis_speed( ); SECsign = 0; TR0 = 1;

//显示完后启动计数,减小误差 EA=1; }

/***************************************

主函数

************************************/ void main() {

initialize( ); init_lcd( ); init_timer0( ); }

init_lcd(); delay(5); init_1302(); delay(5); P1=0xff; P3=0xff; while(1) { if(key0==0)

{ {

t_hr++; delay(20); if(t_hr>=24)

t_hr=0; delay(50); if(key0==0)

{ }

t_hr=TOBCD(t_hr);

while(!key0);

write_ds1302(0x8e,0x00);//关闭写保护 write_ds1302(0x84,t_hr);//时

write_ds1302(0x8e,0x80);//打开写保护

}

if(key1==0) {

delay(50); if(key1==0) {

t_min++; delay(20); if(t_min>=60) { }