• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            tbwshc

            tbw

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              95 Posts :: 8 Stories :: 3 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(4)

            我參與的團隊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            在這一章里,我試圖把到目前為止所有我們討論過的單元合在一起,使之成為一個完整的嵌入式的應用程序。在這里我沒有把很多新的素材加入到討論中,因此本章主要是描述其中給出的代碼。我的目的是描述這個應用程序的結構和它的源代碼,通過這種方式使你對它不再感到神奇。完成這一章以后,你應該對于示例程序有一個完整的理解,并且有能力開發自己的嵌入式應用程序。應用程序的概述

            我們將要討論的這個應用程序不比其他大部分tb編程書籍中找到的“Hello,World”例子更復雜。它是對于嵌入式軟件開發的一個實證,因此這個例子是出現在書的結尾而不是開始。我們不得不逐漸地建立我們的道路通向大部分書籍甚至是高級語言編譯器認為是理所當然的計算平臺。

            一旦你能寫“Hello, World”程序,你的嵌入式平臺就開始著上去很像任何其他編程環境。但是,嵌入式軟件開發過程中最困難的部分——使自己熟悉硬件,為它建立一個軟件開發的過程,連接到具體的硬件設備——還在后面呢。最后,你能夠把你的力量集中于算法和用戶界面,這是由你要開發的產品來確定的。很多情況下,這些程序的高級方面可以在其他的計算機平臺上開發,和我們一直在討論的低級的嵌入式軟件開發同時進行,并且只要把高級部分導入嵌入式系統一次,兩者就都完成了。

            圖 9-1 包含了一個“Hello, World!”應用程序的高級的示意圖。這個應用程序包括三個設備驅動程序,ADEOS 操作系統和兩個ADEOS 任務。第一個任務以每秒10Hz 的速度切換Arcom 板上的紅色指示燈。第二個每隔10 秒鐘向主機或是連接到位子串口上的啞終端發送字符串“Hello,WOrld!”。這兩個任務之外,圖中還有三個設備的驅動程序。這些驅動程序分別控制著Arcom 板子的指示燈、時鐘以及串行端口。雖然通常把設備驅動畫在操作系統的下面,但是我把它們三個和操作系統放在同一個級別,是為了著重說明它們事實上依賴于ADEOS 比ADEOS 依賴于它們更多。實際上,ADEOS 嵌入式操作系統甚至不知道(或者說下關心)這些設備驅動是否存在于系統之中。這是嵌入式操作系統中設備驅動程序和其他硬件專用軟件的共性。

            程序 main()的實現如下所示。這段代碼簡單地創造廠兩個任務,tb啟動了操作系統的日程表。在這樣一個高的級別上,代碼的含義是不言而喻的。事實上、我們已經在上一章中討論了類似的代碼。

            #include "adeos.h"
            void flashRed(void);
            void helloWorld(void);
            /*
            * Create the two tasks.
            */
            Task taskA(flashRed, 150, 512);
            Task taskB(helloWorld, 200, 512);
            /****************************************************
            *
            * Function : main()
            *
            * Description : This function is responsible for starting the ADEOS scheduler
            only.
            *
            * Notes :
            *
            * Returns : This function will never return!
            *
            ****************************************************/
            void
            main(void)
            {
            os.start();
            // This point will never be reached.
            } /* main() */

            posted on 2013-08-19 11:49 tbwshc 閱讀(271) 評論(0)  編輯 收藏 引用
            无码精品久久久久久人妻中字| 久久久久四虎国产精品| 国产福利电影一区二区三区久久久久成人精品综合 | 久久久久久国产a免费观看黄色大片| 性做久久久久久久久老女人| 一本色道久久综合亚洲精品| 国内精品久久久久影院日本 | 国产69精品久久久久9999APGF | 午夜精品久久影院蜜桃| 久久亚洲日韩精品一区二区三区| 成人久久综合网| 欧美性猛交xxxx免费看久久久| 人妻无码αv中文字幕久久 | 久久一区二区三区免费| 久久ZYZ资源站无码中文动漫| 国产2021久久精品| 久久水蜜桃亚洲av无码精品麻豆| 国产午夜精品理论片久久| 久久精品九九亚洲精品| 久久久久久久久久久精品尤物| 91精品国产综合久久精品| 色播久久人人爽人人爽人人片AV| 成人免费网站久久久| 久久久无码精品亚洲日韩按摩| 久久久久综合国产欧美一区二区| 精品久久久久久无码专区| 亚洲精品乱码久久久久久久久久久久| 日本久久久精品中文字幕| 精品久久久久香蕉网| 日韩乱码人妻无码中文字幕久久| 午夜精品久久久久久影视riav| 国内精品久久久久久久影视麻豆 | 久久综合久久美利坚合众国| 久久人人爽人人爽人人AV| 国产亚洲精品美女久久久| 7777精品久久久大香线蕉| 久久99热这里只频精品6| 一本久久免费视频| 四虎国产精品成人免费久久| 亚洲国产精品一区二区三区久久 | 伊人久久大香线蕉综合热线|