99久久久久国产-99久久久久国产精品免费-99久久久久久久-99久久久免费精品免费-99久久免费费视频在线观看

131 1300 0010
其他
當前位置: 首頁>> 元件技術>>其他>>
  • 導航欄目
  • 二極管
  • 整流橋
  • MOS管
  • 其他
  • msp430單片機程序升級的方法有哪些
    msp430單片機程序升級的方法有哪些
  • msp430單片機程序升級的方法有哪些
  •   發布日期: 2019-06-04  瀏覽次數: 1,335

    最近在搞430的FLASH的自定義法(利用串口)程序燒寫,燒寫完成后斷電復位,reset按鍵就可以運行新的程序。但是和學長交流了一下,這種方法不夠好,希望有一種軟復位的方式。于是百度了一下,都是些對看門狗進行寫入特殊值使得430的cpu復位。反正個人是沒有采用。


    msp430單片機程序升級的方法有哪些

     

    因為在搞程序的燒寫下載,所以看了一下430的BSL??吹嚼锩嬗幸欢卧?,關于從C代碼中啟動BSL的方法。如下:

    從一個外部應用中啟動BSL

    將程序計數器設定到內存為位置0x1000 來啟動BSL。堆棧一直被復位,而RAM 被清空。應該注意的是,GIE 位未被禁用,所以如果不需要中斷的話,這一步應該通過調用應用來完成,并且如果它們被使用的話,這一步應該從“返回BSL”返回。

    由于堆棧被復位,位置0x1000 也可以被作為一個C 功能進行調用,示例代碼如下:

    ((void (*)())0x1000)()

    于是想到,既然可以從C里面跳轉到0x1000,那么也可以跳轉到其他地址,比如復位地址了。

    以6638為例。430的復位中斷矢量地址是0xFFFE,里面存儲了將要跳轉的物理地址。6638的代碼區起始地址是0x8000,正常復位是先進入復位中斷,然后PC指針導入地址0x8000,然后從0x8000開始執行代碼。那么軟復位則是,執行((void (*)())0x8000)(),直接PC指針被導入0x8000的地址,而這個地址正好是6638的代碼區起始地址,于是軟復位了。個人分析一下這個指令,如有錯誤敬請大神們指正。

    從代碼上講,(void (*)()是一個指向空函數的指針,((void (*)())0x8000)()是將0x8000強制轉換為函數指針后進行函數調用,于是0x8000便被送入了PC指針。

    對于其他的430單片,去查其數據手冊FLASH段,弄清其代碼區的開始地址,也可以用這個方法軟復位了。

    實測,IAR,CCS下編譯、實踐通過。


  • ·上一篇:
    ·下一篇:
  • 其他關聯資訊
    深圳市日月辰科技有限公司
    地址:深圳市寶安區松崗鎮潭頭第二工業城A區27棟3樓
    電話:0755-2955 6626
    傳真:0755-2978 1585
    手機:131 1300 0010
    郵箱:[email protected]

    深圳市日月辰科技有限公司 版權所有:Copyright?2010-2023 www.qingjujia.cn 電話:13113000010 粵ICP備2021111333號
    主站蜘蛛池模板: 亚洲精品人成网在线播放蜜芽 | 欧美三集片| 好黄好猛好爽好痛的视频 | 五月天爱爱 | 日一区二区| 成人黄色激情网站 | 国产无卡一级毛片aaa | 欧美女同视频激情 | 九九九九热精品免费视频 | 亚洲加勒比久久88色综合一区 | 人人做天天爱夜夜爽中字 | 黄 色 片 在 线 看 | 尤物视频在线观看网址 | 国内外成人免费视频 | 亚洲精品视频在线 | 久热在线播放中文字幕 | 亚洲福利院 | 免费视频不卡一区二区三区 | 中国女人野外做爰视频在线看 | 国产国产人成免费视频77777 | 国产精品v在线播放观看 | 99久久精品国产麻豆 | 国产高清在线精品一区 | 国产乱人伦偷精品视频不卡 | 欧美精品黄页在线观看大全 | 色播视频在线观看免费 | 国产成人精品三区 | 桃色视频网 | 久久草在线观看视频 | 1000部又爽又黄无遮挡的视频 | 黄色一级大片 | 亚洲第一页综合 | 51精品视频免费国产专区 | 欧美日韩国产成人综合在线影院 | 成人免费久久精品国产片久久影院 | 婷婷国产 | 特级毛片aaaaaa蜜桃 | 亚洲美日韩 | 成 人 免费 黄 色 视频 | 黄色一级片在线播放 | 国产精品国产三级国快看 |