一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

串口服務(wù)器系統(tǒng)中S3C44B0的應(yīng)用設(shè)計

電子設(shè)計 ? 作者:工程師之余 ? 2018-11-12 11:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言

目前,煤礦瓦斯、負(fù)壓及電動機(jī)、供電等自動化監(jiān)控裝置已在各大礦井廣泛采用,甚至在個別礦井已組網(wǎng)運(yùn)行。但是,各自動化監(jiān)控裝置絕大部分仍然采用RS232、RS485CAN總線組網(wǎng)方式,嚴(yán)重影響了礦井安全監(jiān)控系統(tǒng)運(yùn)行的實時性、可靠性、交互性。而工業(yè)以太網(wǎng)從10 M、100 M帶寬發(fā)展到現(xiàn)在的千兆網(wǎng),已成為礦井監(jiān)控系統(tǒng)的主要組網(wǎng)方式。

因此,如何使現(xiàn)有的基于RS232 、RS485 或CAN 總線的串口設(shè)備以以太網(wǎng)的方式組網(wǎng)運(yùn)行,是目前需要解決的一個問題。本文介紹一種基于S3C44B0的串口服務(wù)器系統(tǒng),該服務(wù)器系統(tǒng)可將串口數(shù)據(jù)轉(zhuǎn)換成TCP/ IP 協(xié)議進(jìn)行數(shù)據(jù)傳輸,具有廣泛的應(yīng)用前景。

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

基于S3C44B0 的串口服務(wù)器系統(tǒng)硬件結(jié)構(gòu)如圖1 所示。


圖1 基于S3C44B0 的串口服務(wù)器系統(tǒng)硬件結(jié)構(gòu)圖

該系統(tǒng)主要功能: 從串口設(shè)備讀取數(shù)據(jù),將所得到的數(shù)據(jù)進(jìn)行TCP/ IP 協(xié)議封裝,通過RJ 45 的接口發(fā)送到上位機(jī),與上位機(jī)的服務(wù)器程序進(jìn)行交互;同時,將上位機(jī)發(fā)送給串口服務(wù)器的數(shù)據(jù)轉(zhuǎn)發(fā)到串口,進(jìn)而通過網(wǎng)絡(luò)遠(yuǎn)程監(jiān)控現(xiàn)場的串口設(shè)備。

RS232 接口電路如圖2 所示。在本系統(tǒng)中,擴(kuò)展出2 個獨(dú)立的串行口,該串行口可以三線通信或者與Modem 通信。該接口采用2 片MAX3232C芯片,其中MAX3232C(1) 負(fù)責(zé)串行口發(fā)送接收信號的電平轉(zhuǎn)換,MAX3232C (2) 完成握手信號的電平轉(zhuǎn)換。處理器S3C44B0 的C10~C15 分別作為nRTS1 、nCTS1 、TXD1 、RXD1 、nRTS0 、nCTS0 信號,PE1 和PE2 作為TXD0 和RXD0 信號。

串口服務(wù)器系統(tǒng)中S3C44B0的應(yīng)用設(shè)計
圖2 RS232 接口電路圖

以太網(wǎng)控制器采用在嵌入式領(lǐng)域應(yīng)用廣泛且性價比較高的網(wǎng)絡(luò)控制芯片RTL8019AS ,其接口電路如圖3 所示。

串口服務(wù)器系統(tǒng)中S3C44B0的應(yīng)用設(shè)計
圖3 以太網(wǎng)控制器接口電路圖

圖3 中,RTL8019AS 采用IN T0 中斷方式, 連到S3C44B0 的外部中斷引腳IN T1 。數(shù)據(jù)總線寬度為16 位,因此,RTL8019AS 的引腳IOCS16B 上拉。

RTL8019AS 有3 種工作方式: 跳線方式, 該方式I/ O和中斷由跳線決定;即插即用方式( PnP) , 該方式由軟件進(jìn)行自動配置; 免跳線方式,該方式I/ O和中斷由外接的EEPROM93C46 中的內(nèi)容決定。

使用何種工作方式由RTL8019AS 的引腳J P 決定,圖3 中引腳J P 上拉, 即選擇跳線方式。

RTL8019AS 的引腳IOS2 上拉,引腳IOS0 、IOS1 、IOS3 懸空(引腳IOS0~I(xiàn)OS4 在圖3 中未畫出) ,當(dāng)引腳IOS0 、IOS1 、IOS3 懸空時,每個引腳里有1 個100 kΩ 的下拉電阻,因此,引腳IOS0 、IOS1 、IOS3為低電平, RTL8019AS 的I/ O 基址為200H。

RTL8019AS 片選端AEN 接S3C44B0 的nGCS5 也就是Bank6 ,由于數(shù)據(jù)總線寬度為16 位, S3C44B0的引腳A1 連接RTL8019AS 的引腳SA0 ,因此,對于S3C44B0 來說, RTL8019AS 的I/ O 基址為0X0A000400H。20F001N 為網(wǎng)卡濾波器,其內(nèi)部包含1 對低通濾波器和1 對隔離變壓器,直接與RJ 45相連。

2、系統(tǒng)軟件結(jié)構(gòu)

系統(tǒng)軟件建立在Linux 2. 4 內(nèi)核的uClinux 操作系統(tǒng)基礎(chǔ)上,采用模塊化設(shè)計,其結(jié)構(gòu)組成模塊如圖4 所示。系統(tǒng)軟件的核心為串口和以太網(wǎng)處理模塊,串口服務(wù)器通過這2 個模塊即可實現(xiàn)串口設(shè)備的聯(lián)網(wǎng)。

串口服務(wù)器系統(tǒng)中S3C44B0的應(yīng)用設(shè)計
圖4 系統(tǒng)軟件結(jié)構(gòu)組成模塊圖

由于uClinux 內(nèi)核中含有串口、網(wǎng)口的通用驅(qū)動程序,因此,不必再寫關(guān)于串口及網(wǎng)絡(luò)驅(qū)動程序,只需在內(nèi)核移植時,根據(jù)硬件電路對uClinux 進(jìn)行裁減移植后,便可實現(xiàn)對串口及網(wǎng)絡(luò)的應(yīng)用編程功能。

uClinux 的設(shè)備管理和文件系統(tǒng)緊密結(jié)合,各種設(shè)備都以文件的形式存放在/ dev 目錄下,稱為設(shè)備文件。應(yīng)用程序可以打開、關(guān)閉和讀寫這些設(shè)備文件,完成對設(shè)備的操作,就像操作普通的數(shù)據(jù)文件一樣。所以訪問串口,只需要打開相應(yīng)的設(shè)備文件即可。在uClinux 下,串行口COM1 和COM2 對應(yīng)的設(shè)備分別為/ dev/ t tyS0 和dev/ t tyS1 。串口的編程步驟如下:

(1) 打開串口, 采用open ( ) 函數(shù)f d = open(“ / dev/ t tyS0” ,O_RDWR| O_NOCTTY) ;(2) 若打開成功, 則對串口進(jìn)行參數(shù)設(shè)置:

tcgetat t r ( f d , &oldtio) ;(3) 清除串口緩沖區(qū),因為串口接收和發(fā)送數(shù)據(jù)是從上一組數(shù)據(jù)之后的緩沖區(qū)開始存放的,為了使先前的數(shù)據(jù)不會重復(fù)出現(xiàn),故清除緩沖區(qū)tcflush( f d , TCIFLUSH) ;(4) 讀寫串口,讀串口采用read ( f d ,sbuf ,B U F_L EN) 函數(shù),寫串口采用write ( f d , sbuf , B U F_L EN) ,其中f d 為設(shè)備打開返回的值, sbuf 為存放發(fā)送或接收數(shù)據(jù)的數(shù)據(jù)組, B U F_ L EN 為數(shù)據(jù)的個數(shù);(5) 讀寫完成后關(guān)閉串口,close ( f d) 。

網(wǎng)絡(luò)通信本質(zhì)就是進(jìn)程間的通信,網(wǎng)絡(luò)地址和端口號結(jié)合在一起,才可以共同確定整個Internet中的1 個網(wǎng)絡(luò)進(jìn)程,網(wǎng)絡(luò)進(jìn)程由套接字確定,程序采用Socket 表示。套接字最常用的有2 種:流式套接字( St ream Socket ) 和數(shù)據(jù)報套接字(DatagramSocket) 。這2 種套接字的區(qū)別在于它們使用不同的協(xié)議。流式套接字使用TCP 協(xié)議,數(shù)據(jù)報套接字使用UDP 協(xié)議。本系統(tǒng)中采用的協(xié)議為TCP 協(xié)議。具體通信步驟如下:

(1) 由socket () 函數(shù)創(chuàng)建偵聽套接字;

(2) 通過bind ( ) 函數(shù)為該套接字分配1 個地址;

(3) 使用listen () 函數(shù)建立和客戶機(jī)的連接,告訴套接字開始偵聽客戶機(jī)的連接請求;

(4) 由accept ( ) 函數(shù)完成實際的連接,創(chuàng)建連接套接字,原來的偵聽套接字將會繼續(xù)偵聽新的連接請求,而新的連接請求可能會通過accept ( ) 函數(shù)的再一次調(diào)用而獲得接受;

(5) 創(chuàng)建連接套接字成功后,便可完成數(shù)據(jù)的發(fā)送與接收任務(wù),數(shù)據(jù)接收由recv () 函數(shù)完成,發(fā)送由send () 函數(shù)完成。

本系統(tǒng)在主程序中創(chuàng)建2 個關(guān)鍵的線程完成數(shù)據(jù)的傳送任務(wù), 分別為Serialt hread 線程和Ethernet t hread 線程。Serialt hread 線程的功能是將串口接收到的數(shù)據(jù)流通過網(wǎng)口發(fā)送出去, 而Ethernet t hread 線程的功能是將網(wǎng)口發(fā)送過來的數(shù)據(jù)流通過串口發(fā)送出去?;赟3C44B0 的串口服務(wù)器系統(tǒng)主程序流程如圖5 所示。

串口服務(wù)器系統(tǒng)中S3C44B0的應(yīng)用設(shè)計
圖5 基于S3C44B0 的串口服務(wù)器系統(tǒng)主程序流程圖

結(jié)語

基于S3C44B0 的串口服務(wù)器系統(tǒng)可以將零散的串口設(shè)備連入以太網(wǎng),實現(xiàn)資源的共享以及遠(yuǎn)程控制功能,基本上滿足現(xiàn)代礦井各監(jiān)控單元的組網(wǎng)需求。該系統(tǒng)控制靈活、成本低、具有較大的擴(kuò)展性,便于實現(xiàn)各種復(fù)雜的控制功能。目前該系統(tǒng)已應(yīng)用到煤礦供電系統(tǒng)饋電開關(guān)的以太網(wǎng)監(jiān)控系統(tǒng)中,大大促進(jìn)了煤礦的生產(chǎn)和網(wǎng)絡(luò)化。

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

    關(guān)注

    75

    文章

    4160

    瀏覽量

    98756
  • RS485
    +關(guān)注

    關(guān)注

    39

    文章

    1233

    瀏覽量

    84076
  • RS232
    +關(guān)注

    關(guān)注

    13

    文章

    808

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    S3c44b0 控制步進(jìn)電機(jī)

    使用S3c44b0控制步進(jìn)電機(jī),需要有正轉(zhuǎn),反轉(zhuǎn),加速減速,勻速功能,哪位大蝦幫幫我,給我個例程,十分感謝了
    發(fā)表于 03-29 23:58

    跪求S3c44b0 u***驅(qū)動

    `各位大蝦,我買了一塊S3c44b0的板子,準(zhǔn)備用DNW燒寫程序時,但是DNW顯示USB:x,在網(wǎng)上找了很久都沒有找到,我用的是win7,所以跪求這個驅(qū)動,如果有的話,請發(fā)到郵箱1159438455@qq.com,萬分感謝!`
    發(fā)表于 07-06 22:16

    求基于S3C44B0的語音錄放系統(tǒng)設(shè)計代碼的mcp工程包

    求大神相助!基于S3C44B0的語音錄放系統(tǒng)設(shè)計,最好有mcp工程包哈
    發(fā)表于 05-10 21:20

    uCOS在S3C44B0上的移植代碼 1.0(源程

    uCOS在S3C44B0上的移植代碼 1.0(源程序)
    發(fā)表于 03-28 09:47 ?39次下載

    基于S3C44B0和μCOS-II 的CAN節(jié)點(diǎn)的設(shè)計

    本文在將嵌入式實時操作系統(tǒng)μCOS-II 移植到S3C44B0 的基礎(chǔ)上,將CAN 總線通訊程序作為一個模塊植入μCOS-II 之中,形成一個CAN 總線智能節(jié)點(diǎn)。闡述了CAN 總線智能節(jié)點(diǎn)的設(shè)計思想,硬件
    發(fā)表于 08-06 10:35 ?14次下載

    基于S3C44B0的U-Boot啟動分析和移植實現(xiàn)

    U-Boot 是sourceforge網(wǎng)站上的一個開源項目,是當(dāng)今比較流行、功能強(qiáng)大的BootLoader,能支持多種體系結(jié)構(gòu)。本文在闡述U-Boot啟動過程之后,對其在S3C44B0上移植過程的要點(diǎn)加以分析
    發(fā)表于 08-27 09:08 ?37次下載

    S3C44B0文手冊,S3C44B0文資料

    S3C44B0文手冊:S3C44B0X 的UART(通用異步收發(fā))單元提供兩個獨(dú)立的異步串行I/O 端口,每個都可以在中斷和DMA 兩種模式下工作。它們支持的最高波特率為115.2
    發(fā)表于 09-10 18:53 ?572次下載

    為何選用SAMSUNG S3C44B0進(jìn)行開發(fā)

    為何選用SAMSUNG S3C44B0進(jìn)行開發(fā)   目前,ARM7芯片在國內(nèi)開發(fā)的潮流是三星公司的S3C44B0S3C4510。這兩款芯片各有側(cè)重:前者著力于PDA 應(yīng)用,芯片內(nèi)部集成了LCD控
    發(fā)表于 02-09 17:57 ?45次下載

    S3C44B0文數(shù)據(jù)手冊

    S3C44B0文數(shù)據(jù)手冊 很多數(shù)字音頻系統(tǒng)進(jìn)入了音頻消費(fèi)市場,包括音頻壓縮唱片,數(shù)字音頻磁帶,數(shù)字聲音處理,和數(shù)字聲音TV。
    發(fā)表于 02-10 12:01 ?128次下載

    S3C44B0在高精度直流開關(guān)電源的應(yīng)用

    S3C44B0在高精度直流開關(guān)電源的應(yīng)用 0 引言   近年來,嵌入式技術(shù)發(fā)展極為迅速,出現(xiàn)了以單片機(jī)、專用嵌入式ARM為核心的高集成度處理
    發(fā)表于 02-25 10:26 ?1177次閱讀
    <b class='flag-5'>S3C44B0</b>在高精度直流開關(guān)電源<b class='flag-5'>中</b>的應(yīng)用

    基于S3C44B0串口服務(wù)器系統(tǒng)的設(shè)計

    為使現(xiàn)有的基于RS232 、RS485 或CAN 總線的串口設(shè)備以以太網(wǎng)的方式組網(wǎng)運(yùn)行,文章介紹了一種基于S3C44B0串口服務(wù)器 系統(tǒng)的設(shè)計,詳細(xì)闡述了
    發(fā)表于 09-01 15:16 ?1897次閱讀
    基于<b class='flag-5'>S3C44B0</b>的<b class='flag-5'>串口服務(wù)器</b><b class='flag-5'>系統(tǒng)</b>的設(shè)計

    S3C44B0的初始化程序的理解

    S3C44B0的初始化程序就是初始化各個關(guān)鍵的寄存,建立中斷向量,然后轉(zhuǎn)移到主函數(shù)去執(zhí)行程序。不過S3C44B0不支持地址映射,所以程序不COPY到RAM種執(zhí)行。S3C44B0初始化
    發(fā)表于 09-28 11:32 ?1792次閱讀

    基于S3C44B0開發(fā)板的圖像采集方法研究

    本文簡要介紹嵌入式系統(tǒng),并詳細(xì)闡述了基于三星公司ARM7嵌入式處理芯片S3C44B0為核心構(gòu)成的開發(fā)板,通過uCLinux開發(fā)環(huán)境,運(yùn)用Omni Vision511芯片攝像頭采集圖片的硬件平臺設(shè)計和軟件實現(xiàn)
    發(fā)表于 05-29 10:32 ?2230次閱讀
    基于<b class='flag-5'>S3C44B0</b>開發(fā)板的圖像采集方法研究

    基于S3C44B0開發(fā)板進(jìn)行Blob的移植操作和步驟

    Bootloader是嵌入式系統(tǒng)軟件開發(fā)的第一個環(huán)節(jié),它緊密地將軟硬件銜接在一起,對于一個嵌入式設(shè)備后續(xù)的軟件開發(fā)至關(guān)重要。Blob是一款功能強(qiáng)大的Bootloader,S3C44B0是三星公司一款基于ARM7TDMI的嵌入式通用處理
    的頭像 發(fā)表于 10-04 17:08 ?2227次閱讀
    基于<b class='flag-5'>S3C44B0</b>開發(fā)板進(jìn)行Blob的移植操作和步驟

    基于S3C44B0的LCD控制及觸摸屏接口設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于S3C44B0的LCD控制及觸摸屏接口設(shè)計.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 09:45 ?0次下載
    基于<b class='flag-5'>S3C44B0</b>的LCD控制及觸摸屏接口設(shè)計