亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? graphics.c

?? 在Freescale16位單片機MC9s12dp256上移植了J1939源碼和操作系統(tǒng)(ucOSII)。
?? C
?? 第 1 頁 / 共 3 頁
字號:
 /*-------------------------------------------------------------------*/
 /*    GRAPHICS.C																											*/
 /*-------------------------------------------------------------------*/
 /*    Copyright (C) 2006, By ZhaiGang																*/
 /*																																		*/
 /*    Function: LCD Graphics Functions       												*/
 /*-------------------------------------------------------------------*/
 
/**************************************************/
/*包含的頭文件。                                 	*/
/**************************************************/
#include <stdlib.h> 
#include "Graphics.h"
#include "Hzk16.h"
#include "Picture.h"
 
/**************************************************/
/*位。定義一個字節(jié),用于位操作。                	*/
/**************************************************/
const unsigned char vLcdBit[8]=
  {0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
  
 
unsigned int vLcdRow,vLcdCol,HzNumber;
unsigned int OldSpeedValue=0;   //車速
unsigned int OldWaterTValue=0;  //水溫	
unsigned int OldOilValue=0;     //燃油	
 
/**************************************************/
/*初始化端口。                                  	*/
/**************************************************/
void vLcd_DeviceInit(void) {
  DDRA=0xFF;
  DDRB=0xFF;
  PORTA=0xFF;
  PORTB=0xFF;
}

/**************************************************/
/*設(shè)置光標。先選擇行,再選擇列。圖形方式。        */
/**************************************************/
void vLcd_SetCursor(unsigned int col,unsigned int row){
  vLcd_WRCommand(Lcd_YAxisR,row);
  vLcd_WRCommand(Lcd_XAxisR,col);
  vLcd_WRCommand(Lcd_CntrlR,((col/256)<<2)|(row/256));
}

/**************************************************/
/*寫指令、數(shù)據(jù)子程序。                          	*/
/**************************************************/  
void vLcd_WRCommand(byte bIndex,unsigned int bValue){  
  DDRB= 0xff;
  switch (bIndex) {
    case Lcd_XAxisR:		 /* Select X-Axis R        */
      A1=0; A0=0;
      break;
    case Lcd_YAxisR:		 /* Select Y-Axis R        */
      A1=0; A0=1;
      break;
    case Lcd_CntrlR:		 /* Select Cntrl R          */
      A1=1; A0=0;
      break;
    case Lcd_DataR:	 /* Select Data R           */
      A1=1; A0=1;
      break;
  }/* switch */
  PORTB=bValue;				 /* Write Value to PortB    */    
  CS=0; WR=0;
  WR=1; CS=1;
}
 
 
/**************************************************/
/*清屏。全屏清零,可設(shè)置背景色。                 	*/
/**************************************************/ 	 
void vLcd_ClearViewport(unsigned char BColor){
  unsigned int x,y;
  vLcd_DeviceInit();
  for(y=0;y<480;y++){
    x=0;
	 vLcd_SetCursor(x,y);
    for(;x<640;x++) 
    vLcd_WRCommand(Lcd_DataR,BColor);
  }											
}
 
/**************************************************/
/*清屏。局部清零,可設(shè)置背景色。                 	*/
/**************************************************/ 
void vLcd_ClearRect(unsigned int x1,unsigned int y1,
                     unsigned int x2,unsigned int y2,unsigned char BColor){
  unsigned int i,j;
  for(j=y1;j<y2;j++){
    i=x1;
    vLcd_SetCursor(i,j);
    for(;i<x2;i++)
    vLcd_WRCommand(Lcd_DataR,BColor);
  }    
}			

/**************************************************/
/*延時。                                        	*/
/**************************************************/ 
static void vLcd_Delay1ms(void){
  unsigned int cnt=0;
  while(cnt<Delay) cnt++;  
} 
void vLcd_DelayNms(int Nms){
  unsigned int i;
  for(i=1;i<Nms;i++)
  vLcd_Delay1ms();
}

 
/**************************************************/
/*畫點。可設(shè)置前景色。                          	*/
/**************************************************/ 
 void vLcd_DrawPoint(int x0,int y0,unsigned char FColor){
   vLcd_SetCursor(x0,y0);
   vLcd_WRCommand(Lcd_DataR,FColor);
 }
 
/**************************************************/
/*畫線。可設(shè)置前景色。                          	*/
/**************************************************/
void vLcd_DrawLine(int x0,int y0,int x1,int y1, unsigned int color){
   int i,DeltaX,DeltaY,DeltaX2,DeltaY2,x_inc,y_inc,Err;
   
   DeltaX= x1-x0;
   DeltaY= y1-y0;
  
   if(DeltaX>=0){
     x_inc= 1;
   }
   else{
     x_inc= -1;
     DeltaX= -DeltaX;
   }
  
   if(DeltaY>=0){
     y_inc= 1;
   } 
   else{
     y_inc= -1;
     DeltaY= -DeltaY;
   }
  
   DeltaX2= DeltaX<<2;
   DeltaY2= DeltaY<<2;
  
   if(DeltaX>DeltaY){
     Err= DeltaY2- DeltaX;
     for(i=0;i<=DeltaX;i++){
       vLcd_DrawPoint(x0,y0,color);     
       if(Err>=0){
         Err-= DeltaX2;        
         y0+= y_inc;
       }
       Err+= DeltaY2;
       x0+= x_inc;
     }
   } 
   else{
     Err= DeltaY2- DeltaX;
     for(i=0;i<=DeltaY;i++){
       vLcd_DrawPoint(x0,y0,color);  
       if(Err>=0){
         Err-= DeltaY2;
         x0+= x_inc;
       }
       Err+= DeltaX2;
       y0+= y_inc;
     }
   }
}

void vLcd_DrawLine2(int x0,int y0,int x1, int y1,int FColor){
  int x,y,dx,dy,e;
  unsigned int i;
  dx=x1-x0;
  dy=y1-y0;
  e=-dx;
  x=x0;
  y=y0;
  for(i=0;i<dx;i++){
    vLcd_DrawPoint(x,y,FColor);  
    x++;
    e=e+2*dy;
    if(e>=0){
      y++;
      e=e-2*dx;
    }
  }
}

/**************************************************/
/*畫圓弧。可設(shè)置前景色。 1/8象限圓弧              */
/**************************************************/ 
void vLcd_DrawPartArc(unsigned int ox,unsigned int oy,unsigned int Rx,
                      unsigned char FColor,unsigned char quad){
  unsigned int xx,rr,xt,yt,rs;
  unsigned int col,row;
  yt=Rx;
  rr=Rx*Rx+1;
  rs=(yt+(yt>>1))>>1;
  for(xt=0;xt<=rs;xt++){
    xx=xt*xt;
    while((yt*yt)>(rr-xx)) yt--;
    switch(quad){
      case 0:
        col=ox+xt; row=oy-yt; break;
      case 1:
        col=ox-xt; row=oy-yt; break;
      case 2:
        col=ox-xt; row=oy+yt; break;
      case 3:
        col=ox+xt; row=oy+yt; break;
      case 4:
        col=ox+yt; row=oy-xt; break;
      case 5:
        col=ox-yt; row=oy-xt; break;
      case 6:
        col=ox-yt; row=oy+xt; break; 
      case 7:
        col=ox+yt; row=oy+xt; break;
    }
    vLcd_DrawPoint(col,row,FColor);
  }
} 


/**************************************************/
/*畫圓。可設(shè)置前景色、方式(0:不填充;1:填充)。  */
/**************************************************/ 
void vLcd_DrawCircle(int centerx, int centery, int radius, unsigned char FColor, int type){
  int x = 0;
  int y = radius;
  int delta = 2*(1-radius);
  int direction;
  while (y >= 0) {
  
    if(!type) {
      vLcd_DrawPoint(centerx+x, centery+y, FColor);
      vLcd_DrawPoint(centerx-x, centery+y, FColor);
      vLcd_DrawPoint(centerx-x, centery-y, FColor);
      vLcd_DrawPoint(centerx+x, centery-y, FColor);   
    }
    else{
      vLcd_DrawLine(centerx+x, centery+y, centerx+x, centery-y, FColor);
      vLcd_DrawLine(centerx-x, centery+y, centerx-x, centery-y, FColor);
    }
    
    if(delta < 0){
      if((2*(delta+y)-1) < 0) {
        direction = 1;
      }
      else {
        direction = 2;
      }
    }
    else if(delta > 0){
      if((2*(delta-x)-1) <= 0) {
        direction = 2;
      }
      else{
        direction = 3;
      }
    }
    else {
      direction=2;
    }
  
    switch(direction) {
    case 1:
      x++;
      delta += (2*x+1);
      break;
    case 2:
      x++;
      y--;
      delta += 2*(x-y+1);
      break;
    case 3:
      y--;
      delta += (-2*y+1);
      break;
    }

  }
}

/**************************************************/
/*單個漢字顯示(16×16)。													*/
/*    FColor:字體顏色。                           */
/*		HzSituation:待顯漢字在字庫(HZK16)中的位置。 */
/**************************************************/ 
void vLcd_Show16DotWord(unsigned char HzSituation,unsigned char FColor){
  unsigned char i,j,k;
  unsigned int delta,HzS;
  delta=vLcdCol+HzNumber*8;
  if(delta>624){
		vLcdCol=0; vLcdRow+=24; 
		HzNumber=0;
		delta=vLcdCol+HzNumber*8;  
	}
	HzS=HzSituation*32;
  for(i=0;i<2;i++){		
		for(j=0;j<16;j++){
		  for(k=0;k<8;k++)
		    if(HZK16[HzS+j*2+i]&vLcdBit[k])
		       vLcd_DrawPoint(delta+i*8+k,vLcdRow+j,FColor); 	    
	  }
    HzNumber++; 
	}
}

/**************************************************/
/*多個漢字顯示(16×16)。													*/
/*    FColor:字體顏色。 HzNum:待顯漢字的總數(shù)。    */
/*		Hz:多個待顯漢字的位置順序。 								*/
/*    可自動換行,超出屏幕下沿時,余字將不再顯示。*/
/**************************************************/ 
void vLcd_Disply16DotHz(unsigned int row,unsigned int col,unsigned char *Hz,
                        unsigned char HzNum,unsigned char FColor){
  unsigned char i;
  HzNumber=0;  
  vLcdCol=col; vLcdRow=row;
  vLcd_SetCursor(vLcdCol,vLcdRow);
  for(i=0;i<HzNum;i++){
    vLcd_Show16DotWord(Hz[i],FColor);
    if(vLcdRow>464) break;
  }	
}			



void vLcd_LeftScroll1(void){
  unsigned int y,n;
	for(y=0;y<75;y++){
	  //vLcd_WRCommand(Lcd_YAxisR,300+y);
    //vLcd_WRCommand(Lcd_CntrlR,(y+100)/256);
    //vLcd_WRCommand(Lcd_XAxisR,100);
   
	  //vLcd_SetCursor(100,100+y);
    for(n=0;n<101;n++)  {
      vLcd_SetCursor(270+n,340+y);
      //vLcd_WRCommand(Lcd_XAxisR,400+n);		 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕成人av| 中文字幕一区二区三区乱码在线 | 欧美日韩午夜在线| 国产成人免费视| 激情另类小说区图片区视频区| 五月天一区二区三区| 亚洲国产视频a| 亚洲一区电影777| 亚洲h动漫在线| 三级影片在线观看欧美日韩一区二区| 亚洲国产一区在线观看| 亚洲一区欧美一区| 亚洲国产另类精品专区| 三级欧美在线一区| 日韩**一区毛片| 免费xxxx性欧美18vr| 秋霞成人午夜伦在线观看| 日本一二三不卡| 国产精品高清亚洲| 欧美激情一区二区| 国产目拍亚洲精品99久久精品| 欧美精品一区二区精品网| 日韩欧美国产成人一区二区| 91精品国产aⅴ一区二区| 欧美日韩高清在线播放| 欧美日本一区二区三区| 欧美巨大另类极品videosbest | 亚洲自拍偷拍欧美| 亚洲一区av在线| 亚洲一区自拍偷拍| 香蕉成人啪国产精品视频综合网| 一区二区国产视频| 亚洲曰韩产成在线| 性欧美疯狂xxxxbbbb| 奇米影视在线99精品| 美女一区二区视频| 经典一区二区三区| 东方aⅴ免费观看久久av| 经典三级一区二区| 国产精品一二三四| 成人在线综合网| 亚洲欧美电影院| 亚洲综合一区二区| 免费xxxx性欧美18vr| 国产成人高清在线| 蜜臀精品一区二区三区在线观看| 国产精品久线在线观看| 国产精品毛片久久久久久| 欧美亚洲国产一区二区三区| 在线精品视频免费播放| 丝袜脚交一区二区| 在线一区二区视频| 成人黄色在线网站| 9i看片成人免费高清| 91久久线看在观草草青青 | 北条麻妃一区二区三区| 亚洲一区在线视频观看| 国产精品乱码久久久久久| 久久精品噜噜噜成人88aⅴ| 国产一区在线看| 精品一区二区三区久久| 国产人久久人人人人爽| 欧美猛男男办公室激情| 国产亚洲精品久| 国产精品你懂的在线欣赏| 亚洲bdsm女犯bdsm网站| 九九精品视频在线看| 欧美日韩在线直播| 亚洲精品免费看| 日本不卡一二三| 在线观看欧美精品| 国产精品久久久久影院色老大| 久久99九九99精品| 欧美大胆人体bbbb| 免费久久99精品国产| 国产久卡久卡久卡久卡视频精品| 色老汉一区二区三区| 成人免费小视频| 色国产综合视频| 亚洲色图都市小说| 97久久超碰国产精品| 一区免费观看视频| 色婷婷综合久久久| 亚洲国产精品视频| 日本韩国精品在线| 中文字幕一区在线| 国产不卡在线一区| 亚洲美女视频一区| 欧美日韩国产一级| 日韩高清在线不卡| 欧美精品一区在线观看| 成人中文字幕电影| 亚洲一区二区三区影院| 日本韩国一区二区三区视频| 中文字幕 久热精品 视频在线| 一区二区三区中文在线观看| 91同城在线观看| 日韩激情一区二区| 精品99999| 在线观看亚洲精品视频| 美腿丝袜亚洲三区| 国产精品麻豆网站| 欧美人伦禁忌dvd放荡欲情| 国产在线视频一区二区| 亚洲色图第一区| 国内精品视频一区二区三区八戒| 欧美一区二区三区日韩视频| 国产乱码精品一区二区三区忘忧草| 亚洲色图色小说| 91精品一区二区三区久久久久久| 国产在线播精品第三| 午夜欧美大尺度福利影院在线看| 欧美国产日韩在线观看| 日韩精品专区在线影院重磅| 日韩精品福利网| 亚洲欧洲成人自拍| 中文字幕的久久| 久久一夜天堂av一区二区三区| 欧美日韩国产一二三| 91在线观看视频| 成人小视频在线| 国产a区久久久| 国产永久精品大片wwwapp| 精品亚洲aⅴ乱码一区二区三区| 精品久久久久久久一区二区蜜臀| 久久99在线观看| 日韩高清在线电影| 亚洲欧美综合色| 亚洲欧洲www| 日韩一区中文字幕| 国产精品女同一区二区三区| 欧美激情综合五月色丁香| 欧美韩日一区二区三区四区| 亚洲国产精品av| 亚洲国产精品av| 久久综合九色综合欧美就去吻| av在线一区二区| 色婷婷综合久色| 欧美日本免费一区二区三区| 欧美猛男男办公室激情| 精品毛片乱码1区2区3区| 日韩午夜精品视频| 久久精品一区二区三区不卡牛牛| 国产精品日产欧美久久久久| 欧美在线观看视频一区二区三区| 毛片av一区二区三区| 国产一区二区在线看| 精品在线播放免费| 国产成人精品免费网站| 91黄色免费版| 日韩精品在线看片z| 欧美国产精品一区| 亚洲成人手机在线| 成人av手机在线观看| 色综合婷婷久久| 蜜桃视频在线观看一区二区| 免费高清在线视频一区·| www.欧美日韩| 欧美电视剧免费全集观看| 日韩美女视频19| 久久99精品国产.久久久久久| 国产 欧美在线| 欧美人成免费网站| 久久久久久亚洲综合影院红桃| 有码一区二区三区| 91亚洲国产成人精品一区二三| 色域天天综合网| 日本一区二区免费在线观看视频| 亚洲久本草在线中文字幕| yourporn久久国产精品| 欧美激情一区在线| 麻豆91免费观看| 777精品伊人久久久久大香线蕉| 国产精品美女久久久久久2018| 麻豆中文一区二区| 9191国产精品| 亚洲色图丝袜美腿| 欧美三级中文字幕在线观看| 亚洲婷婷综合色高清在线| 91视频91自| 亚洲国产精品一区二区久久| 欧美日韩国产三级| 午夜在线成人av| 91免费在线播放| 亚洲午夜免费福利视频| 91麻豆国产香蕉久久精品| 一区二区高清视频在线观看| 欧美亚洲综合久久| 蜜桃视频在线一区| 日韩亚洲欧美高清| 免费在线观看成人| 欧美不卡一二三| 国产99久久久国产精品潘金| 成人爱爱电影网址| 久久久久久久久久看片| 色婷婷狠狠综合| 亚洲免费在线看| 欧美一区二区三区精品| 精品一区二区免费在线观看| 欧美激情中文字幕一区二区|