在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于S3C2440和嵌入式Linux的擴展串口設(shè)計

            基于S3C2440和嵌入式Linux的擴展串口設(shè)計

            作者: 時間:2011-07-18 來源:網(wǎng)絡(luò) 收藏

            2)增加的物理信息
            在common-smdk.c文件中增加8個元素的structplat_serial8250_port結(jié)構(gòu)數(shù)組,并加入數(shù)據(jù)項,如每個使用的物理地址和中斷號等信息,使系統(tǒng)啟動后能找到。下面以第1片TL16c554A的第1個串口CSA為例說明如何在源程序中添加數(shù)據(jù)結(jié)構(gòu):
            f.JPG
            g.JPG
            3)加入內(nèi)核設(shè)備列表中
            把串口設(shè)備(s3c_deviee_8250代表TL16c550A芯片)加入到內(nèi)核的platform_device結(jié)構(gòu)中
            static struct platform_device_initdata*smdk_devs[]={ s3c_device_8250,};

            3.2 增加開發(fā)板代碼使串口可用
            主要修改drivers/serial/8250.c文件,使BANK5以8位的位寬訪問TL16c554A芯片,并指定芯片的中斷觸發(fā)方式。
            1)增加頭文件asm/areh-s3c2410/regs-mem.h,定位TL16c554A所在的地址空間;
            2)設(shè)置存儲控制器的BANK5的位寬(8位)
            在serial8250_init(void)初始化函數(shù)中把存儲控制器的位寬寄存器設(shè)為0X22011110;
            3)指定中斷觸發(fā)方式
            因為TL160554A的中斷信號INTA、INTB、INTC、INTD為高電平有效,所以需將INTA、INTB、INTC、INTD上升沿觸發(fā),在調(diào)用中斷函數(shù)req-uest_irq前應(yīng)設(shè)置中斷標志為IRQF_TRIGGER_RISING。
            3. 3 增加內(nèi)核配置項
            在內(nèi)核源代碼的driver/serial/Kconfig中增加config條目CONFIG_SERIAL_EXTEND_S3C24XX,內(nèi)核編譯時選定該選項可以把驅(qū)動程序編譯進系統(tǒng)中。

            4 測試串口
            測試的工作包括編譯內(nèi)核、在根文件系統(tǒng)中增加設(shè)備文件、修改系統(tǒng)初始化腳本、測試串口幾個步驟。圖6為串口測試流程圖。

            本文引用地址:http://www.biyoush.com/article/150465.htm

            h.JPG


            1)配置、編譯內(nèi)核
            配置內(nèi)核時增加配置選項CONFIG_SERIAL_EXTEND_S3C24XX,執(zhí)行“make uImage”命令,編譯內(nèi)核。
            2)修改根文件系統(tǒng)
            系統(tǒng)中通過設(shè)備文件來訪問具體的物理設(shè)備,故使用mknod命令,增加ttyS0,ttyS1,…,ttyS7設(shè)備文件,分別對應(yīng)兩片TL16c554A的8個串口。命令格式如下:
            # mknod/dev/ttyS0 c 4 64
            3)修改配置文件
            在/etc/inittab配置文件中添加ttyS0::askfirat:-/bin/sh
            4)測試
            把第一個串口與主機相連,設(shè)置U-Boot的啟動參數(shù)為:noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttyS0,重新啟動開發(fā)板,就能在超級終端下看到linux系統(tǒng)啟動信息了。

            5 結(jié)束語
            本文提供了在原有TQ2440開發(fā)板中8個串口,采用中斷服務(wù)的方案,提高了ARM9系統(tǒng)運行效率。在此基礎(chǔ)上可以進一步擴大,將串口擴展到12個、16個或者更多。

            linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

            上一頁 1 2 3 4 下一頁

            評論


            相關(guān)推薦

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

            關(guān)閉