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

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

?? wanterhub.c

?? 水控HUB的程序
?? C
?? 第 1 頁 / 共 3 頁
字號:
/*****************************************************************************************
*                                                                                        *
* File:   2006.10.26                                                                         *
*                                                                                        *
* Version:                                             		                         *
*
*
*****************************************************************************************/
#include <w77c32.h>
#include<absacc.h>
#include<intrins.h>

#define uchar unsigned char
#define uint  unsigned int
#define ulong unsigned long
#define NOP5() _nop_();_nop_();_nop_();_nop_();_nop_()

#define SYSFLAG   XBYTE[0x0400]
#define SALEBEG_H XBYTE[0x0401]
#define SALEBEG_L XBYTE[0x0402]
#define SALEEND_H XBYTE[0x0403]
#define SALEEND_L XBYTE[0x0404]
#define FmSaleCount  XBYTE[0X0405]

#define SALEBEG_H1 XBYTE[0x0406]
#define SALEBEG_L1 XBYTE[0x0407]
#define SALEEND_H1 XBYTE[0x0408]
#define SALEEND_L1 XBYTE[0x0409]

#define SALEBEG_H2 XBYTE[0x040a]
#define SALEBEG_L2 XBYTE[0x040b]
#define SALEEND_H2 XBYTE[0x040c]
#define SALEEND_L2 XBYTE[0x040d]
#define FmList     XBYTE[0x040e]

#define TEST_XRAM XBYTE[0X0500]        //檢測XRAM區
#define SaleBuf   XBYTE[0X0600]        //no02
#define SaleInformationBuf XBYTE[0x1000]

#define SaleLength  13		      //+pf   14BYTE
#define TimeLength  6
#define AccountLen  6                 //+PF   7BYTE

uchar data status;
uchar data address;                     //HUB地址
uchar idata list;                       //流水號

uchar data PosName;
uchar data SaleCount;                   //打包數據消費筆數
uchar data Serial0SendNum;              //串口0發送數據字節變量
uchar data Serial1SendNum;              //串口1發送數據字節變量

uchar idata Ri1Buf[20];                 //串口1接收緩沖區 與PCI卡通訊
uchar idata Ti1Buf[23];                 //串口1發送緩沖區

uchar idata pci_count;

uchar xdata Ri0Buf[246];                //串口0接收緩沖區 與POS終端通訊
uchar xdata Ti0Buf[175];                //串口0發送緩沖區

uchar xdata AccountBuf[224];            //請求帳戶信息列表 (1字節POS機號+5字節ID號)
//uchar xdata TimeUpdataBuf[6];         //時間更新信息
uchar xdata ListCode[32];               //消費流水帳號
uchar xdata *Serial0SendPoint=Ti0Buf;
uchar idata *Serial1SendPoint=Ti1Buf;

uchar xdata *SalePoint=&SaleInformationBuf;          //消費流緩沖區指針

uint  data SaleBeg;
uint  data SaleEnd;

bdata char InOrOff[8];                  //POS狀態緩沖區

sbit beep=P1^0;
sbit re184_up=P3^2;//P1^6;
sbit batter=P3^3;
//sbit line_led=P1^7;
sbit fm_cs=P1^5;
sbit re184_dn=P1^6;//P3^2;
sbit line_addr=P1^1;                    //讀地址片選
sbit watchdog=P1^7;                     //看門狗喂狗

bit f_zh;                               //請求帳號標志
bit f_zhdown;
bit f_send;
bit f_id;
bit f_sal;

bit s_err;                              //串口1接收錯誤
bit f_1500ms;                           //1.5秒到標志
bit f_ri1;                              //
bit f_time;                             //更新系統時間標志
bit f_serial1;                          //串口0正在發送數據標志
bit f_sign;                             //test 消費數據是否重復發送
bit f_over;                             //消費數據區滿標志
bit f_zhstate;
bit f_err;                              //消費數據區指針異常

//函數申明
uchar ReadAddress(void);                //讀取HUB地址
void InialSerial(void);                 //初始化串口
void ClearXram(void);                   //清除片外RAM
void ClearXXram(void);                  //清理片外RAM 1000~8000,前提是ADD為FFH
void LookForPos(void);                  //輪尋POS
void SendByte(uchar data1);             //串口1發送一字節
uchar ReceiveByte(void);                //串口1接收一字節
void SendSaleRecord(void);              //檢測是否有消費數據發送
bit  test_xram(void);
void ReckonFinger(void);                //計算指針數據存儲區頭尾指針,結合ReadSys
void ReckonFinger1(void);
void ReadSys(void);
void beepp(uint times);
void poszhGet(void);                    //輪尋pos后判斷pos是否已經申請過帳號 存儲申請信息
//*******************************************************/
/*Function:測試XRAM                                     */
/*Input:   Non                                          */
/*Output:  bit                                          */
/*Desription:                                           */
/********************************************************/
bit  test_xram( void )
{
      uchar  xdata *point=&TEST_XRAM;
      uchar         i;


      fm_cs=0;
      for(i=0;i<8;i++)
      {
        *point++=0x55;
      }
      point=&TEST_XRAM;
      for(i=0;i<8;i++)
      {
          if(*point++!=0x55)
          return(1);
      }
      point=&TEST_XRAM;
      for(i=0;i<8;i++)
      {
         *point++=0x00;
      }
      fm_cs=1;
}


/********************************************************/
/*Function:  讀取HUB地址                                */
/*Input:     Nun.                                       */
/*Output:    address                                    */
/*Description:                                          */
/********************************************************/
uchar ReadAddress(void)
{
      uchar address;

      line_addr=0;
      NOP5();
      address=P2;
      line_addr=1;
      if(address==0x7f)
      {
      ClearXXram();
      }
      return ~address;
}

/********************************************************/
/*Function:  判斷是否恢復指針                           */
/*Input:					        */
/*Output:			                        */
/*Description:                                          */
/********************************************************/
void ReckonFinger(void)
{
      uchar xdata a,b,c,d;
      fm_cs=0;
      _nop_();

      a=SALEBEG_H;
      b=SALEBEG_H1;
      c=SALEBEG_H2;
      d=(a-b)|(a-c);
      a=SALEBEG_L;
      b=SALEBEG_L1;
      c=SALEBEG_L2;
      d+=(a-b)|(a-c);
      a=SALEEND_H;
      b=SALEEND_H1;
      c=SALEEND_H2;
      d+=(a-b)|(a-c);
      a=SALEEND_L;
      b=SALEEND_L1;
      c=SALEEND_L2;
      d+=(a-b)|(a-c);
      if(d!=0)
      {
         ReckonFinger1();
         beepp(400);
      }
      fm_cs=1;
}

/********************************************************/
/*Function:  恢復指針				        */
/*Input:					        */
/*Output:			                        */
/*Description:                                          */
/********************************************************/
void ReckonFinger1(void)
{
      uint  xdata  i,j,k;
      uchar xdata *pnt=0x1000;

      fm_cs=0;
      _nop_();

      k=0;
      j=0;
      for(i=0;i<2000;i++)       //判斷end
      {
        if(*pnt==0xff)
        {
             if(i==1999)
             {
                 j=0;           //end
                 k=0;           //beg
                 i++;
                 break;
             }
             else
             {
              pnt+=14;
              continue;
             }
        }
        else
        {
             j=i++;
             break;
        }
      }

      for(;i<2000;i++)
      {
        if(*pnt!=0xff)
        {
             if(i==1999)
             {
                 k=1999;       //beg
                 i++;
                 break;
             }
             else
             {
              pnt+=14;
              continue;
             }
        }
        else
        {
             k=i;
             i++;
             break;
        }

      }



      for(;i<2000;i++)
      {
          if(*pnt==0xff)
          {
             pnt+=14;
             continue;
          }
          else
          {
           j=i;
           break;
          }
      }


      SaleBeg=k;
      SaleBeg=SaleBeg%2000;
      SALEBEG_H=SaleBeg/0x100;
      SALEBEG_L=SaleBeg%0x100;
      SALEBEG_H1=SALEBEG_H;
      SALEBEG_L1=SALEBEG_L;
      SALEBEG_H2=SALEBEG_H;
      SALEBEG_L2=SALEBEG_L;

      SaleEnd=j;
      SaleEnd=SaleEnd%2000;
      SALEEND_H=SaleEnd/0x100;
      SALEEND_L=SaleEnd%0x100;
      SALEEND_H1=SALEEND_H;
      SALEEND_L1=SALEEND_L;
      SALEEND_H2=SALEEND_H;
      SALEEND_L2=SALEEND_L;
      fm_cs=1;
}


/********************************************************/
/*Function:  讀取系統標志和緩沖區數據數目               */
/*Input:     Nun.                                       */
/*Output:    Nun.                                       */
/*Description:                                          */
/********************************************************/
void ReadSys(void)
{
     fm_cs=0;
     _nop_();
     if (SYSFLAG==0xaa)
     {
        SaleBeg=SALEBEG_H*0x100+SALEBEG_L;
        SaleEnd=SALEEND_H*0x100+SALEEND_L;

       if((SaleBeg+1)%2000==SaleEnd)
             f_over=1;
       else
             f_over=0;
       list=FmList;
       SaleCount=FmSaleCount;
       if(SaleCount!=0)
       {
	    f_sal=1;
       }
       else
       {
	    f_sal=0;
       }

     }
     else
     {
         SYSFLAG=0xaa;
         f_over=0;
         SaleBeg=0;SaleEnd=0;
         SALEBEG_H=0;SALEBEG_L=0;
         SALEEND_H=0;SALEEND_L=0;

         SALEBEG_H1=0;
         SALEBEG_L1=0;
         SALEBEG_H2=0;
         SALEBEG_L2=0;

         SALEEND_H1=0;
         SALEEND_L1=0;
         SALEEND_H2=0;
         SALEEND_L2=0;

         SaleCount=0;FmSaleCount=0;f_sal=0;FmList=0;

     }

     fm_cs=1;
}

/********************************************************/
/*Function:  清除片外RAM                                */
/*Input:     Nun.                                       */
/*Output:    Nun.                                       */
/*Description:                                          */
/********************************************************/
void ClearXram(void)
{
     uchar xdata *pnt=0x0000;
     uint i;

     for (i=0;i<0x0400;i++)
         *pnt++=0xff;

}


//Function:  清除片外RAM

void ClearXXram(void)
{
     uchar xdata *pnt=0x1000;
     uint i;

     fm_cs=0;
     _nop_();

     SYSFLAG=0xaa;
     f_over=0;
     SaleBeg=0;SaleEnd=0;
     SALEBEG_H=0;SALEBEG_L=0;
     SALEEND_H=0;SALEEND_L=0;

     SALEBEG_H1=0;
     SALEBEG_L1=0;
     SALEBEG_H2=0;
     SALEBEG_L2=0;

     SALEEND_H1=0;
     SALEEND_L1=0;
     SALEEND_H2=0;
     SALEEND_L2=0;

     SaleCount=0;FmSaleCount=0;f_sal=0;FmList=0;

     for (i=0;i<0x8000;i++)
         *pnt++=0xff;
     f_err=0;
     fm_cs=1;

}

/********************************************************/
/*Function:  初始化定時器0                              */
/*Input:     Nun.                                       */
/*Output:    Nun.                                       */
/*Description:                                          */
/********************************************************/
void InialTime0(void)
{

    TH0=-(30000/256);
    TL0=-(30000%256);

    ET0=1;
    TR0=1;
}


/********************************************************/
/*Function:  初始化串口                                 */
/*Input:     Nun.                                       */
/*Output:    Nun.                                       */
/*Description:                                          */
/********************************************************/
void InialSerial(void)
{
     SCON=0xf0;        //串口1與POS通訊 28800bps
     SCON1=0xd0;       //串口0與PCI卡通訊 115200bps

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
伊人性伊人情综合网| 中文字幕亚洲综合久久菠萝蜜| 成人午夜激情片| 国产一区二区久久| 美女一区二区视频| 麻豆一区二区99久久久久| 亚洲h精品动漫在线观看| 亚洲欧美电影院| 亚洲天堂免费看| 国产精品久久国产精麻豆99网站 | 国产精品乱人伦| 欧美激情一区二区三区在线| 久久精品免视看| 国产精品欧美精品| 综合精品久久久| 亚洲最新视频在线播放| 亚洲bt欧美bt精品777| 天堂蜜桃一区二区三区| 美腿丝袜亚洲一区| 国产乱码精品1区2区3区| 成人动漫一区二区| 色天天综合色天天久久| 欧美丝袜丝nylons| 日韩免费看的电影| 中文一区二区完整视频在线观看| 亚洲欧美怡红院| 三级欧美韩日大片在线看| 麻豆国产精品一区二区三区 | 久久久久久久久久久久电影| 欧美精品一区二区三| 国产精品久久福利| 视频一区视频二区中文字幕| 韩国一区二区三区| 972aa.com艺术欧美| 91精品福利在线一区二区三区| 久久精品免费在线观看| 夜夜精品视频一区二区| 国产尤物一区二区在线| 欧美亚洲综合色| 欧美精品一区二区蜜臀亚洲| 亚洲女人的天堂| 狠狠色狠狠色综合日日91app| jlzzjlzz国产精品久久| 日韩欧美自拍偷拍| 亚洲欧美激情在线| 国产真实精品久久二三区| 欧美午夜片在线观看| 欧美国产精品专区| 美女脱光内衣内裤视频久久网站| 91色乱码一区二区三区| 精品国产一区二区三区忘忧草| 亚洲婷婷国产精品电影人久久| 精品一二三四在线| 欧美日韩一区二区三区在线| 中文字幕精品综合| 久久成人免费日本黄色| 欧美日韩一卡二卡| 亚洲精品国产a| 成人黄色小视频在线观看| 日韩免费在线观看| 丝袜诱惑亚洲看片| 日本大香伊一区二区三区| 中文字幕第一页久久| 国产一区二区三区免费看| 欧美精品成人一区二区三区四区| 欧美国产精品中文字幕| 国产乱理伦片在线观看夜一区| 日韩亚洲欧美成人一区| 香蕉成人伊视频在线观看| 91官网在线免费观看| 亚洲色大成网站www久久九九| 成人午夜在线视频| 国产欧美日韩精品a在线观看| 久久www免费人成看片高清| 欧美区在线观看| 亚洲国产中文字幕| 在线看国产日韩| 亚洲国产va精品久久久不卡综合| 在线观看亚洲专区| 亚洲永久精品大片| 欧美日韩亚洲综合一区二区三区| 亚洲美女淫视频| 欧美日韩综合在线| 亚洲一区二区三区美女| 欧亚洲嫩模精品一区三区| 亚洲主播在线播放| 欧美日韩国产综合一区二区| 亚洲成人免费看| 日韩欧美中文字幕一区| 久草这里只有精品视频| 国产午夜精品美女毛片视频| 成人久久18免费网站麻豆| 亚洲精品日韩综合观看成人91| 色伊人久久综合中文字幕| 亚洲综合视频在线观看| 欧美日韩国产小视频| 麻豆精品在线看| 国产精品日韩成人| 欧美视频一区二| 蜜桃在线一区二区三区| 国产精品丝袜在线| 欧美日韩在线播放| 国产成人午夜视频| 亚洲激情五月婷婷| 91精品国产综合久久精品app| 精品一区二区久久| 专区另类欧美日韩| 91麻豆精品91久久久久久清纯| 九色综合国产一区二区三区| 国产精品欧美经典| 欧美高清dvd| 国产成人在线视频网站| 亚洲中国最大av网站| 精品国产123| 色呦呦日韩精品| 极品尤物av久久免费看| 亚洲图片你懂的| 日韩一区二区三区视频| 成人av中文字幕| 蜜臀av一区二区在线免费观看| 国产精品免费丝袜| 日韩欧美黄色影院| 色综合久久综合网欧美综合网| 免费不卡在线视频| 艳妇臀荡乳欲伦亚洲一区| 久久精品亚洲精品国产欧美| 欧美精品乱人伦久久久久久| 成人黄页毛片网站| 久99久精品视频免费观看| 亚洲国产一区视频| 一区视频在线播放| 亚洲精品一区二区三区精华液 | 日本大胆欧美人术艺术动态 | 亚洲一区二区在线免费观看视频| 欧美精品一区二区久久婷婷| 欧美精品久久99久久在免费线| eeuss鲁片一区二区三区在线观看| 水野朝阳av一区二区三区| 亚洲视频综合在线| 中文字幕第一区第二区| 精品成a人在线观看| 日韩欧美在线不卡| 欧美精品电影在线播放| 欧美色爱综合网| 91国在线观看| 91免费看`日韩一区二区| 豆国产96在线|亚洲| 国产高清不卡二三区| 精油按摩中文字幕久久| 免费成人在线网站| 免费人成黄页网站在线一区二区| 五月婷婷激情综合| 亚洲一区二区三区爽爽爽爽爽| 一区二区三区在线视频播放| 中文字幕中文字幕一区二区| 日本一区免费视频| 国产精品嫩草影院com| 中文字幕乱码日本亚洲一区二区 | 欧美日韩三级视频| 在线免费不卡视频| 欧美乱妇20p| 欧美一级一区二区| 日韩欧美高清dvd碟片| 日韩精品影音先锋| 久久夜色精品一区| 国产片一区二区三区| 国产精品污污网站在线观看| 中文字幕在线不卡一区| 亚洲美女精品一区| 亚洲第一福利视频在线| 日本亚洲天堂网| 久久国产生活片100| 国产.欧美.日韩| 成人h动漫精品一区二区| 91丨九色丨蝌蚪丨老版| 99久久精品国产网站| 欧美亚洲动漫精品| 精品精品欲导航| 国产拍欧美日韩视频二区| 亚洲天天做日日做天天谢日日欢| 亚洲小说春色综合另类电影| 日韩专区中文字幕一区二区| 精油按摩中文字幕久久| 成人免费精品视频| 欧美午夜一区二区三区| 久久综合久久鬼色中文字| 综合久久给合久久狠狠狠97色| 午夜激情久久久| 国产成人综合精品三级| 欧美日韩一区国产| 亚洲国产精品t66y| 日本人妖一区二区| 99亚偷拍自图区亚洲| 欧美一区三区四区| 中文字幕日本乱码精品影院| 天天色综合天天| 成人动漫视频在线| 欧美成人精品3d动漫h| 亚洲激情校园春色| 国产精品99久久久|