www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀] 內(nèi)容摘要:闡述了采用Cortex—M3內(nèi)核的STM32為主控芯片、射頻芯片PN532、以太網(wǎng)控制器ENC28J60的硬件電路和軟件設(shè)計框架,同時對以太網(wǎng)協(xié)議LwIP進行了詳細(xì)的分析。本門禁系統(tǒng)傳輸距離遠,超低功耗,性能

內(nèi)容摘要:闡述了采用Cortex—M3內(nèi)核的STM32為主控芯片、射頻芯片PN532、以太網(wǎng)控制器ENC28J60的硬件電路和軟件設(shè)計框架,同時對以太網(wǎng)協(xié)議LwIP進行了詳細(xì)的分析。本門禁系統(tǒng)傳輸距離遠,超低功耗,性能優(yōu)異且穩(wěn)定,完全適用于校園以及公司的門禁系統(tǒng)。

引 言


當(dāng)前,有很多的企業(yè)是采用佩戴工作證來完成門禁管理,而且還是采用傳統(tǒng)的人工方式完成,不僅容易被人混入,且沒有記錄,存在各種人為的失誤。同時,市場上門禁系統(tǒng)存在傳輸距離受限制、性能不佳等問題。

隨著嵌入式技術(shù)日新月異的發(fā)展,以及以太網(wǎng)技術(shù)的普及,使得基于以太網(wǎng)的嵌入式產(chǎn)品越來越多,發(fā)展也越來越快。本文研究的就是采用以太網(wǎng)傳輸數(shù)據(jù)和射頻芯片識別智能卡相結(jié)合的門禁系統(tǒng),相對于傳統(tǒng)的門禁系統(tǒng),以太網(wǎng)解決了傳輸距離上的問題。其次,采用了基于80C51內(nèi)核的射頻芯片PN532,使得性能更加穩(wěn)定。其工作的基本原理是先將智能卡放在門禁系統(tǒng)上,系統(tǒng)讀取數(shù)據(jù)并傳送給主芯片STM32進行處理,主芯片處理后再通過以太網(wǎng)協(xié)議LwIP將數(shù)據(jù)從ENCN8J60傳輸給服務(wù)器。

1 門禁系統(tǒng)硬件組成

門禁系統(tǒng)主要由意法半導(dǎo)體公司的主控芯片STM3H、MICroChip公司的以太網(wǎng)控制器ENC28J60和NXP公司的射頻芯片PN532組成。

門禁系統(tǒng)結(jié)構(gòu)組成如圖1所示。主芯片STM32通過以太網(wǎng)協(xié)議棧LwIP將數(shù)據(jù)傳輸?shù)紼NC28J60,然后可以通過網(wǎng)線與服務(wù)器直接連接進行通信,也可以通過路由器再連接到服務(wù)器。在非接觸式卡通信方面,STM32通過頻率為1MHz的SPI接口與PN532相連。

1.1 STM32外圍電路設(shè)計

本系統(tǒng)采用意法半導(dǎo)體公司以Cortex—M3為內(nèi)核的32位微處理器STM32F103為主控芯片,其主頻為72 MHz,內(nèi)部集成存儲空間為256K的Flash和64K的SRAM,還包含I2C、SPI、I2S、USART、CAN、ADC、看門狗等。性價比在同類產(chǎn)品中十分突出。硬件連接如圖2所示。

在調(diào)試時我們采用SWD取代JTAG,因為SWD不僅引腳更少,而且在高速模式下更加可靠。

1.2 射頻芯片PN532硬件電路設(shè)計

PN532是NXP公司推出的一個高度集成的非接觸式讀寫芯片,它包含80C51微控制器內(nèi)核,集成了13.56 MHz下的各種主動/被動式非接觸通信方法和協(xié)議。支持ISO14443A/14443B協(xié)議。工作距離超過75 mm。接收來自天線的信號并對該數(shù)據(jù)按照ISO14443規(guī)定的幀格式處理數(shù)據(jù)。

PN532支持三種通信方式:SPI、I2C、HUS。由于我們采用SPI方式與主控芯片STM32進行通信,所以I0和I1分別設(shè)置為0和1。

PN532外圍電路結(jié)構(gòu)如圖3所示。

1.3 以太網(wǎng)控制器ENC28J60硬件設(shè)計

主控芯片ENC28J60是帶有行業(yè)標(biāo)準(zhǔn)串行外設(shè)接口(Serial Peripheral Interface,SPI)的獨立以太網(wǎng)控制器。它可作為任何配備有SPI的控制器的以太網(wǎng)接口。ENC28J60符合IEEE802.3的全部規(guī)范,采用了一系列包過濾機制以對傳入數(shù)據(jù)包進行限制。它還提供了一個內(nèi)部DMA模塊,以實現(xiàn)快速數(shù)據(jù)吞吐和硬件支持的IP校驗和計算。與主控制器的通信通過兩個中斷引腳和SPI實現(xiàn),數(shù)據(jù)傳輸速率高達10 Mb/s。

兩個專用的引腳用于連接LED,進行網(wǎng)絡(luò)活動狀態(tài)指示。

應(yīng)當(dāng)注意的是,當(dāng)從ENC28J60讀取多個數(shù)據(jù)時,即使不需要主控芯片STM32輸出的數(shù)據(jù),每讀取一個數(shù)據(jù)前也要向SPI發(fā)送緩沖器寫一個數(shù)據(jù)用來啟動SPI的接口時鐘。

ENC28J60典型應(yīng)用電路如圖4所示。

2 系統(tǒng)軟件設(shè)計

2.1 以太網(wǎng)協(xié)議LwIP

LwIP是瑞士計算機科學(xué)院開發(fā)的小型開源的TCP/IP協(xié)議棧。由于它只需要十幾K的RAM和40K左右的ROM就可以運行,所以很適合在硬件資源并不充裕的嵌入式系統(tǒng)中使用。

LwIP屬于比較松散的通信機制,通過共享內(nèi)存的方式實現(xiàn)應(yīng)用層與底層協(xié)議之間的通信。它提供了三種API:①RAM API,②LwIP API,③BSD API。

其中的RAM API其缺點就是代碼不易于理解,開發(fā)難度大,其優(yōu)點是相對于其他兩種方式占用的資源少,效率更加高,更適合于對于資源相對少的嵌入式使用,所以我們采用RAM API方式進行編寫。

在TCP/IP傳輸層中有TCP和UDP兩種協(xié)議,TCP提供IP環(huán)境下數(shù)據(jù)的可靠傳輸,UDP提供的是不可靠傳輸,由于門禁系統(tǒng)中必須要求傳輸數(shù)據(jù)的正確,所以采用TCP。圖5是LwIP下的TCP處理流程框圖。

RAM API把協(xié)議棧和應(yīng)用程序放在一個進程里,該函數(shù)基于函數(shù)回調(diào)技術(shù),下面是LwIP的部分關(guān)鍵配置和代碼。

(1)LwIP配置

在LwIP的配置文件lwipopts.h中修改如下地方。

是否使用操作系統(tǒng),我們不用,所以填寫為1:

#define NO_SYS 1

配置heap的大?。?/p>

#define MEM_SIZE

配置pool的大小

#define PBUF_POOL_SIZE

#define PBUF_POOL_BUFSIZE

以上三個配置占據(jù)了LwIP協(xié)議棧大部分的內(nèi)存,需要根據(jù)自己的需要修改成合適的值。

(2)LwIP代碼

①分別設(shè)置IP地址,子網(wǎng)掩碼和網(wǎng)關(guān):

IP4_ADDR(&ipaddr,192,168,2,28);

IP4_ADDR(&netmask,255,255,255,0);

IP4_ADDR(&gw,192,168,2,254);

②初始化底層函數(shù),也就是配置MAC地址,初始化ENC28J60,配置最大輸出單元等:

low_level_init(netif);

③連接遠程主機,當(dāng)連接建立,就會調(diào)用第4個參數(shù)Conn_Back:

tcp_connect(TCP_PCB,&ipaddr,1026,Conn_back);

④當(dāng)有新的數(shù)據(jù)接收到時調(diào)用的回調(diào)函數(shù):

tcp_recv(TCP_pcb.tcp_recv_callback);

⑤服務(wù)器成功接收到數(shù)據(jù)后調(diào)用的回調(diào)函數(shù):

tcp_sent(TCP_pcb,tcp_sent_callback);

⑥處理錯誤的回調(diào)函數(shù):

tcp_err(pcb,CMD_conn_err);

⑦是否接收到數(shù)據(jù):

ethernetif_input(&enc28j60);

通信一旦結(jié)束或者出現(xiàn)異常狀況后,一定要使用pbuf_free()函數(shù)釋放pbuf,避免內(nèi)存的浪費。還有一點要注意的是,系統(tǒng)在正常運行的過程中,定時器函數(shù)tcp_fasttmr()和tcp_slowtmr()函數(shù)必須以固定的時間間隔被規(guī)律地調(diào)用。

2.2 門禁系統(tǒng)軟件架構(gòu)與設(shè)計

門禁系統(tǒng)的主要流程如圖6所示,每次重新啟動后,首先初始化相關(guān)寄存器,初始化各個模塊,確定已經(jīng)連接服務(wù)器,然后進入程序主循環(huán)。

首先監(jiān)測是否需要調(diào)用LwIP內(nèi)部的快速定時器和慢速定時器。然后監(jiān)測服務(wù)器是否有斷開,如果斷開則重新連接服務(wù)器,沒有斷開的話則檢測是否有智能卡,有的話接收卡中信息進行處理然后發(fā)送給服務(wù)器。

結(jié)語

本文對使用STM32為主控芯片的門禁系統(tǒng)的硬件和軟件架構(gòu)進行了相應(yīng)的描述,對于文中所涉及的芯片和以太網(wǎng)協(xié)議的使用具有指導(dǎo)意義,能夠較大幅度地降低成本,同時門禁系統(tǒng)的使用會更加穩(wěn)定,傳輸距離更長。


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

本屆年會將在上海(11月13-14日)、北京(11月19-20日)和深圳(11月27-28日)舉行,面向嵌入式設(shè)計工程師推出25門技術(shù)課程

關(guān)鍵字: 嵌入式 MCU 模擬

隨著10BASE-T1L以太網(wǎng)在各個行業(yè)興起,更多應(yīng)用不斷涌現(xiàn),每個應(yīng)用都給該技術(shù)的成功部署帶來了新的挑戰(zhàn)。一個常見的要求是支持多種類型的電纜。某些應(yīng)用已經(jīng)將這些電纜部署到傳統(tǒng)通信系統(tǒng)中?,F(xiàn)有設(shè)施也經(jīng)常使用相關(guān)電纜。10...

關(guān)鍵字: 以太網(wǎng) 電纜 鏈路延遲

上海2025年9月5日 /美通社/ -- 由紐倫堡會展(上海)有限公司舉辦的上海國際嵌入式會議將于 2025 年 10 月 16-17 日在上海世博展覽館舉辦。 此次會議將由三個版塊組成:嵌入式技術(shù)會議、汽...

關(guān)鍵字: 嵌入式 CE CHINA EMBEDDED

從外部看,電子系統(tǒng)仿佛一個統(tǒng)一的學(xué)科或設(shè)備,各組成部分協(xié)同工作,渾然一體。然而揭開表象,其內(nèi)在卻是另一番景象:一個碎片化、多層次的世界——其中每一層都獨立且復(fù)雜,衍生出各自特有的工具、專家、工作流程,甚至哲學(xué)體系。

關(guān)鍵字: 嵌入式 電子系統(tǒng) 半導(dǎo)體

8位單片機在嵌入式設(shè)計領(lǐng)域已經(jīng)成為半個多世紀(jì)以來的主流選擇。盡管嵌入式系統(tǒng)市場日益復(fù)雜,8位單片機依然不斷發(fā)展,積極應(yīng)對新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機系列,配備了先進的獨立...

關(guān)鍵字: 單片機 嵌入式 CPU

深圳2025年8月28日 /美通社/ -- 8月26日,2025 ELEXCON深圳國際電子展盛大啟幕。本屆大會以"All for AI"為主題,深圳市德...

關(guān)鍵字: AI 工業(yè)級 SSD 嵌入式

深圳2025年8月26日 /美通社/ -- 8月26日,由博聞創(chuàng)意會展主辦的 第22屆深圳國際電子展暨嵌入式展(elexcon2025)在深圳(福田)會展中心隆重開幕。 作為中國電子與嵌入式技術(shù)領(lǐng)域的專業(yè)大展,本屆展會...

關(guān)鍵字: 嵌入式 電子 高通 AI

數(shù)據(jù)中心領(lǐng)域正經(jīng)歷一場巨變。在超大規(guī)模云計算、人工智能(AI)和高性能計算(HPC)爆炸式增長的驅(qū)動下,以太網(wǎng)速率正從 800G 加速邁向 1.6T 乃至 3.2T。這一演進的核心動力源于光連接技術(shù)的突破以及 3nm 和...

關(guān)鍵字: 以太網(wǎng) 數(shù)據(jù)中心 云計算

CoreWeave將部署 NVIDIA Spectrum-XGS 以太網(wǎng)跨區(qū)域擴展技術(shù)

關(guān)鍵字: 以太網(wǎng) 數(shù)據(jù)中心 AI

模塊化設(shè)計作為一種將系統(tǒng)拆分為獨立、可復(fù)用組件的方法,能夠在低代碼平臺中實現(xiàn)功能的靈活組合,并最大限度地提升系統(tǒng)性能。本文將探討如何通過模塊化設(shè)計,使得低代碼平臺既能快速適應(yīng)變化,又能保持高效穩(wěn)定的運行。

關(guān)鍵字: 模塊化設(shè)計 嵌入式
關(guān)閉