99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

牽手一起夢 ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2020-01-22 10:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨著信息技術(shù)的發(fā)展和網(wǎng)絡(luò)時代的到來,基于TCP/IP協(xié)議的嵌入式Internet技術(shù)越來越受到人們的關(guān)注。目前,大多數(shù)嵌入式設(shè)備仍處于孤立應(yīng)用階段,為了實現(xiàn)多個MCU之間的信息共享和交流,通常利用CAN、RS232RS485等總線組網(wǎng)。但是這些網(wǎng)絡(luò)的有效半徑較短,并且孤立于Internet網(wǎng)絡(luò)以外,如果能把嵌入式設(shè)備直接接入Internet,就可以用方便、低廉的方式實現(xiàn)信息的共享。因此,研究和應(yīng)用嵌入式Internet技術(shù)具有非常重要的意義。

傳統(tǒng)的網(wǎng)絡(luò)打印有兩種方法:一種是采用“網(wǎng)絡(luò)共享方式”,另一種是使用專用網(wǎng)絡(luò)打印機。專用網(wǎng)絡(luò)打印機成本很高,普通用戶難以承受。若采用“網(wǎng)絡(luò)共享方式”打印,網(wǎng)內(nèi)必須有一臺計算機來充當(dāng)打印服務(wù)器,若這臺計算機出現(xiàn)故障或關(guān)機,網(wǎng)內(nèi)的其它計算機就無法打印,使用起來很不方便。嵌入式網(wǎng)絡(luò)打印服務(wù)器解決了這個問題,使普通打印機不再是依附于主機的一外設(shè),而成為網(wǎng)絡(luò)中一個孤立的設(shè)備,使用起來更加靈活方便。本文在研究嵌入式Internet技術(shù)的基礎(chǔ)上,設(shè)計了基于TCP/IP協(xié)議的嵌入式網(wǎng)絡(luò)打印服務(wù)器,普通打印機通過此嵌入式打印服務(wù)器可直接接在Hub上,升級為一臺“網(wǎng)絡(luò)打印機”。客戶端可在局域網(wǎng)內(nèi)部實現(xiàn)網(wǎng)絡(luò)打印,遠(yuǎn)端客戶可通過網(wǎng)關(guān)實現(xiàn)遠(yuǎn)程打印。其具體結(jié)構(gòu)如圖1所示。

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

1 、系統(tǒng)總體結(jié)構(gòu)

1.1 硬件電路

嵌入式打印服務(wù)器的硬件電路如圖2所示。該電路主要包括以下四部分:①微處理器;②以太網(wǎng)控制器;③打印機接口電路;④串口通訊電路。

嵌入式打印服務(wù)器需要處理復(fù)雜的TCP/IP協(xié)議和以太網(wǎng)驅(qū)動程序,程序代碼較長,但系統(tǒng)要求快速地處理以太網(wǎng)幀,順利完成數(shù)據(jù)收發(fā)任務(wù)。基于以上考慮,微處理器采用***Winbond公司的W77E58,此芯片內(nèi)核與51系列兼容,內(nèi)含32K FLASH ROM,指令的執(zhí)行速度很快,是普通51系列單片機的3~4倍,時鐘頻率最高可設(shè)置為40MHz。此芯片內(nèi)含三個16位的定時/計數(shù)器,兩個全雙工串行口,一個軟件可編程看門狗定時器。采用軟件看門狗技術(shù),可用來提高本系統(tǒng)的抗干擾能力,防止程序跑飛。

網(wǎng)卡接口芯片采用性價比較高的全雙工的RTL8019AS。此芯片為10M ISA以太網(wǎng)控制器芯片,為100個引腳PQFP封裝,內(nèi)部集成有16MB SRAM,與NE2000兼容,16位數(shù)據(jù)總線,可配置為8位DMA方式進(jìn)行數(shù)據(jù)傳輸,與8位單片機接口方便[2]。

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

圖2 嵌入式網(wǎng)絡(luò)打印服務(wù)器總體設(shè)計框圖

另外,系統(tǒng)還擴展一片62256 RAM和一片24C02 E2PROM。RAM的作用有兩個:一是用來緩存從網(wǎng)卡芯片接收下來的數(shù)據(jù)幀,二是用作打印數(shù)據(jù)的緩沖和串口通訊數(shù)據(jù)的緩沖,以提高數(shù)據(jù)的吞吐率。24C02為串行E2PROM,其容量為2KB,可通過I2C總線與單片機通信,其接口非常簡單,只需要通過SCL和SDA兩條線與單片機相連即可。其作用是用來存儲上位機通過RS232串口下載下來的一些重要參數(shù),如主機的IP地址、子網(wǎng)俺碼、網(wǎng)關(guān)IP地址等。這里采用MAX232作為RS232的電平轉(zhuǎn)換芯片,完成TTL電平到RS232電平的轉(zhuǎn)換,實現(xiàn)上位PC機與單片機之間的通訊。

1.2 軟件設(shè)計

軟硬件開發(fā)工具分別選用Keil C51編譯器和偉福6000仿真器。程序主要包括以下四部分:①以太網(wǎng)驅(qū)動程序;②TCP/IP協(xié)議解析程序;③打印機接口程序;④串口通訊中斷服務(wù)程序。圖3為主程序流程圖。

1.2.1 以太網(wǎng)驅(qū)動程序

首先對RTL8019AS進(jìn)行復(fù)位操作。復(fù)位操作有兩種方法:冷復(fù)位和熱復(fù)位。

(1) 冷復(fù)位

將W77E58的T0引腳接RTL8019AS的復(fù)位端RSTDRV進(jìn)行復(fù)位操作,高電平有效。復(fù)位過程將執(zhí)行一些基本操作,至少需要1μs的時間,推薦等待更久的時間如100ms之后才對它操作,以確保芯片完全復(fù)位。

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

(2) 熱復(fù)位

直接將RST8019AS的復(fù)位端RSTDRV與單片機的RESET引腳相連,單片機復(fù)位的時候,RST8019AS也復(fù)位。RST8019AS中地址為18H~1FH的寄存器端口均為復(fù)位端口。對以上端口俺數(shù)地址讀或得寫入任何數(shù),都會使網(wǎng)卡芯片復(fù)位。

復(fù)位以后對RST8019AS芯片中某些寄存器進(jìn)行配置,確定其工作方式。配置好后,就可以開始接收或發(fā)送數(shù)據(jù)了。

接收數(shù)據(jù)包時,采用查詢方式將查詢程序放在一個大循環(huán)中,反復(fù)查詢是否有新數(shù)據(jù)包到達(dá),若有則接收下來。編程時應(yīng)該特別注意的是:RST8019AS接收到的數(shù)據(jù)包的幀格式與以太網(wǎng)幀格式并不一致[3],RST8019AS自動填加了接收狀態(tài)、下一頁指針、以太網(wǎng)幀長度三個字段(四個字節(jié)),其結(jié)構(gòu)如表1所示。所以編程時需要按照此格式才能正確地接收數(shù)據(jù)。

表1 RTL8019AS接收到的數(shù)據(jù)包的幀格式

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

1.2.2 TCP/IP協(xié)議解析程序

TCP/IP協(xié)議族實際上是許多相關(guān)協(xié)議的組合,分為不同的層次,每一層分別具有不同的通信功能。TCP/IP協(xié)議通常被認(rèn)為是一個四層的協(xié)議系統(tǒng),

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

包括鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層。在設(shè)計中,根據(jù)網(wǎng)絡(luò)打印服務(wù)器的具體要求,對TCP協(xié)議進(jìn)行了適當(dāng)?shù)牟眉?,僅實現(xiàn)了圖4所示的四個協(xié)議:ARP、IP、ICMP、TCP。

(1) 鏈路層協(xié)議

以太網(wǎng)上數(shù)據(jù)包的傳輸是采用網(wǎng)絡(luò)的MAC地址來進(jìn)行識別的,這就要求系統(tǒng)能夠?qū)崿F(xiàn)IP地址到MAC地址的轉(zhuǎn)換,即ARP(地址解析)協(xié)議。

(2) 網(wǎng)絡(luò)層協(xié)議

網(wǎng)絡(luò)層主要負(fù)責(zé)按網(wǎng)絡(luò)標(biāo)準(zhǔn)形式封裝數(shù)據(jù)包,然后進(jìn)行IP路由選擇。網(wǎng)絡(luò)層協(xié)議包括IP(網(wǎng)際協(xié)議)、ICMP(控制報文協(xié)議)和IGMP(組管理協(xié)議)。IP協(xié)議使網(wǎng)絡(luò)之間的通信成為可能,如果嵌入式Internet需要跨越不同的網(wǎng)絡(luò)進(jìn)行通信,就必須實現(xiàn)IP協(xié)議,所以IP協(xié)議需要完整實現(xiàn)。IP包最大為65K,可以分段傳輸,但在嵌入式系統(tǒng)中根本無法容納如此大的數(shù)據(jù)包,因此不支持分段傳輸。單片機一般采用發(fā)送小數(shù)據(jù)包的方式,以避免分段傳輸。

ICMP協(xié)議主要用于傳遞差錯報文以及其它需要注意的信息。ICMP中規(guī)定了多種協(xié)議類型和代碼,如果完全實現(xiàn)要浪費不少的系統(tǒng)資源,對于普通的嵌入式Internet應(yīng)用而言,能夠測試網(wǎng)絡(luò)的連接情況即可,因此只需實現(xiàn)ICMP中類型號為0、代碼為0的Ping應(yīng)答協(xié)議即可。

(3) 傳輸層協(xié)議

傳輸層主要為兩臺主機上的應(yīng)用程序提供端到端的通信。傳輸層有兩種不同的傳輸協(xié)議:TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)包協(xié)議)。TCP是一種面向連接的協(xié)議,它能提供高可靠性服務(wù)。通過使用序列號和確認(rèn)信息,TCP協(xié)議能夠向發(fā)送方提供到達(dá)接收方的數(shù)據(jù)包的傳送信息。UDP協(xié)議沒有保證可靠性的機制,其數(shù)據(jù)傳輸率高,可以實現(xiàn)全速發(fā)送數(shù)據(jù)包,但是容易丟包、失序。這里因為是打印服務(wù),對數(shù)據(jù)的可靠性要求很高。所以必須采用TCP協(xié)議。

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

1.2.3 打印機接口程序

打印機接口有SPP、EPP和ECP三種標(biāo)準(zhǔn)[5],其中EPP和ECP的數(shù)據(jù)傳輸速度較快。SPP為標(biāo)準(zhǔn)的并行接口標(biāo)準(zhǔn),目前任何打印機都支持此接口標(biāo)準(zhǔn),考慮到兼容性的問題,這里采用了SPP接口標(biāo)準(zhǔn)。此接口程序比較簡單,編程時可以采用查詢方式不斷檢測打印機的工作狀態(tài)(BUSY信號),若不忙則輸出數(shù)據(jù),發(fā)出數(shù)據(jù)選通脈沖(STROBE),通知打印機取數(shù)據(jù)打印。

1.2.4 串口通訊程序

串口通訊程序是主要用來完成程序的調(diào)試以及嵌入式打印服務(wù)器的IP地址、網(wǎng)關(guān)和子網(wǎng)俺碼等參數(shù)的修改。圖5為嵌入式系統(tǒng)參數(shù)設(shè)置界面。

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

基于嵌入式Internet技術(shù)實現(xiàn)網(wǎng)絡(luò)打印服務(wù)器系統(tǒng)的軟硬件設(shè)計

2 、測試結(jié)果

在此使用VB6.0編寫相應(yīng)的測試程序。實驗證明,此測試程序可以動態(tài)地修改嵌入式打印服務(wù)器的IP地址等參數(shù),能夠順利PING通,往返時間小于10ms,可以完成數(shù)據(jù)的打印任務(wù)。

為了程序調(diào)試方便,還編寫了串口通訊程序,測試結(jié)果和數(shù)據(jù)可通過串口顯示出來,也可以將輸出數(shù)據(jù)保存到硬盤中仔細(xì)分析研究。圖6為使用串口通訊程序截獲的打印輸出數(shù)據(jù)。

為了進(jìn)一步研究,使用Etherdetect Packet Sinffer軟件截獲了打印過程中通過網(wǎng)絡(luò)傳輸?shù)腡CP數(shù)據(jù),如圖7所示。其中的52 54 4c 30 2e 2f為嵌入式打印服務(wù)器的MAC地址,192.137.8.178為其IP地址。

本文介紹了嵌入式網(wǎng)絡(luò)打印服務(wù)器的設(shè)計與實現(xiàn),分析了其硬件結(jié)構(gòu)和軟件設(shè)計方法。網(wǎng)絡(luò)打印服務(wù)器只是嵌入式以太網(wǎng)技術(shù)的一個具體應(yīng)用,實際上嵌入式以太網(wǎng)技術(shù)還可以在遠(yuǎn)程控制、數(shù)據(jù)采集、視頻監(jiān)控等諸多領(lǐng)域大顯身手,其應(yīng)用前景相當(dāng)廣泛。當(dāng)然,以太網(wǎng)技術(shù)也存在一些缺陷,例如其數(shù)據(jù)包的傳輸時延不定、受網(wǎng)絡(luò)性能的影響較大等,現(xiàn)階段還很應(yīng)用到實時控制領(lǐng)域,這些問題需要在以后的研究中重要解決。

責(zé)任編輯:gt

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

    關(guān)注

    6067

    文章

    44989

    瀏覽量

    650348
  • 嵌入式
    +關(guān)注

    關(guān)注

    5150

    文章

    19665

    瀏覽量

    317451
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    13

    文章

    9793

    瀏覽量

    87945
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    嵌入式和單片機,是同一個東西嗎?

    ,嵌入式系統(tǒng)的設(shè)計和實現(xiàn)需要考慮功耗、尺寸、成本和性能以外的其他因素,如可靠性、安全性和實時性。此外,嵌入式系統(tǒng)通常不具備頻繁升級
    發(fā)表于 07-09 10:20

    為什么選擇嵌入式軟硬件方案公司?看完這篇我直接簽了九鼎創(chuàng)展?

    在智能家居、工業(yè)控制、汽車電子等領(lǐng)域,嵌入式系統(tǒng)已成為創(chuàng)新的核心驅(qū)動力。但許多企業(yè)發(fā)現(xiàn),自研嵌入式軟硬件看似省錢,實則暗藏陷阱——開發(fā)周期長、技術(shù)
    的頭像 發(fā)表于 04-08 14:31 ?352次閱讀
    為什么選擇<b class='flag-5'>嵌入式</b><b class='flag-5'>軟硬件</b>方案公司?看完這篇我直接簽了九鼎創(chuàng)展?

    嵌入式學(xué)習(xí)利器】STM32全流程虛擬仿真系統(tǒng),零基礎(chǔ)小白到軟硬件全棧工程師的修煉之路

    嵌入式開發(fā)領(lǐng)域,硬件原理的抽象性和項目全流程的復(fù)雜性一直是初學(xué)者面臨的挑戰(zhàn),尤其是像STM32單片機開發(fā)這種軟硬件結(jié)合的方向,初學(xué)者很容易被復(fù)雜的硬件知識、寄存
    的頭像 發(fā)表于 03-11 16:20 ?141次閱讀
    【<b class='flag-5'>嵌入式</b>學(xué)習(xí)利器】STM32全流程虛擬仿真<b class='flag-5'>系統(tǒng)</b>,零基礎(chǔ)小白到<b class='flag-5'>軟硬件</b>全棧工程師的修煉之路

    兆芯CPU近期軟硬件適配動態(tài)

    近期,兆芯攜手多家軟硬件合作伙伴,基于開先KX-7000、開勝KH-40000等自主CPU和信創(chuàng)操作系統(tǒng)環(huán)境,持續(xù)推進(jìn)應(yīng)用生態(tài)建設(shè)工作,順利完成醫(yī)療自主終端、商用收款機、服務(wù)器操作系統(tǒng)
    的頭像 發(fā)表于 01-15 15:33 ?571次閱讀

    新手怎么學(xué)嵌入式?

    ,實現(xiàn)一些簡單的功能,如點亮一個 LED 燈、讀取傳感數(shù)據(jù)等,來加深對嵌入式技術(shù)的理解。你還可以參加一些線上或線下的嵌入式項目實踐活動,與
    發(fā)表于 12-12 10:51

    嵌入式系統(tǒng)開發(fā)與硬件的關(guān)系 嵌入式系統(tǒng)開發(fā)常見問題解決

    系統(tǒng)開發(fā)與硬件關(guān)系的幾個關(guān)鍵點: 硬件依賴性 :嵌入式系統(tǒng)的軟件必須能夠在特定的硬件上運行,這包
    的頭像 發(fā)表于 12-09 09:38 ?960次閱讀

    嵌入式學(xué)習(xí)建議

    對廣大渴望學(xué)習(xí)嵌入式系統(tǒng)的學(xué)子提出幾點基礎(chǔ)階段的學(xué)習(xí)建議: ①嵌入式系統(tǒng)軟件硬件密切相關(guān),一定要打好
    發(fā)表于 10-22 11:41

    嵌入式系統(tǒng)服務(wù)器有什么區(qū)別

    嵌入式系統(tǒng)服務(wù)器在多個方面存在顯著的差異,這些差異主要體現(xiàn)在設(shè)計目標(biāo)、硬件配置、軟件系統(tǒng)、應(yīng)用領(lǐng)域、
    的頭像 發(fā)表于 09-29 16:37 ?1116次閱讀

    嵌入式系統(tǒng)硬件架構(gòu)

    嵌入式系統(tǒng)是一種專用的計算機系統(tǒng),它以應(yīng)用為中心,以現(xiàn)代計算機技術(shù)為基礎(chǔ),能夠根據(jù)用戶的具體需求(如功能、可靠性、成本、體積、功耗、環(huán)境等)靈活裁剪
    的頭像 發(fā)表于 09-29 16:29 ?1003次閱讀

    嵌入式軟硬件開發(fā)實戰(zhàn)師資培訓(xùn)通知

    隨著物聯(lián)網(wǎng)和智能系統(tǒng)的快速發(fā)展,嵌入式成為當(dāng)前最熱門最有發(fā)展前途的IT應(yīng)用領(lǐng)域之一。在移動通訊、移動辦公、智能傳感、穿戴設(shè)備、物聯(lián)網(wǎng)、到數(shù)據(jù)中心、大數(shù)據(jù)管理、云計算、邊緣計算,人工智能等各個領(lǐng)域
    的頭像 發(fā)表于 09-24 08:06 ?723次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟硬件</b>開發(fā)實戰(zhàn)師資培訓(xùn)通知

    嵌入式系統(tǒng)的未來趨勢有哪些?

    智能家居領(lǐng)域,嵌入式系統(tǒng)可以集成語音識別和自然語言處理技術(shù),去實現(xiàn)智能家電的語音控制。 2. 更強大的處理能力 在未來的嵌入式
    發(fā)表于 09-12 15:42

    嵌入式系統(tǒng)硬件組成部分

    嵌入式系統(tǒng)硬件組成部分是構(gòu)成其獨立運作能力的關(guān)鍵要素,這些部分協(xié)同工作,以實現(xiàn)對外部環(huán)境的感知、處理及響應(yīng)。以下是對嵌入式
    的頭像 發(fā)表于 09-02 15:27 ?2415次閱讀

    開啟全新AI時代 智能嵌入式系統(tǒng)快速發(fā)展——“第六屆國產(chǎn)嵌入式操作系統(tǒng)技術(shù)與產(chǎn)業(yè)發(fā)展論壇”圓滿結(jié)束

    解決方案以及面向新一代機器人控制嵌入式操作系統(tǒng)場景應(yīng)用的商業(yè)實踐成果。 圖9 柯善風(fēng)在做報告 南京翼輝信息技術(shù)有限公司副總經(jīng)理李孝成做了“翼輝任務(wù)關(guān)鍵型軟件
    發(fā)表于 08-30 17:24

    嵌入式系統(tǒng)是什么?

    嵌入式系統(tǒng)是是一個功能完備、幾乎不依賴其他外部裝置就可以獨立運行的系統(tǒng)。該系統(tǒng)包含軟件和硬件,以應(yīng)用為中心,以計算機為基礎(chǔ),能夠根據(jù)需求靈活
    的頭像 發(fā)表于 08-29 16:26 ?994次閱讀

    專家力薦|《嵌入式系統(tǒng)原理與開發(fā)——基于RISC-V和Linux系統(tǒng)》新書發(fā)售

    當(dāng)前,嵌入式系統(tǒng)已成為智能設(shè)備的核心之一,RISC-V+Linux的開源力量為嵌入式系統(tǒng)注入強大的創(chuàng)新動力。作為中國RISC-V軟硬件生態(tài)領(lǐng)
    的頭像 發(fā)表于 07-24 08:20 ?1100次閱讀
    專家力薦|《<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>原理與開發(fā)——基于RISC-V和Linux<b class='flag-5'>系統(tǒng)</b>》新書發(fā)售