中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

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

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

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

          4 系統(tǒng)軟件設(shè)計(jì)

        本文引用地址:http://www.antipu.com.cn/article/191587.htm

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

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

          4.2 驅(qū)動(dòng)和應(yīng)用程序的開發(fā)

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


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

          result=register_chrdev(HPI_MAJOR,hpi,hpi_fops)

          驅(qū)動(dòng)程序的主要結(jié)構(gòu)如下:

          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ū)動(dòng)程序編寫完成后,將驅(qū)動(dòng)程序源代碼置于../linux-2.4.x/driver/char目錄下,同時(shí)修改同級(jí)目錄下的Makefile,在../linux-2.4.x/driver/char/Makefile中加入Obj_y +=hpi.o

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

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

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

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

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


        上一頁 1 2 3 下一頁

        關(guān)鍵詞: FPGA DSP ARM 數(shù)據(jù)傳送

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉