新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 一款基于FPGA的RFID閱讀器設(shè)計

一款基于FPGA的RFID閱讀器設(shè)計

作者: 時間:2010-12-06 來源:網(wǎng)絡(luò) 收藏

  初始化部分

  /*URAT 初始化*/

  XUartLite_Initialize( Uart,

  XPAR_RS232_DEVICE_ID)

  /*LCD 初始化*/

  void lcd_init(unsigned int base_addr)

  /*URAT 開中斷*/

  void XUartLite_EnableInterrupt ( XUartLite *

  InstancePtr)

  /*設(shè)置URAT 初始化*/

  void XUartLite_SetSendHandler(XUartLite

  * InstancePtr, XUartLite_Handler FuncPtr, void

  *CallBackRef)

  /*設(shè)置URAT 的中斷服務(wù)程序*/

  void XUartLite_SetRecvHandler(XUartLite *

  InstancePtr, , XUartLite_Handler

  XUartLite_InterruptHandle, void * CallBackRef)

  初始化完成以后,然后進入一個無限循環(huán)。

  /*判斷是否有鍵按下*/

  XGpio_InterruptGetStatus(XGpio *InstancePtr)

  /*發(fā)送讀標(biāo)簽命令*/

  for (j=0;jcount ;j++)

  { XUartLite_SendByte(UARTLITE_0_BASEA

  DDR, *(commanda+j) );

  wait(50000);

  }

  /*如果對列不為空*/

  If(!IsEmptyQuque())

  /* 讀取隊列數(shù)據(jù) */

  Read_Quque(data )

  /* 寫入FLASH*/

  void flash_write(Xuint32 addr, long data)

  對FLASH 的操作首先要塊檫除,然后才能寫,對FLASH 寫的代碼如下:

  void flash_write(Xuint32 addr, long data)

  {XIo_Out32(flash_base_addr + (0x555 2),

  0x00aa00aa);

  XIo_Out32(flash_base_addr + (0xaaa 2),

  0x00550055);

  XIo_Out32(flash_base_addr + (0x555 2),

  0x00a000a0);

  XIo_Out32(addr, data);

  return;

  }

  程序編寫完成后,經(jīng)過編譯和消除錯誤后,下載到目標(biāo)板,在 開發(fā)板運行程序,在LCD得到標(biāo)簽信息,見圖6。

標(biāo)簽信息在LCD 的顯示

圖6 標(biāo)簽信息在LCD 的顯示

  6 結(jié) 論

   技術(shù)是近年來發(fā)展起來的一種新型的自動識別技術(shù)。 技術(shù)是未來硬件廣泛使用的一種技術(shù),本文結(jié)合將 技術(shù)與 技術(shù)相結(jié)合,研究和實現(xiàn)了一種新結(jié)構(gòu)的,基于FPGA的具有結(jié)構(gòu)靈活、體積小、升級容易和易擴展等優(yōu)點。本文給出了的總體結(jié)構(gòu)、硬件部分結(jié)構(gòu)和軟件部分結(jié)構(gòu),研究了 射頻模塊與FPGA 之間的接口實現(xiàn)及標(biāo)簽信息在LCD 顯示。具有廣泛的使用價值。


上一頁 1 2 3 下一頁

關(guān)鍵詞: FPGA RFID 閱讀器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉