武汉科技大学本科毕业设计
unsigned char data[16][16]={0};
byte true_tab[32]={0}; //最后转得的真实字库数据 byte ziku[512]={0};
void location_change(unsigned char m) //16个数 {
unsigned char j,t,x; unsigned int i,mul; byte cell; byte bit_choose,n;
for(x=0;x for(i=0;i<16;i++) for(j=0;j<16;j++) data[i][j]=0; for(i=0;i<32;i++) true_tab[i]=0; mul=x*32; for(i=mul;i cell=F16x16[i]; bit_choose=0x80; for(j=8;j<16;j++) { if(((cell)&(bit_choose))!=0) data[i-mul][j]=1; bit_choose=bit_choose>>1; } } for(i=mul+16;i cell=F16x16[i]; bit_choose=0x80; for(j=0;j<8;j++) { if(((cell)&(bit_choose))!=0) data[i-16-mul][j]=1; bit_choose=bit_choose>>1; } - 36 - 武汉科技大学本科毕业设计 } for(j=0;j<16;j++) { for(i=0;i<8;i++) { n=0; if(data[i][j]==1) { n=1; for(t=0;t for(j=0;j<16;j++) { for(i=8;i<16;i++) { n=0; if(data[i][j]==1) { n=1; for(t=0;t } j=0; for(i=mul;i ziku[i]=true_tab[j]; j++; } } } - 37 - 武汉科技大学本科毕业设计 液晶屏的预显示及按键输入部分: /****************液晶屏的预显示****************/ void pre_show(void) { redraw_flag2=redraw_flag1; redraw_flag1=page_num; if(redraw_flag2 != redraw_flag1) redraw_flag3=1; else redraw_flag3=0; if(redraw_flag3==1) LCD_CLS(); switch(page_num) { case 0: LCD_Print(19,0,\超速报警系统\ LCD_Print(0,3,\当前车速:\ break; case 1: write_6_8_char(0,line_num,'*'); LCD_Print(32,0,\设置阈值\ LCD_Print(8,2,\正常:\ LCD_Print(8,4,\超限1:\ LCD_Print(8,6,\超限2:\ break; } } /*************刷屏***************************/ void redraw() { if(page_num==0) { LCD_clear_L(73,4); write_6_8_int(73,4,real_speed); write_6_8_string(98,4,\ } if(page_num==1) { - 38 - 武汉科技大学本科毕业设计 LCD_clear_L(60,3); write_6_8_int(60,3,normal_speed); write_6_8_string(85,3,\ LCD_clear_L(60,5); write_6_8_int(60,5,out1_speed); write_6_8_string(85,5,\ LCD_clear_L(60,7); write_6_8_int(60,7,out2_speed); write_6_8_string(85,7,\ } } /*************修改变量值*********************/ void change_value(unsigned char page,unsigned char line,int num) { if(page==1) { switch(line) { case 2: write_6_8_char(0,2,'*'); normal_speed+=num; if(normal_speed<0) normal_speed=0; if(normal_speed>255) normal_speed=255; break; case 4: write_6_8_char(0,4,'*'); out1_speed+=num; if(out1_speed<0) out1_speed=0; if(out1_speed>255) out1_speed=255; break; case 6: write_6_8_char(0,6,'*'); out2_speed+=num; if(out2_speed<0) out2_speed=0; if(out2_speed>255) out2_speed=255; break; - 39 - 武汉科技大学本科毕业设计 } } } /******************按键扫描********************/ void Key_Scan(void) { unsigned char num=0; if(change_page) //可能有翻页按键按下 { LCD_DLY_ms(15); //延时消抖 if(change_page==1&&page_num==1) { while(change_page); if(page_num<1) page_num++; else page_num=0; line_num=2; pre_show(); } if(change_page==1&&page_num==0) { while(change_page); page_num++; pre_show(); } } if(change_line) //可能有换行按键按下 { LCD_DLY_ms(15); //延时消抖 if(change_line==1&&page_num==1) { while(change_line); write_6_8_char(0,line_num,' '); if(line_num<7) line_num+=2; else line_num=2; - 40 -