<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA+DSP+ARM的數(shù)據(jù)傳送總線變換器

          基于FPGA+DSP+ARM的數(shù)據(jù)傳送總線變換器

          作者: 時間:2010-09-02 來源:網(wǎng)絡 收藏

            4 系統(tǒng)軟件設計

          本文引用地址:http://www.ex-cimer.com/article/191587.htm

            4.1 嵌入式操作系統(tǒng)

            在該總線變換器中,實時數(shù)據(jù)壓縮的任務由完成。 S3C4510B完成與PC之間的以太網(wǎng)通信,其軟件實現(xiàn)所要求的實時性、可靠性和復雜性使得選擇一種帶有TCP/IP協(xié)議包的嵌入式實時操作系統(tǒng)成為必需,而μCLinux是一個帶有完整的TCP/IP協(xié)議的操作系統(tǒng),在μCLinux中加入實時RT-Linux模塊以滿足對嵌入式操作系統(tǒng)的實時性要求。

            4.2 驅(qū)動和應用程序的開發(fā)

            基于μCLinux操作系統(tǒng)的硬件驅(qū)動和應用程序的開發(fā)是在交叉編譯環(huán)境中進行的,首先在PC機上開發(fā),然后移植到目標機上進行調(diào)試并最終固化到目標機上。所開發(fā)的硬件驅(qū)動有以太網(wǎng)卡控制器驅(qū)動、LCD驅(qū)動、HPI驅(qū)動等驅(qū)動程序。系統(tǒng)軟件結(jié)構如圖4所示。


            在μClinux操作系統(tǒng)上運行三個任務:讀取壓縮數(shù)據(jù)、通過以太網(wǎng)發(fā)送數(shù)據(jù)、接收和執(zhí)行來自遠端PC機的命令。其中讀取壓縮數(shù)據(jù)任務對實時性有要求,它通過中斷處理程序來實現(xiàn),而其他的兩個任務則通過用戶進程來實現(xiàn)。以太網(wǎng)發(fā)送數(shù)據(jù)的任務和讀取壓縮數(shù)據(jù)的任務共享一個緩沖區(qū),通過ioctl函數(shù)在其間傳遞緩沖區(qū)雙向鏈表的地址。所以需要為數(shù)據(jù)處理模塊上的通信接口HPI注冊一個驅(qū)動程序,注冊驅(qū)動程序的函數(shù)是:

            result=register_chrdev(HPI_MAJOR,hpi,hpi_fops)

            驅(qū)動程序的主要結(jié)構如下:

            struct file_operations hpi_fops=

            {

            owner: THIS MODULE,

            open: hpi_open,

            read: hpi_read,

            write: hpi_write,

            ioctl: hpi_ioctl,

            mmap:hpi_mmap,

            release:hpi_release,

            };

            HPI驅(qū)動程序編寫完成后,將驅(qū)動程序源代碼置于../linux-2.4.x/driver/char目錄下,同時修改同級目錄下的Makefile,在../linux-2.4.x/driver/char/Makefile中加入Obj_y +=hpi.o

            同時,為了能夠在?滋Clinux啟動時自動初始化此字符設備,還需要修改 ../linux-2.4.x/driver/char/men.c文件,在其中加入:

            (1)新添加的字符驅(qū)動程序初始化函數(shù)聲明:extern void hpi_init(void);

            (2)在字符設備統(tǒng)一初始化函數(shù)int _init chr_dev_init(void)中調(diào)用新設備的初始化函數(shù),需要在int _init chr_dev_init(void)中加入語句:hpi_init();

            在函數(shù)int _init chr_dev_init(void)中,字符設備的初始化函數(shù)將被統(tǒng)一調(diào)用,并完成字符驅(qū)動file_operations數(shù)據(jù)結(jié)構的注冊,初始化之后就可以使用HPI字符設備了。

            本文所設計總線變換器,不僅解決了由于傳輸距離遠而引起的信號畸變問題,而且滿足了信息傳遞的實時性要求,同時具有網(wǎng)關功能和嵌入式Web功能,能確保系統(tǒng)安全接入Internet。


          上一頁 1 2 3 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();