新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 從定時器開始說中斷

        從定時器開始說中斷

        作者: 時間:2013-04-10 來源:網絡 收藏

        13 006BH

        14 0073H

        15 007BH

        16 0083H

        17 008BH

        18 0093H

        19 009BH

        20 00A3H

        21 00ABH

        22 00B3H

        23 00BBH

        24 00C3H

        25 00CBH

        26 00D3H

        27 00DBH

        28 00E3H

        29 00EBH

        30 00F3H

        31 00FBH

        看到了吧,中斷號就是對應中斷進入地址的,至于什么是中斷進入地址?那就是發生某個中斷的時候單片機自動跳進的一個地址段了.

        對于0來說,就是000BH,所以對應中斷號1。其他中斷地址看看書就知道了。由上面的表可以看出,KEILC支持32個中斷,不過到現在為止,我還沒看到過有51單片機有32個中斷的:)

        好了,進入調試實踐中了,把上面的代碼敲進去吧,又或者直接下載我這個編譯好的工程:

        timer0

        進入工程后,你需要設置點東西:

        Debug Information是調試信息,你選擇這個東西,才可以在C語言上進行仿真(不管是軟還是硬仿真),否則你的仿真環境是匯編的!

        軟仿真設置:

        Go till main()就是在仿真的時候直接跳到MAIN函數上。如果沒有選,那就由0地址開始運行。這里說個概念,在C51中,mian()函數并不代表0地址的,要知道,keilc在一開始的時候是需要經過比較多的初始化,例如清空RAM內容,設置堆棧等東西,這些都是不需要你做的,你的用戶程序也不包括這些,做完這些初始化后,KEIL才自動跳到你的mian進行處理.

        軟件仿真是可以選晶振的,我們選的12M。下面的這些東西你就按圖中的來選吧,具體內容以后再說。

        如果編譯成功的話,那么我們就開始第一次的軟件仿真咯:

        上面的是已經進入仿真狀態的了,因為我們選擇了Debug Information所以可以在C下面調試,也因為選擇了Go till main()我們可以看到一開始就有個箭頭指著main()的第一句話。而程序旁深色的東東,也就是我圈著的東西,就是有效代碼段,程序只會在那里跑,也就是那個黃色箭頭只會在那個區域跑。現在你已經可以仿真的了,可以選單步,全速來運行了。關于KEIL的具體仿真,將在下一章為大家解說。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 金昌市| 沽源县| 兰考县| 阜平县| 兴化市| 青河县| 海宁市| 蓝山县| 日喀则市| 靖远县| 太仆寺旗| 如皋市| 昭平县| 云龙县| 当雄县| 色达县| 博野县| 图木舒克市| 衢州市| 乌拉特前旗| 余姚市| 哈密市| 新源县| 织金县| 青川县| 宜城市| 苏州市| 固原市| 横峰县| 五寨县| 阳山县| 梨树县| 明光市| 五家渠市| 滕州市| 金昌市| 武川县| 巢湖市| 古蔺县| 广河县| 巩留县|