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

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

?? duxiem1ka.c

?? 讀寫Mifare One卡, 說明:此例程為一個(gè)塊的讀寫操作
?? C
?? 第 1 頁 / 共 3 頁
字號:
        for(i=0;i<4;i++)rxbuff[6]^=rxbuff[i];
	if(rxbuff[2]==0)
           if(rxbuff[4]==rxbuff[6])
		CardStatus=0x01;

}

/*--------------------------------------------------------------------
 FUNCTION: Read_Card,讀指定塊數(shù)據(jù)
 INPUT:	   uchar BlockNo,uchar *CardDataBuf
 OUTPUT:   16byte CardData,1byte CardStatus
--------------------------------------------------------------------*/
/**************************************************
四、	讀指定塊數(shù)據(jù)
;command:3C 04 01 66 00(絕對塊號) 00 BCC 0D
**************************************************/
void Read_Card(uchar BlockNo_,uchar *CardDataBuf_)
{	uchar i;
	uchar txbuff[8];
	uchar rxbuff[22];
	CardStatus=0;
	txbuff[0]=0x3C;
	txbuff[1]=0x04;
	txbuff[2]=0x01;
	txbuff[3]=0x66;
	txbuff[4]=BlockNo_;
	txbuff[5]=0x00;
        txbuff[6]=0;
	for(i=0;i<6;i++)txbuff[6]^=txbuff[i];
	txbuff[7]=0x0D;
	for(i=0;i<8;i++)
	{
		UART_PutByte(txbuff[i]);
	}
//;--------------------------------------------------------------------
//; Right: 3C 12 00 DATA0~DATA15 BCC 0D
//; Error: 3C 01 FF(錯(cuò)誤返回代碼) BCC 0D
//;--------------------------------------------------------------------
//;;;;;;
	for(i=0;i<21;i++)
	{
		rxbuff[i]=UART_GetByte();
                if(rxbuff[0]!=0x3C)i=0;
                if(rxbuff[i]==0x0D)break;
	}
	rxbuff[21]=0;
	for(i=0;i<19;i++)
		rxbuff[21]^=rxbuff[i];
	if(rxbuff[19]==rxbuff[21])
	  if(rxbuff[1]==0x12)	//成功取卡中的值
	  {	CardStatus=0x01;
		for(i=0;i<16;i++)
			*CardDataBuf_++=rxbuff[3+i];	//取卡數(shù)據(jù)
	  }

}

/*--------------------------------------------------------------------
 FUNCTION: Write_Card,向指定塊寫數(shù)據(jù)
 INPUT:	   uchar BlockNo,uchar *CardDataBuf
 OUTPUT:   1byte CardStatus
--------------------------------------------------------------------*/
/**************************************************
五、	向指定塊寫數(shù)據(jù)
command:3C 13 01 67 00(絕對塊號) DATA0~DATA15 BCC 0D
***************************************************/
void Write_Card(uchar BlockNo_,uchar *CardDataBuf_)
{
	uchar i;

	uchar txbuff[23];
	uchar rxbuff[7];
        //i=BlockNo_;
        //i=*CardDataBuf_;
	CardStatus=0;
	txbuff[0]=0x3C;
	txbuff[1]=0x13;
	txbuff[2]=0x01;
	txbuff[3]=0x67;
        txbuff[4]=BlockNo_;
	txbuff[4]=BlockNo_;			//block
	for(i=0;i<16;i++)
		txbuff[5+i]=*CardDataBuf_++;	//待寫數(shù)據(jù)
        txbuff[21]=0;
	for(i=0;i<21;i++)
                txbuff[21]^=txbuff[i]; //BCC
	txbuff[22]=0x0D;
	for(i=0;i<23;i++)
	{
		UART_PutByte(txbuff[i]);
	}
//;--------------------------------------------------------------------
//;Write_Card return
//; Right: 3C  02 00 00 BCC 0D
//; Error: 3C 01 FF(錯(cuò)誤返回代碼) BCC 0D
//;--------------------------------------------------------------------
//;;;;;;
	for(i=0;i<7;i++)
	{
		rxbuff[i]=UART_GetByte();
//                if(rxbuff[0]!=0x3C)i=0;
		if(rxbuff[i]==0x0D)break;
	}
        rxbuff[6]=0;
        for(i=0;i<4;i++)
                 rxbuff[6]^=rxbuff[i];
        if(rxbuff[6]==rxbuff[4])
                 CardStatus=0x01;

}
//==Write_Card end==

/*--------------------------------------------------------------------
 FUNCTION: TurnOff_Card,關(guān)卡
 INPUT:
 OUTPUT:   CardStatus
--------------------------------------------------------------------*/
/**************************************************
八、	關(guān)卡,關(guān)掉的M1卡片,這個(gè)命令不僅僅是關(guān)卡,還讓讀卡電路恢復(fù)到主動(dòng)尋卡狀態(tài)
command:3C 04 01 68 00 00 51 0D
**************************************************/

void 	TurnOff_Card(void)
{	uchar i;
	uchar txbuff[8];
	uchar rxbuff[7];
	CardStatus=0;
	txbuff[0]=0x3C;
	txbuff[1]=0x04;
	txbuff[2]=0x01;
	txbuff[3]=0x68;
	txbuff[4]=0x00;
	txbuff[5]=0x00;
        txbuff[6]=0x51;
        txbuff[7]=0x0D;
	for(i=0;i<8;i++)
		UART_PutByte(txbuff[i]);
//;--------------------------------------------------------------------
//; Right: 3C 02 00 00 3E 0D
//; Error: 3C 01 FF (錯(cuò)誤返回代碼)BCC 0D
//;--------------------------------------------------------------------
//;;;;;;
	for(i=0;i<6;i++)
	{
		rxbuff[i]=UART_GetByte();
                if(rxbuff[0]!=0x3C)i=0;
		if(rxbuff[i]==0x0D)break;
	}
        rxbuff[7]=0;
        for(i=0;i<4;i++)rxbuff[7]^=rxbuff[i];
        if(rxbuff[7]==rxbuff[4])CardStatus=0x01;

}

/*--------------------------------------------------------------------
 FUNCTION: SetRes,如果該step失敗,將tmpResult中該步對應(yīng)位調(diào)整為0,操作成功則不做改變
 INPUT:	   CardStatus(step succed equal 0x01)
 OUTPUT:   tmpResult
--------------------------------------------------------------------*/
void SetRes(uchar RES,uchar NUM)
{
        uchar temp1,temp2;
        if(RES==0)     //如果SETP操作失敗(完成標(biāo)記字節(jié)為零),調(diào)整tmpResult中對應(yīng)該位為0態(tài)
         {
	   temp1=0xFF>>NUM;
           temp2=0xFF<<9-NUM;
           temp1=temp1|temp2;
	   tmpResult=temp1&tmpResult;
	}

}
/*--------------------------------------------------------------------
 FUNCTION: display() ;操作成功步對應(yīng)位綠燈亮;操作失敗步對應(yīng)位紅燈亮
 INPUT:	   tmpResult
 OUTPUT:   P1 AND P3.5 OR P3.7
--------------------------------------------------------------------*/
void display(uchar DispData)
{	P1=DispData;		//操作成功步對應(yīng)位亮
	GREEN_LINE=0;   //綠燈亮
	delay10ms(20);
	GREEN_LINE=1;   //綠燈滅
	P1=~DispData&0xfc;      //操作失敗步對應(yīng)位亮
	RED_LINE=0;	//紅燈亮
	delay10ms(30);
	RED_LINE=1;	//紅燈滅
}

/*--------------------------------------------------------------------
 FUNCTION: led_cyc_on()
 INPUT:
 OUTPUT:
--------------------------------------------------------------------*/
//void led_cyc_on(void)
//{
  //  uchar i,Ddata=0x80;
  //  P1=0x00;
//	GREEN_LINE =1;
//	RED_LINE=1;
//	delay10ms(10);
//	GREEN_LINE=0;
//	for(i=0;i<8;i++)
//	{
//
//	    P1=_cror_(Ddata,i);
	//	delay10ms(10);

//	}
/*	GREEN_LINE=1;
	RED_LINE=0;
	Ddata=0x01;
	for(i=0;i<8;i++)
	{

	    P1=_crol_(Ddata,i);
		delay10ms(20);

	}*/
//	GREEN_LINE =1;
//	RED_LINE=1;
//}

//**************************************************
void wangdianshezhi(uchar *CardNo)
   {
     uchar CardBlockNo,i;
	 //uchar data CardNo[4];
	 uchar CardDataBuf[16];
	 uchar data CardBlockKey[6];
     uchar BlockKeyAorB=0;//A套密碼
	 for(i=0;i<6;i++) CardBlockKey[i]=0xff;
	 //for(i=0;i<4;i++) CardNo[i]=i+1;

      //讀塊4
jixudukuai4:
 
          CardBlockNo=0x04;
      	  Psd_Verify(CardBlockKey,BlockKeyAorB,CardBlockNo,CardNo);
          if (CardStatus)
		    {
            CardBlockNo=0x04;
	        Read_Card(CardBlockNo,CardDataBuf);
			//for (i=0;i<16;i++)
		       //sen(CardDataBuf[i]);
		       //sen(CardDataBuf[0]);
		       //sen(CardDataBuf[1]);
            };
		  if (CardStatus) 
 		        {
 			      writertc(wangdiangaodizhi,CardDataBuf[0]);
				  writertc(wangdiandidizhi,CardDataBuf[1]);
				 // sen(readrtc(wangdiangaodizhi));
				 // sen(readrtc(wangdiandidizhi));
		    	}
             else
			    goto jixudukuai4;

   }


void wangdianpanduan(uchar *CardNo)
   {
     uchar   BlockNo,CardBlockNo,i;
	 //uchar data CardNo[4];
 	 uchar CardDataBuf[16];
	 uchar data CardBlockKey[6];
     uchar BlockKeyAorB=0;//A套密碼
     bit douweiling;
	 for(i=0;i<6;i++) CardBlockKey[i]=0xff;
	 //for(i=0;i<4;i++) CardNo[i]=i+1;
     //讀取第4塊   
          CardBlockNo=0x04;
      	  Psd_Verify(CardBlockKey,BlockKeyAorB,CardBlockNo,CardNo);
	      Read_Card(CardBlockNo,CardDataBuf);
          
	 //如果是注冊用戶則讀取第C塊
		 if (CardDataBuf[0]==readrtc(wangdiangaodizhi) && CardDataBuf[1]==readrtc(wangdiandidizhi))  //如果是啟動(dòng)卡
		     {
			    //讀取第C塊
                CardBlockNo=0x0c;
      	        Psd_Verify(CardBlockKey,BlockKeyAorB,CardBlockNo,CardNo);
                Read_Card(CardBlockNo,CardDataBuf);
                //如果內(nèi)容為16個(gè) 0 則 寫數(shù)據(jù) ,播放可以通過聲音 
				douweiling=1;
                for(i=0;i<16;i++)
				   {
				    if ( CardDataBuf[i]!=0)
					   	douweiling=0;
				   };
                if (douweiling==1)
				   {
				   //如果內(nèi)容為16個(gè) 0 則 寫數(shù)據(jù) ,播放可以通過聲音 
				   BlockNo=0x0c;
                   CardDataBuf[2]=readrtc(0x08);     //月
                   CardDataBuf[3]=readrtc(0x07);     //日
                   CardDataBuf[4]=readrtc(0x04);     //時(shí)
                   CardDataBuf[5]=readrtc(0x02);     //分
                   CardDataBuf[6]=0x00;     //00
                   CardDataBuf[7]=0x10;     //10
                   CardDataBuf[15]=0x02;     //02



				     
				   Write_Card(BlockNo,CardDataBuf);

                    Read_Card(CardBlockNo,CardDataBuf);
             
				    for (i=0;i<16;i++)
				        sen(CardDataBuf[i]);
                   sen(0x30);

				   };
	            //如果內(nèi)容不為 0 則  嘀  嘀  嘀 響3聲;
                if (douweiling==0)
				   {
				   //如果內(nèi)容不為 0 則  嘀  嘀  嘀 響3聲;
                  // CardBlockNo=0x0c;
      	          // Psd_Verify(CardBlockKey,BlockKeyAorB,CardBlockNo,CardNo);
			      // for(i=0;i<16;i++)
				   //  CardDataBuf[i]=0x00;
				  // Write_Card(CardBlockNo,CardDataBuf);
			       //for(i=0;i<16;i++)
				    //  CardDataBuf[i]=0x03;

                  // Read_Card(CardBlockNo,CardDataBuf);
				  // for (i=0;i<16;i++)
				    // sen(CardDataBuf[i]);
                     sen(0x33);

				   };
			 }   
            else	 //如果是非注冊用戶 則響  5 聲;
			 {
                 //響  5 聲
			     sen(0x35);
			 };
	 
   }



//************************************************8
void main(void)
{
	uchar i,j,zhilingma;
	uchar data CardNo[4],CardBlockKey[6];
	uchar idata CardDataBuf[16];
	bit qidongzhuangtai;
	uchar CardBlockNo=02; //默認(rèn)塊06(0-63)
    uchar BlockKeyAorB=0;//A套密碼
    uchar shezhiriqishijian[6];
	uchar xtshijian[6];
	Init_UART();
    PCON = 0x00;   //SMOD=0
     TMOD = 0x20;   //Timer1:Mode2
     TH1  = 0xfd;   //9600Baud, 11.059M
     TL1  = 0xfd;
     SCON = 0x50;   //mode 1,8bit UART ,SM2=0,REN=1
     TR1  = 1;

	for(i=0;i<6;i++) CardBlockKey[i]=0xff;
	for(i=0;i<4;i++) CardNo[i]=i+1;
    beep=0;
    //writertc(qidongzhuangtaidizhi,0x30);
 	//判斷是否進(jìn)行過啟動(dòng)操作
     sen(0x30);
      //while(1);

//	GREEN_LINE=0;		  //green led on
//	delay10ms(50);
//	GREEN_LINE=1;		  //led off

//	RED_LINE=0;			  //red led on
//	delay10ms(50);
//	RED_LINE=1;			  //led off
            
//	display(tmpResult);
//	led_cyc_on();        

    while(1)
    {
 
 start: 
       RI=0;
	   zhilingma=0;
       sen(0xfd);
	   while(!RI);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
9191成人精品久久| 欧美综合视频在线观看| 2020国产精品自拍| 韩国毛片一区二区三区| 国产亚洲美州欧州综合国| 成人污视频在线观看| 亚洲欧美日韩国产手机在线| 欧美亚洲禁片免费| 蜜臀精品一区二区三区在线观看| 亚洲欧美电影院| 欧美色老头old∨ideo| 日韩中文字幕不卡| 久久综合九色综合欧美98| 国产福利一区二区| 一区二区三区在线免费播放| 欧美高清一级片在线| 国产在线视频不卡二| 国产精品色眯眯| 欧美亚洲一区三区| 久久69国产一区二区蜜臀| 国产精品久久看| 欧美一区二区成人| 成人视屏免费看| 丝袜诱惑制服诱惑色一区在线观看 | 91视频在线观看| 午夜精品一区二区三区免费视频| 2021国产精品久久精品| 在线免费观看成人短视频| 看片的网站亚洲| 亚洲欧美日韩国产一区二区三区| 欧美变态tickle挠乳网站| 91在线视频在线| 黄一区二区三区| 亚洲成人在线网站| 亚洲国产精品成人综合色在线婷婷| 欧美亚洲国产bt| 国产成人精品网址| 午夜欧美在线一二页| 中国色在线观看另类| 欧美图片一区二区三区| 国产另类ts人妖一区二区| 亚洲bt欧美bt精品777| 国产精品福利一区二区三区| 日韩欧美的一区二区| 色哟哟在线观看一区二区三区| 狠狠色丁香久久婷婷综合丁香| 一区二区三区高清不卡| 欧美激情综合在线| 91精品国产综合久久久久久久久久| 91一区一区三区| 色哦色哦哦色天天综合| 国产二区国产一区在线观看| 热久久久久久久| 亚洲一区在线电影| 日韩码欧中文字| 欧美激情自拍偷拍| 久久久亚洲精华液精华液精华液| 欧美精品一级二级三级| 色播五月激情综合网| www.日韩在线| 成人av在线资源网站| 国产一区二三区| 久久超碰97人人做人人爱| 爽好久久久欧美精品| 亚洲国产另类精品专区| 综合久久久久久久| 亚洲欧美一区二区三区国产精品| 国产精品美女www爽爽爽| 国产女人水真多18毛片18精品视频| 精品伦理精品一区| 精品福利av导航| 精品国产乱码久久久久久闺蜜| 欧美一区二区播放| 欧美精品xxxxbbbb| 日韩免费高清电影| 日韩欧美www| 精品国产123| 国产日韩影视精品| 国产精品久久久久aaaa樱花| 国产精品久久久一本精品 | 99精品视频在线观看免费| 91精品国产手机| 日韩欧美一级二级三级久久久| 欧美喷水一区二区| 日韩一区二区三区av| 欧美xxx久久| 国产欧美精品一区| 中文字幕日韩欧美一区二区三区| 中文字幕中文字幕在线一区| 中文字幕一区不卡| 亚洲最大成人网4388xx| 亚洲h在线观看| 激情综合色播激情啊| 国产在线播放一区| 99久久精品99国产精品| 欧美艳星brazzers| 精品国产一区二区国模嫣然| 国产日韩亚洲欧美综合| 亚洲欧美色图小说| 日韩 欧美一区二区三区| 国产综合成人久久大片91| 成人福利视频网站| 精品污污网站免费看| 日韩欧美国产三级| 国产精品久久久久影院老司| 亚洲国产精品视频| 国产麻豆视频一区| 在线免费观看一区| 337p日本欧洲亚洲大胆精品| 国产精品嫩草影院av蜜臀| 亚洲综合无码一区二区| 久久99精品国产| 色悠悠亚洲一区二区| 这里只有精品电影| 中文字幕日韩欧美一区二区三区| 亚洲国产精品久久久久婷婷884| 极品少妇一区二区三区精品视频 | 性久久久久久久久| 国产在线精品一区二区不卡了| www.欧美日韩国产在线| 91麻豆精品国产91| 1区2区3区国产精品| 蜜臀av国产精品久久久久| 99久久伊人精品| 精品国精品自拍自在线| 亚洲美女一区二区三区| 国产一区二区调教| 精品视频123区在线观看| 国产欧美精品一区二区色综合朱莉| 亚洲风情在线资源站| 成人黄色在线视频| 日韩精品一区二区三区swag| 亚洲影院久久精品| 国产超碰在线一区| 日韩一区二区电影| 国产精品1024久久| 777精品伊人久久久久大香线蕉| 国产精品三级久久久久三级| 精品在线观看免费| 欧美精选一区二区| 一区二区三区小说| av不卡在线播放| 久久久无码精品亚洲日韩按摩| 日韩国产高清在线| 91久久精品日日躁夜夜躁欧美| 久久久久国产成人精品亚洲午夜| 日韩av在线发布| 欧美日韩精品一区二区在线播放| 中文字幕中文字幕一区二区| 成人综合在线网站| 26uuu精品一区二区三区四区在线| 亚洲国产一区二区三区青草影视| 91在线视频免费91| 中文在线一区二区| 成人性色生活片免费看爆迷你毛片| 日韩一区二区三区电影在线观看| 五月婷婷色综合| 精品视频色一区| 亚洲国产精品综合小说图片区| 在线影院国内精品| 一区二区在线电影| 91福利在线播放| 亚洲视频每日更新| 欧美在线视频日韩| 亚洲成人激情社区| 欧美日韩国产大片| 日韩影院在线观看| 日韩视频一区在线观看| 麻豆一区二区三| 欧美精品一区二区久久婷婷 | 激情欧美一区二区三区在线观看| 欧美一区二区三区婷婷月色| 天天操天天色综合| 日韩三级中文字幕| 久久99精品久久久久久久久久久久 | 久久久久久久久久美女| 国产成人aaa| 椎名由奈av一区二区三区| 色综合天天综合在线视频| 一级日本不卡的影视| 欧美日韩精品欧美日韩精品一综合| 亚洲一区二区3| 日韩精品一区二区三区在线播放| 国产精品自在在线| 亚洲男人电影天堂| 欧美在线free| 另类调教123区| 国产精品久久久久久久第一福利| 99r精品视频| 日本视频免费一区| 久久久久国产成人精品亚洲午夜| 99麻豆久久久国产精品免费优播| 一区二区三区在线视频播放| 欧美老人xxxx18| 国产精品小仙女| 一个色妞综合视频在线观看| 欧美一区二区女人| 成人污视频在线观看| 亚洲v中文字幕| 国产调教视频一区|