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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? caiji.c

?? 榮柵式數字千分表轉換接口。數字千分表使用的是桂林廣陸的表。配有實物圖片說明
?? C
字號:
/*往上位機中傳輸數據時,只傳原始數據。
  采集上來的原始數據存放在0XF0~0XF2中,
  0XF0為高位,0XF1為低位,0XF2為符號位。

  處理后的數據存放在0XE0~0XE9 10個單元中,為原碼的BCD碼,符號位在0XEA中。 */

#include <AT89X52.H>
#include <absacc.h>
#include <stdio.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long

#define PA_8255 XBYTE[0x00FF]     //8255_PA
#define PB_8255 XBYTE[0x80ff]     //8255_PB
#define PC_8255 XBYTE[0x40ff]     //8255_PC
#define CON_8255 XBYTE[0xDFFF]    //8255_CON
#define CON4052 P3_2              //4052使能端
#define key_cy P2_5               //采樣開關
/************全局變量定義**************/
uchar int_flag;                     //中斷標志
uchar ExpectData[10];             //計算結果存儲區
uint XmtDat[5];                   //顯示緩存

/*************函數說明********************/
void Send_Byte(uchar byte);
void Send_Data(void);
void Clear_Lcd(void);             //清空LCD
void Init_Lcd(void);              //LCD初始化
void Init(void);                  //系統初始化
void Init_232(void);              //232初始化
void delay(uint i);               //延時
void delay10ms(void);             //延時程序10ms
void delay10us(void);             //延時10us
uchar shift(uchar);               //移位程序
void Hex_Bcd(ulong Hex,uchar *);  //hex 2 bcd
key_press(void);                  //檢測鍵盤子程序
void Caculate(void);              //計算
void PC_232(void);                //232傳輸程序
void display(void);               //顯示


/************************************************/
/***********LCD顯示子程序***************/
//#define DIPIN   0x01  //P1.0-->DI
//#define CLKPIN  0x02  //P1.1-->CLK
//各段
#define  a    0x04
#define  b    0x08
#define  c    0x40
#define  d    0x20
#define  e    0x10
#define  f    0x02
#define  g    0x01
#define  h    0x80
void Clear_Lcd(void);
uchar	Digit[10]={	a+b+c+d+e+f,	//0
			b+c,	//1
			a+b+d+e+g,	//2
			a+b+c+d+g,	//3
		        b+c+f+g,	//4
			a+c+d+f+g,	//5
			a+c+d+e+f+g,	//6
		        a+b+c,	        //7
			a+b+c+d+e+f+g,	//8
		        a+b+c+d+f+g	//9
		   };
uchar Hello[5]={                      //顯示'Hello'
               b+c+e+f+g,
               a+d+e+f+g,
               d+e+f,
               d+e+f,
               a+b+c+d+e+f};
uchar zero[5]={
               a+b+c+d+e+f,
               a+b+c+d+e+f,
               a+b+c+d+e+f,
               a+b+c+d+e+f,
               a+b+c+d+e+f,
               };

uchar Over[5]={                  //顯示'-OVER'
                g,
                a+b+c+d+e+f,
                b+c+d+e+f,
                a+d+e+f+g,
                a+b+c+f+e+g
                };

//-----------------------------------
//清空LCD顯示
//----------------------------------
void Clear_Lcd(void)
{
   uchar i;
   for(i=0;i<5;i++)
   {
     Send_Byte(0xff);
   }
   delay10us();
   //return (0);
}
void Init_Lcd(void)
{
   P1_0|=1;                    //P1.0 out
   P1_1|=1;                    //P1.1 out
   Clear_Lcd();
}
void delay(uint i)   //延時
{
  uint j,k;
  for(j=0;j<i;j++)
    for(k=0;k<150;k++);
}

void delay10us(void)        //延時10us
{
  uchar k;
  for(k=0;k<3;k++){};
  return;
}

//--------------------------------------------------
//發送一字節數據
//--------------------------------------------------
void Send_Byte(uchar byte)
{
   uchar i;
   for(i=0;i<8;i++)
   {
     if((byte&0x01)==0x01)
        P1_0=1;                      //假如此位是1,P1.0 set 1
     else
        P1_0=0;                      //假如 0,P1.0 reset 0
     P1_1=1;                         //P1.1 SET 1
     _nop_;
     P1_1=0;                         //P1.1 RESET 0
     _nop_();
     P1_1=1;
     _nop_();
     byte=byte>>1;                         //SHIFT
   }

}
//----------------------------------
//發送一批數據
//----------------------------------
void Send_Data(void)
{
   uchar i;
   Clear_Lcd();
   for(i=0;i<5;i++)
   {
     Send_Byte(XmtDat[i]);
   }
   delay10us();
}
//----------------------------------
void display(void)                            //顯示
{
 uchar i;
 uchar temp;
 //uint pp;			     //需要顯示的第一位地址為0xe3
 _nop_();
 //pp=0xE3;
 if(DBYTE[0xE2]==0x00&&DBYTE[0xE1]==0x00&&DBYTE[0xE0]==0x00){
        //for(i=1;i<5;i++){
             XmtDat[1]=~(Digit[DBYTE[0XE3]]&0xff);
             XmtDat[2]=~(Digit[DBYTE[0XE4]]&0xff);
             XmtDat[3]=~(Digit[DBYTE[0XE5]]&0xff);
             XmtDat[4]=~(Digit[DBYTE[0XE6]]&0xff);

             //pp++;
             //}
        if(DBYTE[0xEA]==0x00)XmtDat[0]=0xff;
        else XmtDat[0]=~(Over[0]&0xff);
        Send_Data();
        delay(20);

 	}
 else{

        for(i=0;i<5;i++)
     	XmtDat[i]=~(Over[i]&0xff);          //Display "-over"
 	Send_Data();
 	delay(20);
 	return;
        }				     //是否顯示溢出?
}
//-----------------------------------------
/*****************************************/


uchar shift(uchar dat)
{
dat=(dat>>4)|(dat<<4);
dat=((dat&0xcc)>>2)|((dat&0x33)<<2);
dat=((dat&0xaa)>>1)|((dat&0x55)<<1);
return dat;
}

void Hex_Bcd(ulong Hex,uchar *ExpectData)
{
    ulong data va;
    uchar data i;
    uchar idata DivBcd[10];
    va=1000000000;
    for(i=9;i;i--)
        {
        DivBcd[i]=0;
        while ((Hex>=va)&&(va>9))
            {
            Hex-=va;
            DivBcd[i]++;
            }
        va/=10;
        }
    DivBcd[0]=Hex;
    for(i=0;i<10;i++) ExpectData[i]=DivBcd[9-i];
 }
////////////////////////////////////////////


void Init(void){
CON_8255=0x9B;                     //PA,PB,PC為輸入
key_cy=1;
EA=0;                              //disable interrupt
EX1=1;                             //enable interrupt1
IT1=1;                             //邊沿觸發
EX0=0;

TMOD=0x20;                               //定時器T1 方式2
TH1=0xfd;TL1=0xfd;                       //波特率9600
PCON&=0x00;                              //SMOD=0
SCON=0x50;                               //串行口工作在方式1,并允許接收
TR1=1;                                   //啟動T1
ES=0;                           //中斷0關閉
}

void delay10ms(void){                 //延時程序10ms
uchar i;
for(i=0;i<200;i++){}
}

key_press(void){                      //檢測鍵盤子程序
if(key_cy==0) delay10ms();           //延時10ms
if(key_cy==0){
    delay10ms();                      //延時10ms
    return 1;
    }
else
    return 0;
}

void scom(void){                      //232傳輸程序
uchar idata buf[4];
uchar i;
int ain;
buf[0]=DBYTE[0xF0];
buf[1]=DBYTE[0xF1];
buf[2]=DBYTE[0xF2];
buf[3]=DBYTE[0xF3];

if(RI==1)
  {ain=SBUF;
   RI=0;
   SBUF=ain;
   while(TI==0);TI=0;
  }

   for(i=0;i<4;i++)
      {SBUF=buf[i];
       while(TI==0);TI=0;
      }
_nop_();
}//232傳輸


void Int1()interrupt 2 using 2{    //外部中斷1
////////////////////////
     ulong shuju;
     uchar i;
     uchar j=0xE0;                      //BCD碼的結果保存到以0xE0
     uchar fuhao;                       //開始的10個單元中

////////////////////////

EA=0;                              //關閉中斷
CON4052=1;                         //關閉4052輸入
               /************從8255中讀取數據******************/
DBYTE[0xF0]=0x00;
DBYTE[0xF1]=0x00;
DBYTE[0xF2]=0x00;
DBYTE[0xF3]=0x00;
DBYTE[0xF2]=PA_8255;               //符號位
DBYTE[0xF2]=shift(DBYTE[0xF2]);
DBYTE[0xF0]=PB_8255;               //高位
DBYTE[0xF0]=shift(DBYTE[0xF0]);
DBYTE[0xF1]=PC_8255;               //低位
DBYTE[0xF1]=shift(DBYTE[0xF1]);
int_flag=1;                        //中斷標志置位

//EA=1;                            //開中斷
//CON4052=0;                       //打開4052
   _nop_();
   //scom();
   _nop_();

   ////////////////////////////////////////////
     for(i=0;i<11;i++,j++)
         DBYTE[j]=0x00;
     j=0xE0;
     shuju=DWORD[0x78];			//因為是字,所以為0XE0/2=0X78
     fuhao=DBYTE[0xF2];
     if((fuhao>0x00)&&(fuhao<0x0f)) return;//如果符號位不正確,退出計算
     DBYTE[0xEA]=DBYTE[0xF2];           //符號位保存在0xEA中
     if((fuhao>0x0f)&&(fuhao<=0xFf))shuju=0X0000FFFF&(~(shuju-1));   //求補碼
     shuju*=248;
     Hex_Bcd(shuju,ExpectData);         //結果的轉換
     for(i=0;i<10;i++,j++)
         DBYTE[j]=ExpectData[i];        //把結果存儲到緩沖區中
     _nop_();

   ////////////////////////////////////////////

//   Caculate();
   display();
   scom();
//   EA=1;                            //開中斷
   CON4052=1;
}

/************************************************/
void main(void)
{
uchar i;
Init_Lcd();                              //LCD初始化
Init();                                    //系統初始化

for(i=0;i<5;i++)
    XmtDat[i]=~(Hello[i]&0xff);     //Display "Hello"
Send_Data();
delay(1000);
for(i=0;i<5;i++)
    XmtDat[i]=~(zero[i]&0xff);     //Display "00000"
Send_Data();
int_flag=0;
CON4052=0;                             //打開4052
_nop_();
DBYTE[0xF3]=0x00;
//EA=1;
//while(1)
//{
// if(!P2_5)scom();
//}
while(1)
	{
      if(!P2_5)
      {
       delay10ms();
       if(!P2_5)   EA=1;			//開中斷.開CD4052
   	}
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品中文字幕一区二区三区| 欧美日韩在线精品一区二区三区激情| 欧美三级电影精品| 久久久精品免费观看| 一区二区三区在线影院| 国产寡妇亲子伦一区二区| 欧美人伦禁忌dvd放荡欲情| 2017欧美狠狠色| 五月天欧美精品| 日本丶国产丶欧美色综合| 国产人久久人人人人爽| 日韩成人午夜精品| 日本精品视频一区二区| 欧美激情中文不卡| 成人免费毛片a| 国产精品理伦片| 91在线免费看| 亚洲午夜影视影院在线观看| 欧美午夜精品理论片a级按摩| 夜夜嗨av一区二区三区网页 | 国产成人精品免费在线| 日韩一级免费观看| 国产乱码一区二区三区| 国产精品污网站| 色婷婷综合五月| 亚洲国产aⅴ成人精品无吗| 欧美视频精品在线| 免费久久99精品国产| 2014亚洲片线观看视频免费| 成人久久18免费网站麻豆| 亚洲人123区| 欧美日韩国产免费一区二区 | 三级在线观看一区二区| 91精品国产综合久久久久| 极品少妇xxxx偷拍精品少妇| 国产清纯美女被跳蛋高潮一区二区久久w | 国产精品你懂的在线欣赏| 91亚洲精品久久久蜜桃| 亚洲超丰满肉感bbw| 精品国产91久久久久久久妲己| 国产91露脸合集magnet| 亚洲专区一二三| 精品电影一区二区| 99免费精品在线| 日日骚欧美日韩| 国产人久久人人人人爽| 欧美午夜电影在线播放| 国产高清成人在线| 亚洲影视资源网| 久久亚洲精品小早川怜子| 菠萝蜜视频在线观看一区| 午夜精品一区在线观看| 国产女人水真多18毛片18精品视频| 91麻豆精品一区二区三区| 美腿丝袜亚洲色图| 伊人色综合久久天天人手人婷| 日韩欧美123| 色婷婷激情一区二区三区| 国产乱一区二区| 日韩精品一二三| 亚洲欧美日韩久久| 久久久久久久综合色一本| 欧美日韩日本视频| 99精品视频中文字幕| 九色|91porny| 无码av中文一区二区三区桃花岛| 国产精品久久久久影院| 精品嫩草影院久久| 欧美日韩精品久久久| 成人的网站免费观看| 久久超级碰视频| 亚洲成人免费视频| 亚洲精品国产无天堂网2021| 欧美激情一区二区三区蜜桃视频| 欧美二区三区91| 欧美在线观看视频在线| av不卡一区二区三区| 精品一区二区三区免费观看| 亚洲va欧美va国产va天堂影院| 国产精品理论片| 国产丝袜美腿一区二区三区| 日韩女优av电影| 91精品国产综合久久久久久 | 在线观看亚洲精品视频| 福利电影一区二区| 久久草av在线| 毛片av一区二区三区| 午夜国产不卡在线观看视频| 一区二区三区国产精华| 亚洲欧洲色图综合| 中文子幕无线码一区tr| 国产日韩影视精品| 国产视频在线观看一区二区三区| 欧美不卡视频一区| 日韩精品在线网站| 日韩免费看的电影| 日韩免费高清av| 2021中文字幕一区亚洲| 精品少妇一区二区三区日产乱码 | 色综合久久久久综合体| 99麻豆久久久国产精品免费优播| 成人一区二区三区| 国产1区2区3区精品美女| 国产成人av一区二区三区在线| 国产精品99久久久久久宅男| 久久er精品视频| 国产又黄又大久久| 国产成人免费视频精品含羞草妖精| 极品销魂美女一区二区三区| 韩国女主播一区二区三区| 国产激情视频一区二区在线观看| 国产制服丝袜一区| 丰满少妇久久久久久久| 91在线看国产| 欧美无人高清视频在线观看| 欧美日韩亚洲国产综合| 欧美日韩一区 二区 三区 久久精品| 一本大道av一区二区在线播放| 99久精品国产| 在线观看免费视频综合| 欧美狂野另类xxxxoooo| 欧美成人video| 国产精品理论片| 亚洲一二三四在线| 久久草av在线| 99视频在线精品| 欧美酷刑日本凌虐凌虐| 精品国产免费人成电影在线观看四季 | 国产欧美一区二区精品性色| 国产精品麻豆一区二区| 伊人婷婷欧美激情| 开心九九激情九九欧美日韩精美视频电影 | 久久精品视频在线免费观看| 中文字幕精品三区| 一区二区三区av电影| 美女视频免费一区| 国产91丝袜在线播放九色| 欧美最新大片在线看| 欧美一级高清大全免费观看| 亚洲国产精品激情在线观看| 亚洲精品乱码久久久久久久久| 奇米亚洲午夜久久精品| 成人免费高清在线| 欧美激情中文不卡| 亚洲一区二区三区激情| 久久99国产精品久久99| 99精品视频在线免费观看| 欧美一区二区在线播放| 国产精品沙发午睡系列990531| 洋洋成人永久网站入口| 国产一区二区在线观看免费| 在线观看亚洲a| 欧美经典一区二区三区| 午夜精品一区二区三区免费视频| 国产成人综合亚洲91猫咪| 欧美三级视频在线播放| 国产精品丝袜黑色高跟| 麻豆精品久久精品色综合| 在线亚洲精品福利网址导航| 久久精品亚洲国产奇米99| 日本网站在线观看一区二区三区 | 中文字幕在线观看一区二区| 日韩中文字幕一区二区三区| www.亚洲精品| 精品国产污污免费网站入口 | 国产精品免费丝袜| 免费成人美女在线观看| 在线观看精品一区| 亚洲欧洲在线观看av| 国产乱码字幕精品高清av | 综合欧美亚洲日本| 国产真实乱对白精彩久久| 欧美人体做爰大胆视频| 亚洲麻豆国产自偷在线| 成人在线综合网| 精品处破学生在线二十三| 青青草国产成人99久久| 欧美无砖专区一中文字| 一区二区三区在线观看欧美| 国产大片一区二区| 欧美精品一区二区精品网| 日本美女一区二区三区视频| 欧美羞羞免费网站| 亚洲男人天堂av| 成人精品gif动图一区| 久久久精品国产免大香伊| 久久激五月天综合精品| 日韩免费电影一区| 精品一区二区在线播放| 欧美一区二区视频免费观看| 一区二区高清在线| 色哟哟日韩精品| 一区在线中文字幕| 成人黄色综合网站| 国产精品乱人伦一区二区| 成人免费毛片片v| 18欧美乱大交hd1984| 99re视频精品| 一区二区三区四区高清精品免费观看| 日韩西西人体444www|