新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MSP430 單片機C語言和匯編語言混合編程

        MSP430 單片機C語言和匯編語言混合編程

        作者: 時間:2012-03-19 來源:網絡 收藏

        4.2.2 中斷服務程序
        ;**********************************************************************
        ; 文件名: wdt_int.s43
        ; C源程序
        ; 看門狗定時器中斷服務程序
        ;***********************************************************************
        NAME WDT_ISR

        #include msp430x14x.h ; 頭文件
        ; ==============================================================
        ; 看門狗定時器中斷服務程序
        ;================================================================
        PUBLIC wdt_isr ; 導出函數名給C語言函數
        RSEG CODE
        wdt_isr
        xor.b #001h,P1OUT ; 觸發 P1.0,led 亮滅轉換
        reti ; 中斷返回
        ;================================================================
        COMMON INTVEC(1) ; 中斷向量段
        ;================================================================
        ORG WDT_VECTOR
        DW wdt_isr

        END

        5 結束語


        以上方法已用于筆者的實際項目,取得良好效果,但是要注意編譯器的某些選項對程序生成代碼是有影響的。例如:匯編語言函數對標號大小寫敏感與否,影響C語言函數的變量名、程序名。若使用ROM MONTIOR,則C編譯器要用-ur45選項編譯,并且匯編語言中只要使用R4和R5,都要加以保護,否則無法返回ROM MONTIOR。

        參考文獻
        [1] IAR C Compiler Programming Guide
        [2] IAR Assembler, Linker and Librarian Programming Guide
        [3] x3xx Family User’s Guide, literature number SLAU012
        [4] MSP430x1xx Family User’s Guide, literature number SLAU049
        [5] MSP430x4xx Family User’s Guide, literature number SLAU056

        c語言相關文章:c語言教程



        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 东乌珠穆沁旗| 吉林省| 洪雅县| 深泽县| 高要市| 台东市| 隆德县| 察隅县| 桑植县| 五莲县| 商都县| 杂多县| 屏南县| 西盟| 怀化市| 金秀| 忻城县| 南开区| 耒阳市| 康乐县| 资溪县| 通江县| 日土县| 朔州市| 大丰市| 孟州市| 吉首市| 大姚县| 饶阳县| 朔州市| 余姚市| 滕州市| 莱芜市| 吉林市| 南汇区| 和田县| 阳东县| 龙岩市| 新绛县| 雅安市| 岢岚县|