0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

單片機(jī)系統(tǒng)板的實(shí)現(xiàn)及應(yīng)用分析

電子設(shè)計(jì) ? 來源:電子技術(shù)應(yīng)用 ? 作者:趙力強(qiáng),趙小冬, ? 2021-05-21 10:52 ? 次閱讀

作者:趙力強(qiáng),趙小冬,李璟

在因特網(wǎng)上TCP/IP協(xié)議每時(shí)每刻保證了數(shù)據(jù)的準(zhǔn)確傳輸。在數(shù)據(jù)采集領(lǐng)域,如何利用TCP/IP協(xié)議在網(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)傳輸成為一個(gè)炙手可熱的話題。在本系統(tǒng)中,利用TCP/IP協(xié)議中的UDP(用戶數(shù)據(jù)報(bào)協(xié)議)、IP(網(wǎng)絡(luò)報(bào)文協(xié)議)、ARP(地址解析協(xié)議)及簡(jiǎn)單的應(yīng)用層協(xié)議成功地實(shí)現(xiàn)了單片機(jī)的網(wǎng)絡(luò)互連,既提高了數(shù)據(jù)傳輸?shù)乃俣?,又保證了數(shù)據(jù)傳輸?shù)恼_性,同時(shí)也擴(kuò)展了數(shù)據(jù)傳輸?shù)挠行О霃健?/p>

1 TCP/IP協(xié)議簡(jiǎn)介

TCP/IP協(xié)議是一套把因特網(wǎng)上的各種系統(tǒng)互連起來的協(xié)議組,保證因特網(wǎng)上數(shù)據(jù)的準(zhǔn)確快速傳輸。參考開放系統(tǒng)互連(OSI)模型,TCP/IP通常采用一種簡(jiǎn)化的四層模型,分別為:應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、鏈路層。

(1)應(yīng)用層

網(wǎng)絡(luò)應(yīng)用層要有一個(gè)定義清晰的會(huì)話過程?如通常所說的Http、Ftp、Telnet等。在本系統(tǒng)中,單片機(jī)系統(tǒng)傳遞來自Ethernet和數(shù)據(jù)終端的數(shù)據(jù),應(yīng)用層只對(duì)大的數(shù)據(jù)報(bào)作打包拆報(bào)處理。

(2)傳輸層

傳輸層讓網(wǎng)絡(luò)程序通過明確定義的通道及某些特性獲取數(shù)據(jù),如定義網(wǎng)絡(luò)連接的端口號(hào)等?實(shí)現(xiàn)該層協(xié)議的傳輸控制協(xié)議TCP和用戶數(shù)據(jù)報(bào)協(xié)議UDP。在本系統(tǒng)中使用UDP數(shù)據(jù)報(bào)協(xié)議。

(3)網(wǎng)絡(luò)層

網(wǎng)絡(luò)層讓信息可以發(fā)送到相鄰的TCP/IP網(wǎng)絡(luò)上的任一主機(jī)上,IP協(xié)議就是該層中傳送數(shù)據(jù)的機(jī)制。同時(shí)為建立網(wǎng)絡(luò)間的互連,應(yīng)提供ARP地址解析協(xié)議,實(shí)現(xiàn)從IP地址到數(shù)據(jù)鏈路物理地址的映像。

(4)鏈路層

由控制同一物理網(wǎng)絡(luò)上的不同機(jī)器間數(shù)據(jù)傳送的底層協(xié)議組成?實(shí)現(xiàn)這一層協(xié)議的協(xié)議并不屬于TCP/IP協(xié)議組。在本系統(tǒng)中這部分功能由單片機(jī)控制網(wǎng)卡芯片CS8900實(shí)現(xiàn)。

2 硬件框圖

如圖1所示,系統(tǒng)提供RJ45接口連接Ethernet網(wǎng)絡(luò),并且提供一個(gè)串口給用戶使用。系統(tǒng)板可以將從Ethernet上過來的IP數(shù)據(jù)報(bào)解包后送給串口,也可將從串口過來的數(shù)據(jù)封裝為IP包送到局域網(wǎng)中。外部RAM使用61C1024(128KB),從而為數(shù)據(jù)處理提供了很大的緩存; 使用E2PROM--X25045,既可以作為看門狗使用?也可以將IP地址、網(wǎng)卡物理地址和其他參數(shù)保存在里面。

CS8900芯片Cirrus Logic公司生產(chǎn)的一種局域網(wǎng)處理芯片,它的封裝是100-pin TQFP,內(nèi)部集成了在片RAM、10BASE-T收發(fā)濾波器,并且提供8位和16位兩種接口,本文只介紹它的8位模式。

ME103是一種脈沖變壓器,在CS8900的前端對(duì)網(wǎng)絡(luò)信號(hào)進(jìn)行脈沖波形變換。

3 工作原理

3.1 CS8900的工作原理

CS8900與單片機(jī)按照8位方式連接,網(wǎng)卡芯片復(fù)位后默認(rèn)工作方式為I/O連接,基址是300H,下面對(duì)它的幾個(gè)主要工作寄存器進(jìn)行介紹(寄存器后括號(hào)內(nèi)的數(shù)字為寄存器地址相對(duì)基址300H的偏移量)。

·LINECTL(0112H)

LINECTL決定CS8900的基本配置和物理接口。在本系統(tǒng)中,設(shè)置初始值為00d3H,選擇物理接口為10BASE-T,并使能設(shè)備的發(fā)送和接收控制位。

·RXCTL(0104H)

RXCTL控制CS8900接收特定數(shù)據(jù)報(bào)。設(shè)置RXTCL的初始值為0d05H,接收網(wǎng)絡(luò)上的廣播或者目標(biāo)地址同本地物理地址相同的正確數(shù)據(jù)報(bào)。

·RXCFG(0102H)

RXCFG控制CS8900接收到特定數(shù)據(jù)報(bào)后會(huì)引發(fā)接收中斷。RXCFG可設(shè)置為0103H,這樣當(dāng)收到一個(gè)正確的數(shù)據(jù)報(bào)后,CS8900會(huì)產(chǎn)生一個(gè)接收中斷。

·BUSCT(0116H)

BUSCT可控制芯片的I/O接口的一些操作。設(shè)置初始值為8017H,打開CS8900的中斷總控制位。

·ISQ(0120H)

ISQ是網(wǎng)卡芯片的中斷狀態(tài)寄存器,內(nèi)部映射接收中斷狀態(tài)寄存器和發(fā)送中斷狀態(tài)寄存器的內(nèi)容。

·PORT0(0000H)

發(fā)送和接收數(shù)據(jù)時(shí),CPU通過PORT0傳遞數(shù)據(jù)。

·TXCMD(0004H)

發(fā)送控制寄存器,如果寫入數(shù)據(jù)00C0H,那么網(wǎng)卡芯片在全部數(shù)據(jù)寫入后開始發(fā)送數(shù)據(jù)。

·TXLENG(0006H)

發(fā)送數(shù)據(jù)長(zhǎng)度寄存器,發(fā)送數(shù)據(jù)時(shí),首先寫入發(fā)送數(shù)據(jù)長(zhǎng)度,然后將數(shù)據(jù)通過PORT0寫入芯片。

以上為幾個(gè)最主要的工作寄存器(為16位),CS8900支持8位模式,當(dāng)讀或?qū)?6位數(shù)據(jù)時(shí),低位字節(jié)對(duì)應(yīng)偶地址,高位字節(jié)對(duì)應(yīng)奇地址。例如,向TXCMD中寫入00C0H,則可將00h寫入305H,將C0H寫入304H。

系統(tǒng)工作時(shí),應(yīng)首先對(duì)網(wǎng)卡芯片進(jìn)行初始化,即寫寄存器LINECTL、RXCTL、RCCFG、BUSCT。發(fā)數(shù)據(jù)時(shí),寫控制寄存器TXCMD,并將發(fā)送數(shù)據(jù)長(zhǎng)度寫入TXLENG,然后將數(shù)據(jù)依次寫入PORT0口,如將第一個(gè)字節(jié)寫入300H,第二個(gè)字節(jié)寫入301H,第三個(gè)字節(jié)寫入300H,依此類推。網(wǎng)卡芯片將數(shù)據(jù)組織為鏈路層類型并添加填充位和CRC校驗(yàn)送到網(wǎng)絡(luò)。同樣,單片機(jī)查詢ISO的數(shù)據(jù),當(dāng)有數(shù)據(jù)來到后,讀取接收到的數(shù)據(jù)幀。讀數(shù)據(jù)時(shí),單片機(jī)依次讀地址300H,301H,300H,301H...。

3.2 單片機(jī)工作流程

如圖2所示,單片機(jī)首先初始化網(wǎng)絡(luò)設(shè)備。網(wǎng)卡的IP地址和物理地址存在X25045中,單片機(jī)復(fù)位后首先調(diào)取這些數(shù)據(jù)以初始化網(wǎng)絡(luò)。

單片機(jī)主要完成數(shù)據(jù)的解包打包。當(dāng)有數(shù)據(jù)從RJ45過來,單片機(jī)對(duì)數(shù)據(jù)報(bào)進(jìn)行分析,如果是ARP(物理地址解析)數(shù)據(jù)包,則程序轉(zhuǎn)入ARP處理程序(因?yàn)樵诰W(wǎng)絡(luò)上正是ARP協(xié)議將IP地址和物理地址相映射)。如果是IP數(shù)據(jù)包且傳輸層使用UDP協(xié)議,端口正確,則認(rèn)為數(shù)據(jù)報(bào)正確,數(shù)據(jù)解包后,將數(shù)據(jù)部分通過串口輸出。反之,如果單片機(jī)從串口收到數(shù)據(jù),則將數(shù)據(jù)按照UDP協(xié)議格式打包,送入CS8900,由CS8900將數(shù)據(jù)輸出到局域網(wǎng)中。

可以知道,單片機(jī)主要處理協(xié)議的網(wǎng)絡(luò)層和傳輸層,鏈路層部分由CS8900完成。因單片機(jī)將數(shù)據(jù)接收后完整不變地通過串口輸出,所以將應(yīng)用層交付用戶來處理,用戶可以根據(jù)需求對(duì)收到的數(shù)據(jù)進(jìn)行處理。

在單片機(jī)的程序處理中,包含了完整的APR地址解析協(xié)議。通過在單片機(jī)中正確設(shè)置網(wǎng)關(guān)、子網(wǎng)掩碼等參數(shù),實(shí)現(xiàn)了通過局域網(wǎng)單片機(jī)與外部因特網(wǎng)上的終端設(shè)備的數(shù)據(jù)通信。

4 應(yīng)用

這種嵌入了TCP/IP協(xié)議的單片機(jī)系統(tǒng)板,具有成本低、硬件少、占用面積少、傳輸速度快、使用方便等優(yōu)點(diǎn)。適用于現(xiàn)有的網(wǎng)絡(luò)傳輸系統(tǒng),有著廣泛的應(yīng)用前景,特別是數(shù)據(jù)采集、數(shù)據(jù)傳輸領(lǐng)域。目前,在屏幕板數(shù)據(jù)成像、遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)中被使用。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 濾波器
    +關(guān)注

    關(guān)注

    159

    文章

    7666

    瀏覽量

    177205
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5272

    瀏覽量

    119655
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8361

    瀏覽量

    150537
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ISP 型單片機(jī)實(shí)驗(yàn)

    ISP 型單片機(jī)實(shí)驗(yàn)學(xué)習(xí)單片機(jī)離不開實(shí)驗(yàn),以往單片機(jī)的實(shí)驗(yàn)往往依賴于仿真機(jī)單片機(jī)學(xué)習(xí)
    發(fā)表于 04-09 14:51 ?32次下載

    基于單片機(jī)的OLED顯示系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    為了提高圖形信息的顯示速度,并得到更多的顯示效果,文章基于FG_V1.2單片機(jī)開發(fā),依據(jù)OLED12864顯示屏的操作時(shí)序要求,用51單片機(jī)實(shí)現(xiàn)了基于0.96英寸OLED屏的顯示
    發(fā)表于 12-31 09:20 ?23次下載

    基于單片機(jī)的OLED顯示系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    基于單片機(jī)的OLED顯示系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn),沒有例程
    發(fā)表于 06-21 15:39 ?16次下載

    單片機(jī)的以太網(wǎng)絡(luò)接入系統(tǒng)實(shí)現(xiàn)及網(wǎng)絡(luò)性能分析

    單片機(jī)的以太網(wǎng)絡(luò)接入系統(tǒng)實(shí)現(xiàn)及網(wǎng)絡(luò)性能分析
    發(fā)表于 02-07 17:25 ?6次下載

    采用單片機(jī)系統(tǒng)實(shí)現(xiàn)的AFC跟蹤系統(tǒng)

    采用單片機(jī)系統(tǒng)實(shí)現(xiàn)的AFC跟蹤系統(tǒng)
    發(fā)表于 01-17 19:47 ?15次下載

    基于單片機(jī)創(chuàng)新實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)與應(yīng)用

    基于單片機(jī)創(chuàng)新實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)與應(yīng)用
    發(fā)表于 10-16 10:16 ?5次下載
    基于<b class='flag-5'>單片機(jī)</b>創(chuàng)新實(shí)驗(yàn)<b class='flag-5'>板</b><b class='flag-5'>系統(tǒng)</b>的設(shè)計(jì)與應(yīng)用

    PCB單片機(jī)最小系統(tǒng)

    這是包含許多功能的單片機(jī)最小系統(tǒng)單片機(jī)開發(fā)pcb文件
    發(fā)表于 11-23 11:11 ?18次下載

    AVR單片機(jī)最小系統(tǒng)的基本硬件線路與分析資料免費(fèi)下載

    單片機(jī)最小系統(tǒng) 單片機(jī)最小系統(tǒng)設(shè)計(jì)AVR基本硬件線路設(shè)計(jì)與分析 (ATmega16功能小板) AVR DB-CORE Ver2.3 Atme
    發(fā)表于 07-08 17:14 ?15次下載
    AVR<b class='flag-5'>單片機(jī)</b>最小<b class='flag-5'>系統(tǒng)</b>的基本硬件線路與<b class='flag-5'>分析</b>資料免費(fèi)下載

    52單片機(jī)和AVR單片機(jī)最小系統(tǒng)開發(fā)板的電路原理圖免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是52單片機(jī)和AVR單片機(jī)最小系統(tǒng)開發(fā)板的電路原理圖免費(fèi)下載。
    發(fā)表于 06-15 08:00 ?8次下載
    52<b class='flag-5'>單片機(jī)</b>和AVR<b class='flag-5'>單片機(jī)</b>最小<b class='flag-5'>系統(tǒng)開發(fā)板</b>的電路原理圖免費(fèi)下載

    多個(gè)單片機(jī)硬件系統(tǒng)的案例分析

      本章首先從單片機(jī)的概念入手,簡(jiǎn)單介紹了單片機(jī)實(shí)驗(yàn)系統(tǒng)的基本組成及功能,以最簡(jiǎn)單的信號(hào)燈控制應(yīng)用實(shí)驗(yàn)讓讀者對(duì)單片機(jī)及其應(yīng)用系統(tǒng)有一個(gè)感性的
    發(fā)表于 07-08 11:26 ?154次下載
    多個(gè)<b class='flag-5'>單片機(jī)</b>硬件<b class='flag-5'>系統(tǒng)</b>的案例<b class='flag-5'>分析</b>

    單片機(jī)對(duì)GPRS電路的開關(guān)控制實(shí)現(xiàn)案例

    案例描述:“燈控項(xiàng)目”中讓單片機(jī)通過IO口控制繼電器,繼電器接入GPRS電路供電電源,從而實(shí)現(xiàn)單片機(jī)對(duì)GPRS電路的開關(guān)控制
    的頭像 發(fā)表于 09-24 10:01 ?5763次閱讀
    <b class='flag-5'>單片機(jī)</b>對(duì)GPRS電路<b class='flag-5'>板</b>的開關(guān)控制<b class='flag-5'>實(shí)現(xiàn)</b>案例

    單片機(jī)最小系統(tǒng)的PCB的設(shè)計(jì)

    單片機(jī)最小系統(tǒng)的PCB的設(shè)計(jì)方法介紹。
    發(fā)表于 05-28 14:52 ?0次下載
    <b class='flag-5'>單片機(jī)</b>最小<b class='flag-5'>系統(tǒng)</b>的PCB<b class='flag-5'>板</b>的設(shè)計(jì)

    單片機(jī)數(shù)據(jù)采集系統(tǒng)PCB制作

    單片機(jī)數(shù)據(jù)采集系統(tǒng)PCB制作(pic單片機(jī)論壇)-該文檔為單片機(jī)數(shù)據(jù)采集系統(tǒng)PCB
    發(fā)表于 07-22 10:17 ?34次下載
    <b class='flag-5'>單片機(jī)</b>數(shù)據(jù)采集<b class='flag-5'>系統(tǒng)</b>PCB<b class='flag-5'>板</b>制作

    單片機(jī)最小系統(tǒng)

    、復(fù)位電路,如圖 2-1 所示:這張最小系統(tǒng)的電路圖節(jié)選自我們的 KST-51 開發(fā)原理圖,下面我們就照這張電路圖來具體分析最小系統(tǒng)的三要素。電源這個(gè)很好理解,電子設(shè)備都需要供電,就
    發(fā)表于 12-29 19:36 ?69次下載
    <b class='flag-5'>單片機(jī)</b>最小<b class='flag-5'>系統(tǒng)</b>

    基于單片機(jī)的FFT算法分析實(shí)現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《基于單片機(jī)的FFT算法分析實(shí)現(xiàn).pdf》資料免費(fèi)下載
    發(fā)表于 10-20 11:37 ?15次下載
    基于<b class='flag-5'>單片機(jī)</b>的FFT算法<b class='flag-5'>分析</b>與<b class='flag-5'>實(shí)現(xiàn)</b>