在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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è)計(jì)應(yīng)用 > 搭建使用 RTX51-Tiny 的 C51 Keil 項(xiàng)目環(huán)境

            搭建使用 RTX51-Tiny 的 C51 Keil 項(xiàng)目環(huán)境

            作者: 時間:2016-11-28 來源:網(wǎng)絡(luò) 收藏

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

            選擇芯片庫,我這里用的是 STC:

            Keil 默認(rèn)的芯片庫里面,是沒有 STC 的芯片的,可以按照下面的步驟將 STC 的芯片庫加入到 keil 中:

            • 從宏晶官網(wǎng)下載 UV3.CDB
            • 將UV3.CDB改名為STC.CDB,拷貝到Keil安裝目錄的UV4子目錄下
            • 修改Keil安裝目錄下的TOOLS.ini文件,在[C51]上方添加:CDB0=UV4STC.CDB("STC Chip")
            • 建立新項(xiàng)目,然后就可以選擇對應(yīng)的芯片數(shù)據(jù)庫了

            (個人筆記:這部分完全可以用最新版的STC-ISP,選項(xiàng)卡“keil仿真設(shè)置”,點(diǎn)“添加STC仿真驅(qū)動 到Keil中添加型號和頭文件到keil中”,就行了,簡單易行)

            然后,選擇芯片:

            問你是否需要自動包含啟動代碼,選“否”(除非你要改程序起始地址什么的):

            改改 Target 的名字,看上去好看些,然后設(shè)置項(xiàng)目屬性:

            寫好晶振頻率并選擇“RTX-51 Tiny”作為操作系統(tǒng),這樣 Keil 會自動將 lib 文件編譯到輸出中(Memory Model 用 Small 比較好,免得每次聲明變量都寫 data 修飾):

            然后選擇 output、listing 目錄到前面建立好的目錄結(jié)構(gòu):

            然后,忽略調(diào)用警告信息(這個警告會提醒你哪些函數(shù)定義了但是未被調(diào)用,很討厭?。?/p>

            設(shè)置好調(diào)試選項(xiàng)(STC12A5C60S2 支持 ISD-51 進(jìn)行在線調(diào)試,不過,實(shí)際用下來用處不大,外圍硬件模塊根本不會跟著斷點(diǎn)等你,還是先用軟件模擬調(diào)試好了再說):

            接下來,將常用的庫文件拖到 lib 目錄中:

            • ISD51.h,ISD51.A51 用于在線調(diào)試
              和串口 0 沖突,慎用
            • stc12c51a.h 單片機(jī)自帶的頭文件
            • Conf_tny.A51
              RTX-51 Tiny 的配置程序

            Conf_tny.A51 還是需要做點(diǎn)兒修改的:

            • INT_CLOCK,定義每個計(jì)時中斷對應(yīng)的時鐘周期數(shù),默認(rèn) 10000,我改成 1000 了 ;)
              這個值會影響 os_wait 第二個參數(shù)的長短。例如,ow_wait(K_TMO, 5, 0) 等待 5 個計(jì)時周期,也就是等待 5000 個時鐘周期。
            • TIMESHARING,每個任務(wù)分到的時鐘中斷數(shù)量。默認(rèn)是 5。
              這樣,每個任務(wù)都會被分配 5000 個時鐘周期的任務(wù)時間,到期以后,任務(wù)將被掛起,其它處于 READY 狀態(tài)的任務(wù)會運(yùn)行。
              如果這個值是 0,那么,Round Robin 的任務(wù)輪詢算法會停止,必須你自己手動 os_send_signal 或者 os_switch_task 來切換任務(wù)。某些時候,這樣會提高實(shí)時性。
            • RAMTOP。指定了可用 RAM 的頂部地址,默認(rèn)是 0FFH,即 256 字節(jié) RAM。
              就 STC 這塊芯片來說,這樣的默認(rèn)設(shè)置在任務(wù)代碼非常短小時沒有問題,但是,如果任務(wù)代碼較長,建議還是改小點(diǎn)兒,比如 0CFH。原因不明,但可能是因?yàn)楦?128 字節(jié) RAM 的直接存取方式是讀寫的特殊寄存器,我發(fā)現(xiàn)會和 RTX-51 Tiny 沖突,產(chǎn)生error 65 access violation at 0x3480之類的運(yùn)行錯誤。

            敲一段代碼先跑跑(軟件調(diào)試,Ctrl+F5):

            可以看見監(jiān)視窗口里面,c0, c1 亂跳:

            再來一段代碼,看看 Keil 的高級功能(邏輯分析):

            現(xiàn)在可以看波形了:

            環(huán)境搞定,記得提交到配置庫。下面就可以開始移植代碼到新的基于 RTX-51 Tiny 的項(xiàng)目中了。



            上一頁 1 2 下一頁

            關(guān)鍵詞: RTX51-TinyC51Keil項(xiàng)目環(huán)

            評論


            相關(guān)推薦

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

            關(guān)閉