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

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

?? siemens_ic_sle4442.c

?? Siemens加密接觸式IC卡Sle4442的C51源代碼
?? C
字號:
#define  Siemens
//#include <at89x52.h>
#include "head.h"
uchar code Password_Bass[3]={0xad,0x6e,0x46};

//void nop(void);
void SendComm(uchar a,uchar b,uchar c);                      //發(fā)送命令
void ReadMode(uchar idata *pt,uchar count);
uchar ResetCard(void);
void BreakOperate(void);
void StartComm(void);
void StopComm(void);
uchar ReadByte(void);
void WriteByte(uchar ch);
void Delay10us(void);
void Delay5us(void);
void ReadMainMem(uchar addr,uchar idata *pt,uchar count);
void ReadSafeMemory(uchar *p);
void WriteSafeMemory(uchar Address,uchar Data);
uchar VerifyPassword(uchar *p);
void CalculatePassword(uchar *p);
void Process(uchar i);

uchar ResetCard(void)
{
    uchar temp;
    Delay5us();    
    card_rest = 0;        
    card_clk = 0;     
    card_dat  = 1;    
    Delay5us();  
    Delay10us();
    Delay10us();    
    card_rest = 1;
    Delay5us();
    card_clk = 1;
    Delay10us();
    Delay10us();
    Delay10us();
    Delay10us();
    card_clk = 0;
    Delay5us();
    card_rest = 0;
    Delay10us();
    temp=ReadByte();       
    if(temp==0xa2)
	{
      temp = ReadByte();
      temp = ReadByte();
      temp = ReadByte();	  
	  card_clk = 0;         
      Delay5us();        
      card_dat  = 1;         
      Delay5us();               
      card_clk = 0;         
      Delay5us();
	  return Siemens_IC_Sel4442;
	}
	else
	{	  
	  return ATMEL_IC_24C01;
	}
}
//-------------------------------------------------------------------------------------
// 函數(shù)名稱: BreakOperate
// 函數(shù)功能: 停止操作
//-----------------------------------------------------------------------------------
void BreakOperate(void)
{
     card_clk = 0;
     card_rest = 0;
     card_dat  = 0;
     Delay5us();
     card_rest = 1;
     card_dat  = 1;
     Delay5us();
     card_rest = 0;
     Delay5us();
     //CT_PW = 1;
}
//------------------------------------------------------------------------------------
// 函數(shù)名稱: StartComm()
// 函數(shù)功能: 啟動I2C總線子程序
//-----------------------------------------------------------------------------------
void StartComm(void)
{
    card_clk = 0;
    card_dat  = 1;
    Delay5us();
    card_clk = 1;
    Delay5us();
    card_dat  = 0;
    Delay5us();
}
//-------------------------------------------------------------------------------
// 函數(shù)名稱: StopComm()
// 函數(shù)功能: 停止I2C總線數(shù)據(jù)傳送子程序
//-----------------------------------------------------------------------------
void StopComm(void)
{
    card_clk = 0;
    card_dat  = 0;
    Delay5us();
    card_clk = 1;        //CLK: H
    Delay5us();
    card_dat  = 1;        //IO : H
    Delay10us();
}
//-----------------------------------------------------------------------------------
// 函數(shù)名稱: ReadByte
// 返回接收的數(shù)據(jù)
// 函數(shù)功能: 接收一字節(jié)子程序
//-----------------------------------------------------------------------------------
uchar ReadByte(void)
{
    uchar i,ch;
    ch = 0;
    for (i = 0; i != 8; i++)
    {
        card_clk = 0;
        ch = ch >> 1;           //從低位讀起 
        if((uchar)card_dat)
            ch |= 0x80;
		else ch &= 0x7f;
        Delay5us();
        card_clk = 1;
        Delay5us();
    }
	Delay10us();
	Delay10us();
    return ch;
}
//----------------------------------------------------------------------------------
// 函數(shù)名稱: WriteByte
// 入口參數(shù): ch
// 函數(shù)功能: 發(fā)送一個字節(jié)
//------------------------------------------------------------------------------------
void WriteByte(uchar ch)
{
    uchar i;
    for(i = 8; i > 0; i--)
    {
        card_clk = 0;
        card_dat = (bit)(ch & 0x01);
        Delay5us();
        card_clk = 1;
        Delay10us();
        ch = ch >> 1;                 //右移一位
    }
}
//-------------------------------------------------------------------------------------
// 函數(shù)名稱: ReadMode
// 入口參數(shù): pt地址指針,指向接收緩沖區(qū),count要接收的數(shù)據(jù)個數(shù)
// 函數(shù)功能: 接收n位數(shù)據(jù)子程序
//----------------------------------------------------------------------------------
void ReadMode(uchar idata *pt,uchar count)
{
    //card_clk=0;
	//StartComm(); 
    //Delay5us();
    do
    {
        *pt = ReadByte();    //讀入一個字節(jié)
        pt++;                //指針加一
    }while(--count);         //計數(shù)器減一,判斷
}
//------------------------------------------------------------------------
// 延時10us子程序,根據(jù)系統(tǒng)時鐘需要調(diào)整
//------------------------------------------------------------------------
void Delay10us(void)
{
     feed_dog();;;;;
}
//------------------------------------------------------------------------
// 延時5us子程序,根據(jù)系統(tǒng)時鐘需要調(diào)整
//------------------------------------------------------------------------
void Delay5us(void)
{
     feed_dog();
}
//******************處理過程**************//
void Process(uchar i)
{
    //card_dat = 1;
    card_clk = 0;
	Delay5us();
    card_dat = 0;
	Delay5us();
    for(;i>0;i--)
 	{
     card_clk=1;
	 Delay5us();
	 card_clk = 0;
	 Delay5us();
	}
    card_dat = 1;
	Delay5us();
    card_clk=1;
	Delay5us();
	card_clk = 0;
    Delay5us();
}
//---------------------------------------------------------------------------------
// 函數(shù)名稱: ReadMainMem()
// 入口參數(shù):  addr: IC存儲區(qū)地址;
//            pt: 地址指針,指向接收緩沖區(qū);
//            count: 接收數(shù)據(jù)的個數(shù)
// 函數(shù)功能: 讀存儲區(qū)
//-----------------------------------------------------------------------------------
void ReadMainMem(uchar addr,uchar idata *pt,uchar count)
{
    SendComm(RMM_COMM,addr,0xff);
    ReadMode(pt,count);
    BreakOperate();
}
void WriteMainMem(uchar addr,uchar idata *pt)
{
    SendComm(WMM_COMM,addr,*pt);
    Process(0xff);
}
//---------------------------------------------------------------------------------
// 函數(shù)名稱: VerifyPassword()校驗密碼
// 入口參數(shù):  
//            p: 地址指針,指向密碼存儲區(qū);
// 出口參數(shù):  0:失敗 1:成功
// 函數(shù)功能: 讀存儲區(qū)
//-----------------------------------------------------------------------------------
uchar VerifyPassword(uchar *p)
{
 uchar temp[4];//暫存4字節(jié)保護密碼;
 uchar i;
 ResetCard();
 ReadSafeMemory(temp);//讀安全代碼以取得錯誤計數(shù)器
 if((temp[0]&0x07)!=0)
 	{if((temp[0]&0x07)==0x07)  i=0x06;
	 if((temp[0]&0x07)==0x06)  i=0x04;
     if((temp[0]&0x07)==0x04)  i=0x00;
	 WriteSafeMemory(0,i);
	 for(i=1;i<4;i++,p++)
	 {
       SendComm(0x33,i,*p);
	   Process(0x02);
     }	     
     WriteSafeMemory(0,0xff);
	 ReadSafeMemory(temp);
	 if((temp[0]&0x07)==0x07) return(0x1);	 
 }
 return(0);
}

/**************讀安全存儲器************/
void ReadSafeMemory(uchar *p)
{
     uchar i;
     SendComm(0x31,0xff,0xff);
     for(i=0;i<4;i++)
 	 {*p=ReadByte();
	  p++;}
}

/*************寫安全存儲器***************/
void WriteSafeMemory(uchar Address,uchar Data)
{
    SendComm(0x39,Address,Data);//Address=0,1,2,3
	Process(0xff);
}
//-----------------------------------------------------------------------------
// 函數(shù)名稱: SendComm()
// 入口參數(shù):  a: 命令字;
//            b: 地址;
//            c: 數(shù)據(jù)
// 函數(shù)功能: 發(fā)送一個完整的命令
//-------------------------------------------------------------------------------
void SendComm(uchar a,uchar b,uchar c)
{
    StartComm();          //開始發(fā)送命令
    WriteByte(a);          //a: 發(fā)命令字
    WriteByte(b);          //b: 發(fā)地址
    WriteByte(c);          //c: 發(fā)數(shù)據(jù)
    StopComm();           //結(jié)束發(fā)送命令
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99精品国产麻豆不卡| 成人精品免费视频| 国产九色精品成人porny| 99久久综合国产精品| 欧美一区二区在线视频| 亚洲欧美综合色| 精品一区二区三区免费播放| 99国产麻豆精品| 精品av综合导航| 天堂精品中文字幕在线| 91在线观看地址| 欧美国产综合一区二区| 免费成人av在线| 欧美日韩中字一区| 亚洲女与黑人做爰| 丁香一区二区三区| 精品国产在天天线2019| 亚洲高清不卡在线观看| 91在线国产观看| 中文字幕一区av| 成人免费高清视频在线观看| 精品理论电影在线| 免费看黄色91| 91精品国产色综合久久久蜜香臀| 一区二区三区在线免费视频 | 精品88久久久久88久久久| 一二三区精品福利视频| 99精品久久99久久久久| 国产精品毛片高清在线完整版| 精品在线播放免费| 2020国产精品自拍| 国产乱码一区二区三区| 欧美精品一区二区三区四区| 美国毛片一区二区三区| 欧美一级一级性生活免费录像| 亚洲一级电影视频| 欧美日韩免费一区二区三区视频| 亚洲综合成人在线| 欧美色窝79yyyycom| 亚洲一区二区三区爽爽爽爽爽| 色婷婷狠狠综合| 亚洲成人动漫在线免费观看| 91麻豆精品91久久久久久清纯| 丝袜诱惑制服诱惑色一区在线观看| 欧美视频一区在线| 青青草一区二区三区| 精品国产乱码久久久久久免费| 精品一区二区免费看| 久久色.com| 91日韩一区二区三区| 亚洲国产一区二区a毛片| 欧美猛男超大videosgay| 蜜臀国产一区二区三区在线播放| 欧美变态tickle挠乳网站| 国产精品自在在线| 亚洲欧美色综合| 日韩一区二区三区av| 丁香一区二区三区| 亚洲国产美国国产综合一区二区| 日韩欧美国产系列| 成人国产电影网| 亚洲电影在线免费观看| 日韩精品一区二| 99re热视频这里只精品| 三级欧美韩日大片在线看| 国产色产综合产在线视频| 欧美性三三影院| 国产一区二区按摩在线观看| 亚洲日韩欧美一区二区在线| 91精品国产麻豆| 北岛玲一区二区三区四区| 午夜精品免费在线| 国产精品免费久久| 欧美一区二区在线免费观看| 成人激情午夜影院| 免费在线看一区| 国产精品美女www爽爽爽| 9191成人精品久久| 99久久精品免费看| 自拍偷拍国产亚洲| 欧美主播一区二区三区美女| 蜜桃av噜噜一区| 国产精品理论片| 91精品国产综合久久久蜜臀粉嫩 | 国产日韩欧美精品综合| 色狠狠综合天天综合综合| 日本不卡123| 亚洲精品videosex极品| 久久久久久久久久久久久女国产乱| 色激情天天射综合网| 成人性生交大片免费| 美女视频黄a大片欧美| 一区二区三区色| 国产精品视频免费看| 2023国产精品视频| 91精品国模一区二区三区| 日本高清不卡视频| 成人av网在线| 国产一区二区不卡| 九九热在线视频观看这里只有精品| 一区二区三区日本| 欧美韩国日本一区| 久久久久久久电影| 久久这里只有精品6| 欧美一区二区视频在线观看2020| 在线精品国精品国产尤物884a| 丁香激情综合五月| 国产精品一区二区果冻传媒| 精品一区免费av| 久久99国产精品久久99果冻传媒| 天堂一区二区在线免费观看| 夜色激情一区二区| 一区二区三区 在线观看视频| 亚洲色图欧洲色图婷婷| 中文字幕亚洲区| 中文字幕亚洲精品在线观看| 欧美高清在线一区| 最新不卡av在线| 一区二区三区四区在线| 亚洲精品综合在线| 一区二区三区 在线观看视频| 亚洲在线免费播放| 午夜免费久久看| 免费高清不卡av| 国产精品资源在线看| 丁香另类激情小说| 色呦呦日韩精品| 欧美美女网站色| 日韩美女在线视频| 久久日韩粉嫩一区二区三区| 欧美激情综合五月色丁香| 国产精品国产三级国产普通话三级| 日本一区二区三级电影在线观看| 国产视频一区在线观看| 亚洲人成7777| 日韩国产一区二| 寂寞少妇一区二区三区| 成人av资源站| 欧美偷拍一区二区| 日韩视频不卡中文| 中文久久乱码一区二区| 亚洲码国产岛国毛片在线| 亚洲成av人**亚洲成av**| 青青草国产精品亚洲专区无| 国产成人av自拍| 色综合久久久网| 国产一区二区三区免费看| 久久综合视频网| 欧美精品日韩精品| 久久综合久久综合亚洲| 91色porny蝌蚪| 亚洲一二三四区不卡| 自拍偷拍国产精品| 日韩视频免费观看高清完整版在线观看 | 麻豆一区二区99久久久久| 99久久综合精品| 丝瓜av网站精品一区二区 | 成人高清视频在线观看| 欧美顶级少妇做爰| 一区二区三区小说| 欧美日韩国产一级片| 亚洲欧洲一区二区三区| 国产精品主播直播| 欧美国产一区二区在线观看| 麻豆91精品视频| 亚洲国产精品黑人久久久| 国产麻豆欧美日韩一区| 久久精子c满五个校花| 国产真实精品久久二三区| 久久综合999| 成人av中文字幕| 日韩国产欧美三级| 精品国产免费视频| 91在线你懂得| 国产精品一区一区| 成人高清免费在线播放| 激情综合色播激情啊| 亚洲福利一区二区三区| 国产精品久久综合| 欧美日韩一区二区三区四区| 国产一区中文字幕| 欧美日韩另类一区| 亚洲欧美在线另类| 国产一区欧美一区| 欧美美女网站色| 尤物av一区二区| av电影在线不卡| 国产亚洲欧美激情| 老司机免费视频一区二区| 亚洲小说春色综合另类电影| 一区二区三区在线观看视频| 日日夜夜一区二区| 欧美性高清videossexo| 亚洲欧美日韩国产综合| 成人91在线观看| 中文字幕中文字幕一区| 国v精品久久久网| 国产三级精品三级在线专区| 久久精品99国产精品日本| 欧美不卡123|