日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

STM32系列(HAL库)——F103C8T6通过MFRC522、RFID射频卡、门禁卡模块读取卡片ID

發(fā)布時(shí)間:2023/12/20 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32系列(HAL库)——F103C8T6通过MFRC522、RFID射频卡、门禁卡模块读取卡片ID 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.軟件準(zhǔn)備

(1)編程平臺(tái):Keil5

(2)CubeMX

(3)XCOM(串口調(diào)試助手)

2.硬件準(zhǔn)備

(1)MFRC-522模塊

(2)F1的板子,本例使用經(jīng)典F103C8T6

(3)ST-link?下載器

(4)USB-TTL模塊

(5)杜邦線若干

?3.模塊資料

(1)模塊簡(jiǎn)介:

????????MFRC522-AN模塊采用 Philips MFRC522芯片設(shè)計(jì)讀卡電路,使用方便,成本低廉,適用于設(shè)備開發(fā)、讀卡器開發(fā)等高級(jí)應(yīng)用的用戶、需要進(jìn)行射頻卡終端設(shè)計(jì)/生產(chǎn)的用戶。本模塊可直接裝入各種讀卡器模具。模塊采用電壓為3.3V,通過(guò)SPI接口簡(jiǎn)單的幾條線就可以直接與用戶任何CPU主板相連接通信,可以保證模塊穩(wěn)定可靠的工作、讀卡距離遠(yuǎn)。

(2)關(guān)于RC255芯片:

????????MFRC522是應(yīng)用于13.56MHz非接觸式通信中高集成度的讀寫卡芯片,“三表”應(yīng)用推出的一款低電壓、低成本、體積小的非接觸式讀寫卡芯片,是智能儀表和便攜式手持設(shè)備研發(fā)的較好選擇。MFRC522利用了先進(jìn)的調(diào)制和解調(diào)概念,集成了在13.56MHz下所有類型的被動(dòng)非接觸式通信方式和協(xié)議。支持14443A兼容應(yīng)答器信號(hào)。數(shù)字部分處理ISO014443A幀和錯(cuò)誤檢測(cè)。此外,還支持快速 CRYPTO1加密算法,用語(yǔ)驗(yàn)證MIFARE系列產(chǎn)品。MFRC522支持 MIFARE系列更高速的非接觸式通信,雙向數(shù)據(jù)傳輸速率高達(dá)424 kbit/s 。作為13.56MHz高集成度讀寫卡系列芯片家族的新成員,MRC522與MFRC500和MFRC530有不少相似之處,同時(shí)也具備許多特點(diǎn)和差異。它與主機(jī)間通信采用SPi模式,有利于減少連線,縮小PCB板體積,降低成本。

(3)模塊參數(shù):

①工作電壓:3.3v

②工作頻率:13.56MHz

③支持卡類型:mifare1 s50、mifare1s70、 mifareUltraLight、mifare Pro, mifare Desfire

④通信方式:SPI協(xié)議

⑤環(huán)境工作溫度:-20°C——80°C

4.CubeMX配置

(1)芯片選擇

?(2)配置RCC、SYS、時(shí)鐘樹

配置RCC

配置SYS

配置時(shí)鐘樹

(3)配置GPIO?

?(4)配置串口1

?(5)配置SPI2

?(6)設(shè)置路徑、生成代碼工程

5、Keil5代碼

(1)勾選Use?MicroLIB

(2)創(chuàng)建RC522.c和RC522.h文件

(3)添加上述的RC522.c文件進(jìn)工程

——————上述兩步參考之前系列教學(xué)步驟,在此不再贅述(點(diǎn)擊跳轉(zhuǎn))

(4)RC522.c和5C522.h代碼

RC522.c

(以下部分僅讀卡功能,更多功能請(qǐng)?jiān)谖恼陆Y(jié)尾下載源碼查看)

#include "rc522.h" #include "stdio.h"//SPI2_SCK PB13 //SPI2_MISO PB14 //SPI2_MOSI PB15 //RCC522_RST(CE) PB9 //RCC522_NSS(SDA) PB8 //RCC522_IRQ 懸空uint8_t UID[5],Temp[4]; uint8_t RF_Buffer[18]; uint8_t Password_Buffer[6]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; // Mifare One 缺省密碼void RC522_Init(void) {RC522_SDA_LOW;HAL_SPI_Transmit(&hspi2, (uint8_t *)0xaa, sizeof((uint8_t *)0xaa), 0xFF);//啟動(dòng)傳輸 RC522_SDA_HIGH;HAL_Delay(50);PcdReset();//復(fù)位RC522讀卡器HAL_Delay(10);PcdReset();//復(fù)位RC522讀卡器HAL_Delay(10);PcdAntennaOff();//關(guān)閉天線發(fā)射 HAL_Delay(10); PcdAntennaOn();//開啟天線發(fā)射printf("RFID-MFRC522 初始化完成\r\nFindCard Starting ...\r\n"); //測(cè)試引腳初始化完成 }void delay_ns(uint32_t ns) {uint32_t i;for(i=0;i<ns;i++){__nop();__nop();__nop();} }//SPIx 讀寫一個(gè)字節(jié) //TxData:要寫入的字節(jié) //返回值:讀取到的字節(jié) //***************************************************************************/char RC522_ReadWriteByte(uint8_t TxData) { while (SPI_CHECK_FLAG(SPI2->SR,((uint16_t)0x0002)) == RESET) //檢查指定的SPI標(biāo)志位設(shè)置與否:發(fā)送緩存空標(biāo)志位{;} SPI2->DR=TxData; //通過(guò)外設(shè)SPIx發(fā)送一個(gè)數(shù)據(jù)while (SPI_CHECK_FLAG(SPI2->SR,((uint16_t)0x0001)) == RESET) //檢查指定的SPI標(biāo)志位設(shè)置與否:接受緩存非空標(biāo)志位{} return SPI2->DR; //返回通過(guò)SPIx最近接收的數(shù)據(jù) }//******************************************************************/ //功 能:讀RC522寄存器 //參數(shù)說(shuō)明:Address[IN]:寄存器地址 //返 回:讀出的值 //******************************************************************/ unsigned char ReadRawRC(unsigned char Address) {uint8_t ucAddr;uint8_t ucResult=0;RC522_SDA_LOW;HAL_Delay(10);ucAddr = ((Address<<1)&0x7E)|0x80;RC522_ReadWriteByte(ucAddr);HAL_Delay(10);ucResult=RC522_ReadWriteByte(0);HAL_Delay(10);RC522_SDA_HIGH;return ucResult; }//******************************************************************/ //功 能:寫RC522寄存器 //參數(shù)說(shuō)明:Address[IN]:寄存器地址 // value[IN]:寫入的值 //******************************************************************/ void WriteRawRC(unsigned char Address, unsigned char value) {uint8_t ucAddr;RC522_SDA_LOW;HAL_Delay(10);ucAddr = ((Address<<1)&0x7E) ;RC522_ReadWriteByte(ucAddr);HAL_Delay(10);RC522_ReadWriteByte(value);HAL_Delay(10);RC522_SDA_HIGH; }//******************************************************************/ //功 能:置RC522寄存器位 //參數(shù)說(shuō)明:reg[IN]:寄存器地址 // mask[IN]:置位值 //******************************************************************/ void SetBitMask(unsigned char reg,unsigned char mask) {char tmp = 0x0 ;tmp = ReadRawRC(reg)| mask;WriteRawRC(reg,tmp | mask); // set bit mask }//******************************************************************/ //功 能:清RC522寄存器位 //參數(shù)說(shuō)明:reg[IN]:寄存器地址 // mask[IN]:清位值 //******************************************************************/ void ClearBitMask(unsigned char reg,unsigned char mask) {char tmp = 0x0 ;tmp = ReadRawRC(reg)&(~mask);WriteRawRC(reg, tmp) ; // clear bit mask } //******************************************************************/ //功 能:復(fù)位RC522 //返 回: 成功返回MI_OK //******************************************************************/ char PcdReset() {RC522_RST_HIGH; ;delay_ns(10) ;RC522_RST_LOW; ;delay_ns(100) ;RC522_RST_HIGH; ;delay_ns(10) ;WriteRawRC(CommandReg,PCD_RESETPHASE);delay_ns(100) ;WriteRawRC(ModeReg,0x3D) ;//定義發(fā)送和接收常用模式 和Mifare卡通訊,CRC初始值0x6363WriteRawRC(TReloadRegL,30) ;//16位定時(shí)器低位 30WriteRawRC(TReloadRegH,0) ;//16位定時(shí)器高位WriteRawRC(TModeReg,0x8D) ;//定義內(nèi)部定時(shí)器的設(shè)置WriteRawRC(TPrescalerReg,0x3E) ;//設(shè)置定時(shí)器分頻系數(shù) WriteRawRC(TxASKReg,0x40) ;//調(diào)制發(fā)送信號(hào)為100%ASKreturn MI_OK ; } // //設(shè)置RC522的工作方式 // char MF522PcdConfigISOType(unsigned char type) {if (type == 'A') //ISO14443_A{ClearBitMask(Status2Reg,0x08); //狀態(tài)2寄存器 WriteRawRC(ModeReg,0x3D); //3F //和Mifare卡通訊,CRC初始值0x6363 WriteRawRC(RxSelReg,0x86); //84 選擇內(nèi)部接收器設(shè)置,內(nèi)部模擬部分調(diào)制信號(hào),發(fā)送數(shù)據(jù)后,延遲6個(gè)位時(shí)鐘,接收 WriteRawRC(RFCfgReg,0x7F); //4F 配置接收器 48dB最大增益 WriteRawRC(TReloadRegL,30); //tmoLength);TReloadVal = 'h6a =tmoLength(dec) WriteRawRC(TReloadRegH,0); //實(shí)際值是OXD3E 這部分主要是設(shè)置定時(shí)器寄存器 WriteRawRC(TModeReg,0x8D);WriteRawRC(TPrescalerReg,0x3E);delay_ns(1000);PcdAntennaOn();} else {return 0xFE;} return MI_OK; } //******************************************************************/ //開啟天線發(fā)射 //每次啟動(dòng)或關(guān)閉天險(xiǎn)發(fā)射之間應(yīng)至少有1ms的間隔 //******************************************************************/ void PcdAntennaOn() {unsigned char i;WriteRawRC(TxASKReg,0x40) ;HAL_Delay(1);i = ReadRawRC(TxControlReg) ;if(!(i&0x03))SetBitMask(TxControlReg, 0x03);i=ReadRawRC(TxASKReg) ; }//******************************************************************/ //關(guān)閉天線發(fā)射 //******************************************************************/ void PcdAntennaOff() {ClearBitMask(TxControlReg, 0x03); }//******************************************************************/ //功 能:通過(guò)RC522和ISO14443卡通訊 //參數(shù)說(shuō)明:Command[IN]:RC522命令字 // pInData[IN]:通過(guò)RC522發(fā)送到卡片的數(shù)據(jù) // InLenByte[IN]:發(fā)送數(shù)據(jù)的字節(jié)長(zhǎng)度 // pOutData[OUT]:接收到的卡片返回?cái)?shù)據(jù) // *pOutLenBit[OUT]:返回?cái)?shù)據(jù)的位長(zhǎng)度 //******************************************************************/ char PcdComMF522(unsigned char Command ,unsigned char *pInData , unsigned char InLenByte,unsigned char *pOutData, unsigned int *pOutLenBit ) {char status = MI_ERR ;unsigned char irqEn = 0x00 ;unsigned char waitFor = 0x00 ;unsigned char lastBits ;unsigned char n ;unsigned int i ;switch (Command){case PCD_AUTHENT:irqEn = 0x12 ;waitFor = 0x10 ;break ;case PCD_TRANSCEIVE:irqEn = 0x77 ;waitFor = 0x30 ;break ;default:break ;}WriteRawRC(ComIEnReg,irqEn|0x80) ; //ClearBitMask(ComIrqReg,0x80) ;WriteRawRC(CommandReg,PCD_IDLE) ;SetBitMask(FIFOLevelReg,0x80) ; // 清空FIFO for(i=0; i<InLenByte; i++)WriteRawRC(FIFODataReg,pInData[i]) ; // 數(shù)據(jù)寫入FIFO WriteRawRC(CommandReg, Command) ; // 命令寫入命令寄存器if(Command == PCD_TRANSCEIVE)SetBitMask(BitFramingReg,0x80) ; // 開始發(fā)送 i = 6000 ; //根據(jù)時(shí)鐘頻率調(diào)整,操作M1卡最大等待時(shí)間25msdo {n = ReadRawRC(ComIrqReg) ;i-- ;}while((i!=0)&&!(n&0x01)&&!(n&waitFor)) ;ClearBitMask(BitFramingReg,0x80) ;if(i!=0){if(!(ReadRawRC(ErrorReg)&0x1B)){status = MI_OK ;if (n&irqEn&0x01)status = MI_NOTAGERR ;if(Command==PCD_TRANSCEIVE){n = ReadRawRC(FIFOLevelReg) ;lastBits = ReadRawRC(ControlReg)&0x07 ;if(lastBits)*pOutLenBit = (n-1)*8 + lastBits ;else*pOutLenBit = n*8 ;if(n==0)n = 1 ;if(n>MAXRLEN)n = MAXRLEN ;for (i=0; i<n; i++)pOutData[i] = ReadRawRC(FIFODataReg) ; }}elsestatus = MI_ERR ; }SetBitMask(ControlReg,0x80) ;// stop timer nowWriteRawRC(CommandReg,PCD_IDLE) ; return status; }//******************************************************************/ //功 能:尋卡 / //參數(shù)說(shuō)明: req_code[IN]:尋卡方式 / // 0x52 = 尋感應(yīng)區(qū)內(nèi)所有符合14443A標(biāo)準(zhǔn)的卡 / // 0x26 = 尋未進(jìn)入休眠狀態(tài)的卡 / // pTagType[OUT]:卡片類型代碼 / // 0x4400 = Mifare_UltraLight / // 0x0400 = Mifare_One(S50) / // 0x0200 = Mifare_One(S70) / // 0x0800 = Mifare_Pro(X) / // 0x4403 = Mifare_DESFire / //返 回: 成功返回MI_OK / //******************************************************************/ char PcdRequest(unsigned char req_code,unsigned char *pTagType) {char status ; unsigned int unLen ;unsigned char ucComMF522Buf[MAXRLEN] ; ClearBitMask(Status2Reg,0x08) ;//清除MRCrypto1on,要用軟件清零WriteRawRC(BitFramingReg,0x07) ;//startsend=0,rxalign=0,在FIFO中存放的位置,TXlastbit=7SetBitMask(TxControlReg,0x03) ;//TX2rfen=1,TX1RFen=1,傳遞調(diào)制的13.56MHZ的載波信號(hào)ucComMF522Buf[0] = req_code ;status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,1,ucComMF522Buf,&unLen );if ((status == MI_OK) && (unLen == 0x10)){ *pTagType = ucComMF522Buf[0] ;*(pTagType+1) = ucComMF522Buf[1] ;}elsestatus = MI_ERR ;return status ; }//******************************************************************/ //功 能:防沖撞 / //參數(shù)說(shuō)明: pSnr[OUT]:卡片序列號(hào),4字節(jié) / //返 回: 成功返回MI_OK / //******************************************************************/ char PcdAnticoll(unsigned char *pSnr) {char status;unsigned char i,snr_check=0;unsigned int unLen;unsigned char ucComMF522Buf[MAXRLEN]; ClearBitMask(Status2Reg,0x08);//清除MRCrypto1on,要用軟件清零WriteRawRC(BitFramingReg,0x00);//表示最后一個(gè)字節(jié)所有位都發(fā)送ClearBitMask(CollReg,0x80);//CollRegCollReg0沖突結(jié)束后沖突位被置零ucComMF522Buf[0] = PICC_ANTICOLL1;ucComMF522Buf[1] = 0x20;status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,2,ucComMF522Buf,&unLen);if (status == MI_OK){for (i=0; i<4; i++){ *(pSnr+i) = ucComMF522Buf[i];snr_check ^= ucComMF522Buf[i];}if (snr_check != ucComMF522Buf[i]){ status = MI_ERR; }}SetBitMask(CollReg,0x80);//CollRegCollReg 在106kbps良好的防沖突情況下該位置1return status; }//============================================================================== //讀取卡的類型 //讀取卡的ID號(hào) //============================================================================== void ReaderCard(void) {char temp_value;if(PcdRequest(PICC_REQALL,Temp)==MI_OK) //選卡{if(Temp[0]==0x04&&Temp[1]==0x00) printf("\r\nMFOne-S50\r\n");else if(Temp[0]==0x02&&Temp[1]==0x00)printf("MFOne-S70");else if(Temp[0]==0x44&&Temp[1]==0x00)printf("MF-UltraLight");else if(Temp[0]==0x08&&Temp[1]==0x00)printf("MF-Pro");else if(Temp[0]==0x44&&Temp[1]==0x03)printf("MF Desire");elseprintf("Unknown");if(PcdAnticoll(UID)==MI_OK) //防沖撞{ printf("Card Id is:");/* 獲取卡值 */printf("%d%d%d%d\r\n",UID[0],UID[1],UID[2],UID[3]); temp_value = ((UID[0]>>4)*10+(UID[0]&0x0f));switch(temp_value){case 63 : printf("管理員:%d 驗(yàn)證通過(guò)!\r\n",temp_value); break;default : printf("無(wú)效卡:%d 驗(yàn)證失敗!\r\n",temp_value); break;} }} }

RC522.h

#ifndef __RC522_H #define __RC522_H #include "spi.h" #include "main.h" #include "usart.h"//------------------------------- RC522引腳定義 ------------------------------//#define RC522_SDA_HIGH HAL_GPIO_WritePin(GPIOB, RC522_SDA_Pin, GPIO_PIN_SET); #define RC522_SDA_LOW HAL_GPIO_WritePin(GPIOB, RC522_SDA_Pin, GPIO_PIN_RESET);#define RC522_RST_HIGH HAL_GPIO_WritePin(GPIOB, RC522_RST_Pin, GPIO_PIN_SET); #define RC522_RST_LOW HAL_GPIO_WritePin(GPIOB, RC522_RST_Pin, GPIO_PIN_RESET);#define MAXRLEN 18 #define MIN_STRENGTH 228 //******************************************************************/ // RC522 FIFO長(zhǎng)度定義 / //******************************************************************/ #define DEF_FIFO_LENGTH 64 //FIFO size=64byte//******************************************************************/ // RC522命令字 / //******************************************************************/ #define PCD_IDLE 0x00 //取消當(dāng)前命令 #define PCD_AUTHENT 0x0E //驗(yàn)證密鑰 #define PCD_RECEIVE 0x08 //接收數(shù)據(jù) #define PCD_TRANSMIT 0x04 //發(fā)送數(shù)據(jù) #define PCD_TRANSCEIVE 0x0C //發(fā)送并接收數(shù)據(jù) #define PCD_RESETPHASE 0x0F //復(fù)位 #define PCD_CALCCRC 0x03 //CRC計(jì)算//******************************************************************/ // Mifare_One卡片命令字 */ //******************************************************************/ #define PICC_REQIDL 0x26 //尋天線區(qū)內(nèi)未進(jìn)入休眠狀態(tài) #define PICC_REQALL 0x52 //尋天線區(qū)內(nèi)全部卡 #define PICC_ANTICOLL1 0x93 //防沖撞 #define PICC_ANTICOLL2 0x95 //防沖撞 #define PICC_AUTHENT1A 0x60 //驗(yàn)證A密鑰 #define PICC_AUTHENT1B 0x61 //驗(yàn)證B密鑰 #define PICC_READ 0x30 //讀塊 #define PICC_WRITE 0xA0 //寫塊 #define PICC_DECREMENT 0xC0 //扣款 #define PICC_INCREMENT 0xC1 //充值 #define PICC_RESTORE 0xC2 //調(diào)塊數(shù)據(jù)到緩沖區(qū) #define PICC_TRANSFER 0xB0 //保存緩沖區(qū)中數(shù)據(jù) #define PICC_HALT 0x50 //休眠//******************************************************************/ // MF522寄存器定義 / //******************************************************************/ // PAGE 0 #define RFU00 0x00 #define CommandReg 0x01 #define ComIEnReg 0x02 #define DivlEnReg 0x03 #define ComIrqReg 0x04 #define DivIrqReg 0x05 #define ErrorReg 0x06 #define Status1Reg 0x07 #define Status2Reg 0x08 #define FIFODataReg 0x09 #define FIFOLevelReg 0x0A #define WaterLevelReg 0x0B #define ControlReg 0x0C #define BitFramingReg 0x0D #define CollReg 0x0E #define RFU0F 0x0F // PAGE 1 #define RFU10 0x10 #define ModeReg 0x11 #define TxModeReg 0x12 #define RxModeReg 0x13 #define TxControlReg 0x14 #define TxASKReg 0x15 #define TxSelReg 0x16 #define RxSelReg 0x17 #define RxThresholdReg 0x18 #define DemodReg 0x19 #define RFU1A 0x1A #define RFU1B 0x1B #define MifareReg 0x1C #define RFU1D 0x1D #define RFU1E 0x1E #define SerialSpeedReg 0x1F // PAGE 2 #define RFU20 0x20 #define CRCResultRegM 0x21 #define CRCResultRegL 0x22 #define RFU23 0x23 #define ModWidthReg 0x24 #define RFU25 0x25 #define RFCfgReg 0x26 #define GsNReg 0x27 #define CWGsCfgReg 0x28 #define ModGsCfgReg 0x29 #define TModeReg 0x2A #define TPrescalerReg 0x2B #define TReloadRegH 0x2C #define TReloadRegL 0x2D #define TCounterValueRegH 0x2E #define TCounterValueRegL 0x2F // PAGE 3 #define RFU30 0x30 #define TestSel1Reg 0x31 #define TestSel2Reg 0x32 #define TestPinEnReg 0x33 #define TestPinValueReg 0x34 #define TestBusReg 0x35 #define AutoTestReg 0x36 #define VersionReg 0x37 #define AnalogTestReg 0x38 #define TestDAC1Reg 0x39 #define TestDAC2Reg 0x3A #define TestADCReg 0x3B #define RFU3C 0x3C #define RFU3D 0x3D #define RFU3E 0x3E #define RFU3F 0x3F//******************************************************************/ // RC522通訊返回錯(cuò)誤代碼 / //******************************************************************/ #define MI_ERR 0xFE //#define MI_ERR //(-2)// Mifare Error Codes // Each function returns a status value, which corresponds to the // mifare error codes. #define MI_OK 0 #define MI_CHK_OK 0 #define MI_CRC_ZERO 0 #define MI_CRC_NOTZERO 1 #define MI_NOTAGERR 0xFF #define MI_CHK_FAILED 0xFF #define MI_CRCERR 0xFE #define MI_CHK_COMPERR 0xFE #define MI_EMPTY 0xFD #define MI_AUTHERR 0xFC #define MI_PARITYERR 0xFB #define MI_CODEERR 0xFA #define MI_SERNRERR 0xF8 #define MI_KEYERR 0xF7 #define MI_NOTAUTHERR 0xF6 #define MI_BITCOUNTERR 0xF5 #define MI_BYTECOUNTERR 0xF4 #define MI_IDLE 0xF3 #define MI_TRANSERR 0xF2 #define MI_WRITEERR 0xF1 #define MI_INCRERR 0xF0 #define MI_DECRERR 0xEF #define MI_READERR 0xEE #define MI_OVFLERR 0xED #define MI_POLLING 0xEC #define MI_FRAMINGERR 0xEB #define MI_ACCESSERR 0xEA #define MI_UNKNOWN_COMMAND 0xE9 #define MI_COLLERR 0xE8 #define MI_RESETERR 0xE7 #define MI_INITERR 0xE7 #define MI_INTERFACEERR 0xE7 #define MI_ACCESSTIMEOUT 0xE5 #define MI_NOBITWISEANTICOLL 0xE4 #define MI_QUIT 0xE2 #define MI_RECBUF_OVERFLOW 0xCF #define MI_SENDBYTENR 0xCE #define MI_SENDBUF_OVERFLOW 0xCC #define MI_BAUDRATE_NOT_SUPPORTED 0xCB #define MI_SAME_BAUDRATE_REQUIRED 0xCA #define MI_WRONG_PARAMETER_VALUE 0xC5 #define MI_BREAK 0x9E #define MI_NY_IMPLEMENTED 0x9D #define MI_NO_MFRC 0x9C #define MI_MFRC_NOTAUTH 0x9B #define MI_WRONG_DES_MODE 0x9A #define MI_HOST_AUTH_FAILED 0x99 #define MI_WRONG_LOAD_MODE 0x97 #define MI_WRONG_DESKEY 0x96 #define MI_MKLOAD_FAILED 0x95 #define MI_FIFOERR 0x94 #define MI_WRONG_ADDR 0x93 #define MI_DESKEYLOAD_FAILED 0x92 #define MI_WRONG_SEL_CNT 0x8F #define MI_RC531_WRONG_READVALUE 0x8E //LI ADDED 09-4-24 #define MI_WRONG_TEST_MODE 0x8C #define MI_TEST_FAILED 0x8B #define MI_TOC_ERROR 0x8A #define MI_COMM_ABORT 0x89 #define MI_INVALID_BASE 0x88 #define MI_MFRC_RESET 0x87 #define MI_WRONG_VALUE 0x86 #define MI_VALERR 0x85//******************************************************************/ // 函數(shù)定義 / //******************************************************************/ void RC522_Init(void); char RC522_ReadWriteByte(uint8_t TxData); void delay_ns(uint32_t ns);char PcdHalt(void) ; char PcdReset(void) ; void PcdAntennaOn(void) ; void PcdAntennaOff(void) ; char PcdRequest(unsigned char req_code,unsigned char *pTagType) ;char PcdAnticoll(unsigned char *pSnr) ; char PcdSelect(unsigned char *pSnr) ; char PcdAuthState(unsigned char auth_mode,unsigned char addr,unsigned char *pKey,unsigned char *pSnr) ; char PcdRead(unsigned char addr,unsigned char *pData) ; char PcdWrite(unsigned char addr,unsigned char *pData) ; char PcdValue(unsigned char dd_mode,unsigned char addr,unsigned char *pValue); char PcdBakValue(unsigned char sourceaddr, unsigned char goaladdr) ; char MF522PcdConfigISOType(unsigned char type); char PcdComMF522(unsigned char Command, unsigned char *pInData, unsigned char InLenByte,unsigned char *pOutData, unsigned int *pOutLenBit ) ; void CalulateCRC(unsigned char *pIndata,unsigned char len,unsigned char *pOutData ) ; void WriteRawRC(unsigned char Address,unsigned char value) ; unsigned char ReadRawRC(unsigned char Address) ; void SetBitMask(unsigned char reg,unsigned char mask) ; void ClearBitMask(unsigned char reg,unsigned char mask) ; char Read_Block(unsigned char Block,unsigned char *Buf) ; char Write_Block(unsigned char Block) ; void PcdAntennaTestOn(void) ;extern char KK[8] ; // 數(shù)據(jù)加密密鑰 extern unsigned char RF_Buffer[18] ; // 射頻卡數(shù)據(jù)緩沖區(qū) extern unsigned char UID[5] ; extern unsigned char Password_Buffer[6] ; extern void Uart1_SendByte(uint32_t ch); // extern void Des_Encrypt(char* In, char* K,char* Out) ; // extern void Des_Decrypt(char* In, char* K,char* Out) ; extern unsigned char des_on ; // DES加密標(biāo)志void ReaderCard(void);#endif

(5)usrat.c代碼添加

/* USER CODE BEGIN 0 */ #include "stdio.h" /* USER CODE END 0 *//* USER CODE BEGIN 1 */ /********************************************************* * *重定義 fputc 函數(shù) * *********************************************************/ int fputc(int ch,FILE *f) {HAL_UART_Transmit (&huart1 ,(uint8_t *)&ch,1,HAL_MAX_DELAY );return ch; } /* USER CODE END 1 */

(6)main函數(shù)

int main(void) {/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_SPI2_Init();MX_USART1_UART_Init();/* USER CODE BEGIN 2 */RC522_Init();/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){HAL_Delay(1000);ReaderCard();/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}/* USER CODE END 3 */ }

6.接線圖及效果

?本例程源碼下載:點(diǎn)擊跳轉(zhuǎn)?

下一篇:MFRC522模塊使用鏈表結(jié)構(gòu)存儲(chǔ)數(shù)據(jù)

總結(jié)

以上是生活随笔為你收集整理的STM32系列(HAL库)——F103C8T6通过MFRC522、RFID射频卡、门禁卡模块读取卡片ID的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

99视频久久| 久久综合桃花 | 欧美最猛性xxxxx亚洲精品 | 77国产精品 | 精品美女在线视频 | 黄色的网站免费看 | 欧美在线一二区 | 国产精品毛片一区二区在线 | 亚洲更新最快 | 97品白浆高清久久久久久 | 91自拍成人| 中文乱码视频在线观看 | 99re8这里有精品热视频免费 | 欧美性色综合网站 | 亚洲91精品 | 一区二区三区 中文字幕 | 久久精品79国产精品 | 欧美日本不卡 | 天天射天天色天天干 | 国产亚洲视频中文字幕视频 | 91理论片午午伦夜理片久久 | 高清av中文字幕 | 久久久精品国产一区二区电影四季 | 午夜精品一区二区三区视频免费看 | 狠狠干狠狠色 | 碰碰影院| 成人福利在线观看 | 九九热精品国产 | 激情五月婷婷综合网 | 国产精品一码二码三码在线 | 96久久| 中文字幕观看在线 | 亚洲视频 一区 | 精品国产a | 永久av免费在线观看 | 久久精品福利 | 丁香综合五月 | 69av网| 又爽又黄在线观看 | 欧美久久久久久久久久久久久 | av在线影视 | 国产一区二区久久 | 五月激情六月丁香 | 在线观看视频国产一区 | 最新久久免费视频 | 国产精品久久久久久久午夜 | 国产精品高潮久久av | 成人黄色资源 | 99热在线国产 | 正在播放国产精品 | 国产日产高清dvd碟片 | 国产精品入口麻豆www | 天天干,天天射,天天操,天天摸 | 国产福利精品一区二区 | 成年人在线观看免费视频 | 狠狠狠干狠狠 | 999久久久久久久久久久 | 五月激情综合婷婷 | 久久精品一区二区三区中文字幕 | 欧美最新大片在线看 | japanesefreesex中国少妇 | 综合色综合色 | 天天艹| 性色va| 成人亚洲欧美 | 不卡的av | 激情综合五月 | av免费在线观看1 | 亚洲一二三在线 | 狠色在线 | 亚洲午夜电影网 | 人人搞人人干 | 精品国产乱码 | 91香蕉视频黄| 天天久久综合 | 亚洲视频电影在线 | 亚洲国产天堂av | www,黄视频| 超碰在线cao | 国产美女无遮挡永久免费 | 国产婷婷vvvv激情久 | 激情av资源网 | 99热精品国产一区二区在线观看 | 国产精品一区二区吃奶在线观看 | 91九色视频观看 | 黄色免费观看视频 | 久久精品男人的天堂 | 中文字幕 国产视频 | a视频在线观看 | av超碰免费在线 | 国产精品久久99 | 久精品视频免费观看2 | 国产999精品久久久 免费a网站 | 91福利视频免费 | 精品欧美一区二区在线观看 | 欧美人体xx | 激情www| 成年人在线免费看片 | 日本在线观看视频一区 | 精品91在线 | 97视频在线观看视频免费视频 | 久久久久精 | 成年人在线免费看片 | 欧美大片在线看免费观看 | 免费久久久| 午夜精品久久久久久久久久 | 人人精久 | 五月婷婷影院 | 精品国产理论片 | 国产成人免费在线观看 | 色婷婷六月 | 超碰在线人人爱 | 91网站免费观看 | 久草久草视频 | 国产 日韩 欧美 自拍 | 国产高清黄 | 成人羞羞免费 | 久草视频视频在线播放 | 欧美福利网站 | 91在线观| 日韩中文字幕免费电影 | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 日本性生活免费看 | 精品无人国产偷自产在线 | 婷婷色社区 | 狠狠激情中文字幕 | 在线观看精品国产 | 国产一区欧美日韩 | 91免费试看| 在线播放日韩av | 国产 欧美 日产久久 | 国产又粗又硬又爽的视频 | 免费不卡中文字幕视频 | 亚洲精品成人 | 黄色视屏免费在线观看 | 色婷婷av在线| 91精品久久久久久综合乱菊 | 欧洲精品一区二区 | av看片在线| av免费看网站 | 91精品视屏 | 午夜av在线| 国产v欧美| 性色av一区二区三区在线观看 | 色多多视频在线观看 | 日韩免费高清在线观看 | 黄色一集片 | 一本色道久久综合亚洲二区三区 | 久久久999免费视频 日韩网站在线 | 国产成人久久精品一区二区三区 | 久久久久久久久久久免费视频 | 精品视频一区在线 | 在线色视频小说 | 国产 日韩 欧美 自拍 | 国产精品一区二区在线观看免费 | 国产精品第一视频 | 久久影院一区 | 韩国一区视频 | av成人黄色 | 国产成人精品免费在线观看 | 天天夜夜亚洲 | 亚洲一区日韩 | 久久视频在线观看免费 | 国产精品久久久久aaaa九色 | 九九九九九国产 | 国产日韩av在线 | 337p西西人体大胆瓣开下部 | 中文字幕在线观看三区 | 色噜噜狠狠色综合中国 | 成人免费亚洲 | 欧美一级电影在线观看 | 国产一区二区三区免费视频 | 欧美日韩精品在线观看视频 | 久久免费视频一区 | 有码中文字幕在线观看 | 久久中文字幕视频 | 久久黄色片 | 久久国产精品99国产精 | 99久久精品日本一区二区免费 | 黄网站色| 88av网站 | 久久玖 | 国产在线不卡精品 | 国产精品午夜免费福利视频 | 四川妇女搡bbbb搡bbbb搡 | 色综合激情久久 | 国产无遮挡又黄又爽馒头漫画 | 国产精品不卡av | 亚洲视频网站在线观看 | 久久久久久久久久久久久9999 | 国产精品av一区二区 | 欧美亚洲免费在线一区 | 成 人 黄 色 视频播放1 | 婷婷亚洲五月色综合 | 免费观看成人网 | www.狠狠操.com | 草久久影院| 国产在线播放一区 | 久久免费精品视频 | 91精品国产99久久久久久久 | 欧美成人基地 | 久草网首页 | 97日日碰人人模人人澡分享吧 | 伊人五月婷 | 成人国产在线 | 亚洲五月婷 | 久久视频精品 | 97超碰国产精品女人人人爽 | 日韩成人邪恶影片 | avwww在线 | 91亚洲精品久久久蜜桃借种 | 亚洲 欧美 变态 国产 另类 | 福利一区二区三区四区 | 波多野结衣一区二区三区中文字幕 | 天天干天天操天天搞 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久久久免费电影 | 国产精品午夜av | 亚洲欧洲精品在线 | 在线视频精品 | 国产高清免费在线播放 | 成年一级片 | 96av在线| 高清不卡一区二区三区 | 国内小视频在线观看 | 国产视频资源在线观看 | 欧美极品少妇xbxb性爽爽视频 | 丁香五香天综合情 | 精品一区二区av | 久久99免费视频 | 狠狠狠狠狠狠干 | 99久久精品国 | 免费亚洲视频在线观看 | 五月宗合网 | 黄色小视频在线观看免费 | 成年人视频在线免费观看 | 天天艹天天干天天 | 久久免费福利视频 | 欧美不卡视频在线 | 麻豆传媒在线免费看 | 国产精品久久久久久久久久久杏吧 | 国产亚洲成人网 | 久久久久久久久久久久亚洲 | 极品嫩模被强到高潮呻吟91 | 日韩中文字幕91 | 国产成人久久精品亚洲 | 久久人人爽人人片av | 特级毛片网 | 国产专区视频 | 国产成人免费在线观看 | 日韩在线 一区二区 | 在线观看色网 | 免费看毛片在线 | 国产精品久久网 | 免费男女羞羞的视频网站中文字幕 | 成人av免费在线观看 | 久久艹艹 | 国产精品免费一区二区三区 | 国产精品一区二区av日韩在线 | 日韩av在线一区二区 | 国产精品毛片一区视频 | 亚洲精品国久久99热 | 在线国产激情视频 | 在线视频你懂得 | 国产69精品久久久久9999apgf | 国产精品视频最多的网站 | 国产精品乱码高清在线看 | 久草在线视频免赞 | 亚洲精品看片 | 日韩av在线网站 | 久久久久久蜜桃一区二区 | 中文字幕在线观看不卡 | 欧美日韩在线观看不卡 | 91精品久久久久久久91蜜桃 | 国产视频亚洲精品 | 黄网站app在线观看免费视频 | 免费看一级特黄a大片 | 成人黄色小说在线观看 | 国产91精品久久久久久 | 亚洲成av | 成人网在线免费视频 | 国产精品久久久av | www国产亚洲精品久久麻豆 | 欧美成人一二区 | a级一a一级在线观看 | 日韩区在线观看 | 久久久久久久久久久久久影院 | 91麻豆精品国产91久久久无需广告 | 亚洲欧美日韩国产一区二区 | 亚洲精品www | 日韩欧美在线一区二区 | 成人黄在线 | 国产免费资源 | 国产美女视频免费观看的网站 | 丰满少妇对白在线偷拍 | 九色在线| 久久一精品 | 人人射人人插 | 国产精品福利无圣光在线一区 | 欧美福利在线播放 | 五月天丁香视频 | 国产亚洲精品日韩在线tv黄 | 欧美激情综合五月 | 国产精品99久久久精品免费观看 | 午夜精品久久久久久久久久久久 | 国产品久精国精产拍 | 日韩精品视频免费在线观看 | 欧美视频日韩 | 成人资源在线观看 | 人人澡超碰碰97碰碰碰软件 | 99视频久 | 不卡的av在线播放 | aaa毛片视频 | 国产黄色观看 | 免费在线播放黄色 | 日韩欧美v | 六月天色婷婷 | 亚洲国产日韩一区 | 欧日韩在线视频 | 成人在线免费视频 | 日韩中字在线 | 国产高清av免费在线观看 | 精品91在线 | 久久成人视屏 | 日日夜夜天天综合 | 一区二区久久 | 久久国产精品99久久久久久丝袜 | 欧美日韩在线观看一区二区 | 69av视频在线观看 | 久久激情婷婷 | 五月天激情综合 | 奇米影视四色8888 | www.天天色.com | 亚洲国产操 | 国产婷婷精品av在线 | 91视频 - 114av| 国产精品亚洲成人 | 欧美日韩性视频在线 | 成人久久综合 | 久久精品人人做人人综合老师 | 婷婷六月中文字幕 | 最新成人在线 | 在线天堂中文www视软件 | 中文字幕在线观看日本 | 精品国产综合区久久久久久 | 精品理论片 | 欧美一区视频 | 日日夜日日干 | www.色午夜.com | 夜夜视频| 国产精品理论片在线观看 | 中文字幕在线影视资源 | 日韩深夜在线观看 | 欧美激情精品久久久久久变态 | 成人黄色电影在线观看 | 在线看黄色av | 欧美在线一级片 | 91刺激视频| 亚洲成人网在线 | 国产精品中文久久久久久久 | 亚洲国产精品久久久久 | 91看片在线看片 | 日韩伦理一区二区三区av在线 | 国产精品免费一区二区三区 | 色狠狠干| 丰满少妇久久久 | 欧美视频日韩视频 | 日韩超碰 | 久久综合狠狠综合久久狠狠色综合 | 国产精品久久久久永久免费看 | 97超级碰碰 | 精品国产免费看 | 亚洲国产精品一区二区久久hs | 视频在线播放国产 | 国产亚洲欧美日韩高清 | 韩日av在线 | 国产三级午夜理伦三级 | 中文字幕视频观看 | 91污污视频在线观看 | 99精品国产一区二区 | 欧美做受高潮1 | 97精品超碰一区二区三区 | 国产在线中文 | 亚洲精品久久在线 | www.天天射.com | 久久精品一二区 | 国产色网 | 99精品视频免费在线观看 | 色婷婷免费视频 | 久久成人毛片 | 精品久久影院 | 日韩欧美在线观看 | 亚洲国产一区在线观看 | 六月丁香婷婷网 | 国产一级片免费视频 | 色综合久久综合 | 国产精品9999久久久久仙踪林 | 久草网在线观看 | 天天综合色天天综合 | 亚洲视频一区二区三区在线观看 | 国产字幕在线播放 | 伊人婷婷网 | 91精品小视频 | 欧美一级专区免费大片 | 国产日产精品一区二区三区四区的观看方式 | 99精品欧美一区二区三区 | 精品综合久久久 | 91亚洲精品国偷拍自产在线观看 | 狠狠操夜夜操 | 特黄免费av | 国产一级黄 | 午夜精品视频在线 | av成人免费在线观看 | 揉bbb玩bbb少妇bbb | 在线 国产 亚洲 欧美 | 久热国产视频 | 四虎在线免费观看 | 91av在线播放 | 久久综合日| 福利视频导航网址 | 亚洲.www | 免费色视频| 一区二区三区四区在线免费观看 | 免费在线视频一区二区 | 国产日韩在线观看一区 | 麻豆视频在线播放 | 91精品国产乱码久久 | av免费试看| 91精品成人久久 | 国产黄色一级片在线 | 久99精品 | 日本韩国精品一区二区在线观看 | 久久99久久99精品免观看软件 | 91精品视频免费 | 九九激情视频 | 天天操天天舔天天爽 | 黄色软件视频大全免费下载 | 91.dizhi永久地址最新 | 久久五月情影视 | 精品国产视频在线观看 | 亚洲1区在线 | 美女视频a美女大全免费下载蜜臀 | 99久久久国产精品免费观看 | 亚洲精品国产精品国产 | 亚洲第一av在线播放 | 五月婷婷久草 | 黄色网www| 久久69精品 | 天天插伊人 | 超碰精品在线观看 | 国产高清无av久久 | 精品一区二三区 | 国产成人精品一区二区三区网站观看 | 国产99久久久国产精品 | 国际av在线 | 国产精品美女999 | 91综合久久一区二区 | 国产精品久久久久久一区二区 | 91精品国产九九九久久久亚洲 | 国产午夜精品一区二区三区 | www黄色av| 亚洲精品成人av在线 | 激情综合网五月 | 福利视频在线看 | 91九色视频国产 | 国产一级片观看 | 国产精品黑丝在线观看 | 狠狠婷婷 | 99精品视频免费 | 一区二区三区四区在线 | 日韩精品一区二区三区不卡 | 一区二区三区四区五区在线 | 久久精品免费电影 | 91麻豆精品国产91久久久使用方法 | 亚洲人av免费网站 | 国产一级大片免费看 | 一区二区在线影院 | 国产精品第54页 | 欧美 国产 视频 | 涩涩色亚洲一区 | 17婷婷久久www| 中文字幕日韩高清 | 亚洲精品乱码久久 | www.五月天色| 天天天天天天天操 | 欧美日韩有码 | 少妇高潮流白浆在线观看 | 久久久精品福利视频 | 亚洲狠狠丁香婷婷综合久久久 | 波多野结衣精品在线 | 国产精品69av | 中文字幕美女免费在线 | 久久er99热精品一区二区三区 | 久久精品电影网 | 97超碰人| 亚洲网站在线看 | 成人av在线看 | 一级a性色生活片久久毛片波多野 | 最近中文字幕完整高清 | 国产精品资源在线 | 在线免费av观看 | 国产高清专区 | 亚洲三级影院 | 国产性天天综合网 | 欧美日韩aaaa | 欧洲精品久久久久毛片完整版 | 玖玖玖在线 | 99精品国产一区二区三区麻豆 | 亚洲一区二区视频在线播放 | 国产精品18久久久久久久久 | 97超碰在线久草超碰在线观看 | 人人澡人人添人人爽一区二区 | av一本久道久久波多野结衣 | a国产精品 | 天天爽天天摸 | 色六月婷婷 | 中文字幕在线视频网站 | 久久国产日韩 | 亚洲四虎影院 | 黄色a级片在线观看 | 六月激情久久 | 日韩精品国产一区 | 久久免费毛片视频 | 一区二区三区影院 | 久久综合色播五月 | 日韩视频免费看 | 波多野结衣在线观看一区 | 日本天天操 | 久久中文字幕在线视频 | 又黄又爽又刺激的视频 | 国产成人一级电影 | 亚洲国产欧美在线人成大黄瓜 | 国产字幕在线观看 | 婷婷激情欧美 | 欧美一区二区精品在线 | 视频国产一区二区三区 | 久久艹在线观看 | 992tv人人草| 日韩在线视频在线观看 | 久草综合视频 | 久久99亚洲网美利坚合众国 | 日韩欧美在线一区 | 天天干天天操av | 99视频免费播放 | 91成人短视频在线观看 | 五月开心婷婷网 | 国产一级免费片 | 久久免费在线观看 | 亚洲一区二区三区四区精品 | 久久在线电影 | 丁香午夜| 国产中文a | 探花在线观看 | 手机在线永久免费观看av片 | 日日操日日插 | 五月激情片 | 亚洲精品午夜久久久久久久久久久 | 丝袜少妇在线 | 日韩av网页 | 亚洲精品一区二区三区高潮 | 日韩欧美精品在线观看视频 | 日本韩国精品一区二区在线观看 | 91九色蝌蚪视频网站 | 久久久午夜剧场 | 国产精品一区二区av麻豆 | av网站在线观看播放 | 国产3p视频 | 国产无吗一区二区三区在线欢 | 国产日韩av在线 | 午夜精品一区二区三区在线 | 在线免费性生活片 | 中文字幕中文字幕在线中文字幕三区 | 91新人在线观看 | 亚洲视频综合 | 婷婷在线视频观看 | 91九色porny在线 | 黄色小说免费在线观看 | 看污网站| 99久久精品久久久久久动态片 | 日韩二级毛片 | 九九九热精品 | avcom在线 | 国内精品二区 | 久久免费高清视频 | 久久人人射 | 人人超碰人人 | 久久精品毛片 | 欧美日韩视频在线一区 | 日本大片免费观看在线 | 丁香伊人网 | 亚洲精品玖玖玖av在线看 | 国产精品久久久 | 国产精成人品免费观看 | 亚州精品在线视频 | 2019中文字幕第一页 | 久久久精品国产一区二区电影四季 | 欧美色噜噜噜 | 日本黄色免费网站 | av电影在线不卡 | 日本不卡一区二区 | 不卡中文字幕av | 毛片激情永久免费 | 亚洲在线视频观看 | 欧美性生活免费看 | 91九色最新| 国产免费激情久久 | 成人免费在线视频观看 | 免费开视频| 国产无遮挡又黄又爽馒头漫画 | 婷婷视频在线观看 | 高清不卡一区二区在线 | 久久久久久久久久福利 | 欧美激情第一区 | 天天av资源 | 国产亚洲精品美女 | 国产成人在线免费观看 | 欧美日韩亚洲精品在线 | 一级免费片 | 永久免费看av | www99精品 | 在线日本看片免费人成视久网 | 欧洲成人av | 欧美激情精品久久久 | 日韩免费av在线 | 色综合天天狠狠 | 中文字幕色在线 | 日韩在线一区二区免费 | 成人丝袜| 欧美日韩性视频在线 | 精壮的侍卫呻吟h | 成片视频在线观看 | 亚洲精选在线 | 日韩色在线观看 | 99久热在线精品视频成人一区 | 中文字幕免费高清在线 | 一区二区三区四区影院 | 免费a级大片 | 美女天天操 | 区一区二区三在线观看 | 麻豆91小视频 | 91中文在线 | 国产第一页精品 | 在线观看国产区 | 婷婷色站 | 国产无吗一区二区三区在线欢 | 日韩在线观看中文 | 91精品国产电影 | 五月导航 | 国产99久久久欧美黑人 | 精品久久一区 | 日韩欧美一区二区在线观看 | 狠狠地操 | 97精品国产91久久久久久 | 久久久96| 97在线视频免费观看 | 日本精品视频免费观看 | zzijzzij日本成熟少妇 | 欧美日韩中文字幕综合视频 | 亚洲一区二区精品视频 | 91亚洲精品久久久蜜桃借种 | 久久精彩免费视频 | 久久艹免费 | 国产精品成人自产拍在线观看 | 最新av网址在线观看 | 日日干夜夜骑 | 天堂av免费 | 在线观看91精品国产网站 | 一级黄毛片| 国产精品1区2区3区 久久免费视频7 | 最新色视频 | 热九九精品 | 在线 高清 中文字幕 | 精品国产aⅴ麻豆 | 国产精品一区二区白浆 | 亚洲一区二区三区在线看 | 亚洲高清视频在线观看 | 成年人天堂com | 精品欧美一区二区三区久久久 | 国产亚洲在线 | 成人小视频在线 | 片网站| 五月天色综合 | 国产呻吟在线 | 91精品国产成 | 中文字幕av在线免费 | 久草观看 | 婷婷.com| 国产精品女人久久久 | 亚洲成人av在线电影 | 日日夜夜av | 涩涩伊人| 97精品欧美91久久久久久 | 日韩电影在线一区二区 | 91精品国产自产91精品 | av在线播放国产 | 亚洲精品成人 | 亚洲国产精品视频在线观看 | 久久精品美女视频网站 | 色婷婷电影 | 亚洲精品乱码久久久久久久久久 | 成人福利在线 | 三级性生活视频 | 国产精品久久一卡二卡 | www欧美色 | 亚洲黄色影院 | 天堂资源在线观看视频 | 久久视频这里有久久精品视频11 | 久草在线网址 | 激情网站免费观看 | 亚洲国产人午在线一二区 | 在线观看亚洲精品 | 国产专区日韩专区 | 国产精品 中文在线 | 日本在线视频一区二区三区 | 国产精品麻豆免费版 | 精品九九九 | 免费黄色网址大全 | 一本—道久久a久久精品蜜桃 | 69精品人人人人 | 99久久综合精品五月天 | 国产精品黄 | 亚洲精欧美一区二区精品 | 99免费看片 | 国产在线播放一区二区 | 国产成人一二片 | 一区二区三区日韩视频在线观看 | 国产精品一区二区三区在线免费观看 | 91手机视频在线 | 日本精品视频在线观看 | 国产在线观看地址 | 97精品免费视频 | 成人天堂网 | 国产另类av| 天天天天天天天天操 | 久久久久久国产精品 | 久久亚洲人| 欧美精品三级在线观看 | 欧美与欧洲交xxxx免费观看 | 91精品91 | 一区中文字幕 | 日韩精品高清不卡 | 久热电影| 欧美日韩一级久久久久久免费看 | 超碰人人乐| a级国产乱理伦片在线观看 亚洲3级 | 亚洲最快最全在线视频 | 国色天香永久免费 | 就要干b| 香蕉久久久久久av成人 | 国产成人a亚洲精品v | 97视频中文字幕 | 国产精品亚洲a | 国产精品久久久久久久久久 | 一区二区三区四区精品视频 | 久久黄色小说视频 | 黄色毛片一级片 | 久久久免费高清视频 | 国产一区福利在线 | 日韩v欧美v日本v亚洲v国产v | 日韩一区在线免费观看 | 亚洲乱码久久 | 日韩精品一区二区三区丰满 | 欧美一进一出抽搐大尺度视频 | 四虎在线免费观看视频 | 亚洲一区二区三区四区精品 | 91视频麻豆 | 99久久99久久精品国产片果冰 | 久久久91精品国产一区二区三区 | 在线观看免费高清视频大全追剧 | 欧美精品第一 | 91大神在线看 | 欧美在线资源 | 人人狠狠综合久久亚洲婷 | 一级片在线 | 欧美日本在线视频 | 韩国在线视频一区 | 日韩在线播放视频 | 色5月婷婷 | 狠狠色丁香婷婷综合久小说久 | 亚洲婷婷网 | 亚洲资源网 | 日韩精品一区二区三区免费观看视频 | 在线观看一 | 九九九九色 | 色视频在线免费观看 | 黄色一级在线观看 | 精品网站999www | 日韩精品久久中文字幕 | 欧美一级在线 | 中文字幕日韩免费视频 | av九九| 国产中出在线观看 | 久久久久久电影 | 日韩资源在线播放 | 国内视频在线观看 | 特黄特黄的视频 | 日韩网站免费观看 | 一区国产精品 | 亚洲人成免费 | 天天摸夜夜操 | 97日日碰人人模人人澡分享吧 | 日韩久久精品一区二区 | 99久久这里有精品 | 日韩在线播放av | 美女视频黄频大全免费 | 国内精自线一二区永久 | 国产一级在线看 | 国产精品一区二区三区久久久 | 色婷婷视频在线观看 | 国产中文字幕网 | av在线收看| 欧美一级性 | 久久精品一 | 天天射天天射天天 | 国产精品毛片一区 | 成人97视频一区二区 | www.午夜色.com | 99亚洲国产 | av中文资源在线 | 日批网站在线观看 | 久久不色 | 欧美另类tv| 一区二区不卡 | 999国内精品永久免费视频 | 亚洲欧洲国产精品 | 国产精品99久久久久久大便 | 五月天com | 91福利小视频 | 国产精品自产拍 | 国产日韩欧美中文 | 永久av免费在线观看 | 乱子伦av | 欧美日韩国产精品久久 | www.亚洲黄 | 国产视频日韩视频欧美视频 | 精品国产一区二区三区久久久 | 91精品在线免费视频 | 国产午夜精品免费一区二区三区视频 | 91热这里只有精品 | 人人狠狠综合久久亚洲婷 | 国产精品99久久久久久有的能看 | 免费av成人在线 | 91成人在线观看高潮 | 欧美一二三视频 | 五月综合激情网 | 日韩在线视频线视频免费网站 | 久久首页| 欧美大jb| 亚洲91av | 成 人 黄 色 片 在线播放 | 天天操天天干天天 | 欧美一级日韩三级 | 婷婷午夜 | 91xav| 精品欧美一区二区精品久久 | 国内免费久久久久久久久久久 | 亚洲激情六月 | 欧美日韩中文在线观看 | 国产自产高清不卡 | 天天色天天草天天射 | 永久免费视频国产 | 国产一级性生活视频 | 91黄色免费看 | 在线免费黄网站 | 色橹橹欧美在线观看视频高清 | 国内少妇自拍视频一区 | 99久热在线精品 | 久久论理| 丝袜美腿在线 | 日日干美女 | 久久电影网站中文字幕 | 久草视频国产 | 日韩视频1区 | 亚洲视频一级 | 91一区啪爱嗯打偷拍欧美 | 在线精品一区二区 | 白丝av在线 | 日韩毛片在线免费观看 | 国产乱对白刺激视频不卡 | 国产精品99久久久久的智能播放 | av中文字幕在线免费观看 | 一级性视频 | 精品美女视频 | 日韩精品一区二区三区高清免费 | 午夜av在线 | 日本久久久久久久久久久 | 久久精品久久精品久久 | 丁香婷婷色综合亚洲电影 | 看片在线亚洲 | www色com | 狠狠色狠狠色综合日日小说 | 亚洲传媒在线 | 青青草国产精品 | 国内成人av | 精品国内 | 精品久久久久_ | 在线观看91视频 | 国产一级免费av | 免费视频黄色 | 久草网在线视频 | 日韩成人av在线 | 亚洲精品一区二区18漫画 | 麻豆av一区二区三区在线观看 | 欧美日韩69 | 91视频国产高清 | 日本中文字幕在线免费观看 | 亚洲三级在线播放 | 欧美日韩视频 | 久久9视频| 国产xx视频 | 日韩天天操 | 伊人伊成久久人综合网小说 | 欧美日韩免费视频 | 久久精品国产一区 | 久久久99国产精品免费 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 日日干网| 久久综合影院 | 超碰97人人在线 | 欧美一级特黄aaaaaa大片在线观看 | 国产精品美女免费视频 | 亚洲国产精品成人va在线观看 | 免费a v在线 | 黄色a一级视频 | 在线观看日韩av | 婷婷夜夜 | av成人亚洲 | 久久久久久久久久久高潮一区二区 | 国产精品 久久 | 91久草视频 | 中文字幕日韩电影 | 97电院网手机版 | 91麻豆免费看 | 91网址在线看 | 日日夜夜综合网 | 国产精品一区二区在线观看免费 | 9999亚洲 | 最近2019中文免费高清视频观看www99 | 国产亚洲在 | 99视频在线精品 | 天天干天天操天天操 | 日本黄色免费电影网站 | 欧美日韩破处 | 国产毛片久久久 | 91精品视频在线观看免费 | www.com.日本一级 | 激情欧美一区二区三区 | 国产剧情av在线播放 | 99久久精品一区二区成人 | 精品久久网站 | 青青河边草观看完整版高清 | 国产日韩精品一区二区 | www.亚洲激情.com | 日本午夜在线亚洲.国产 | 日韩一区正在播放 | 中文视频在线 | 久久久久 免费视频 | 中文字幕在线网址 | 色噜噜狠狠狠狠色综合 | 久久精品国产99 | 精品免费国产一区二区三区四区 | 中文字幕免费成人 | 在线天堂中文www视软件 | 国产韩国精品一区二区三区 | 黄色av大片 | 国产精品免费观看国产网曝瓜 | 日日精品| 久久成年人网站 | 在线免费av观看 | 天天操天天怕 | 精品久久一区 | 色偷偷88欧美精品久久久 | 女人18片毛片90分钟 | 国产又黄又爽无遮挡 | 国产精品麻豆果冻传媒在线播放 | 久草免费资源 | 日韩专区在线观看 | 中文字幕精品一区久久久久 | 狠狠色丁香久久婷婷综合五月 | 久久久不卡影院 | 国产91精品一区二区麻豆亚洲 | 免费看黄的 | 热re99久久精品国产99热 | 亚洲成av片人久久久 | 国产一区二区精品久久91 | 日韩精品一区二区三区在线播放 | 亚洲第一区在线观看 | 久久久久亚洲精品成人网小说 | 不卡av免费在线观看 | 999一区二区三区 | 亚洲精品美女免费 | 久久精品视频2 | 久久国产视频网站 | 天天干天天射天天爽 | 国产免费黄色 | 免费男女羞羞的视频网站中文字幕 | 国产在线一线 | 久久草精品|