久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7086|回復: 15
收起左側

STC8單片機遠程升級

  [復制鏈接]
ID:99580 發表于 2019-3-7 15:17 | 顯示全部樓層 |閱讀模式
STC8A8K64,片內eeprom通過官方的ISP程序設置為64k,升級包遠程發送到片外flash,有40多k。升級代碼在0xE000處。原理是用升級代碼擦除0xE000以下的空間后再把升級包寫進去,重啟完成升級。
首先擦除片內eeprom,從0x0000開始,一直擦到0x4e00所在扇區都沒問題,下個擦除地址是0x5000,就死機了。
要是升級包小于20k就沒問題,擦除寫入重啟一切正常。只要操作0x5000就死機。問了官方技術支持,說這種升級方式沒問題。為什么0x5000死機不知道,反正這種方式沒問題,只要設置了64k的eeprom,整個代碼空間都可以擦,小心別擦到自己就行。
回復

使用道具 舉報

ID:99580 發表于 2019-3-7 15:18 | 顯示全部樓層
死機跟看門狗沒關系
回復

使用道具 舉報

ID:123289 發表于 2019-3-8 08:50 | 顯示全部樓層
要點:
自己的程序中負責升級的部分不是很長,運行升級程序時,先將這部分程序復制到擦除不到的區域,而后跳再去運行升級,這樣就可以了。
好就是前面最后一句話:“小心別擦到自己就行。”
回復

使用道具 舉報

ID:99580 發表于 2019-3-8 11:33 | 顯示全部樓層
本帖最后由 isis69 于 2019-3-8 11:55 編輯

主程序地址是從0到A370,負責升級的程序地址從E000到E16B。升級時程序在E000到E16B執行,沒有使用函數和中斷,總中斷也關了,看門狗也關了。
現在小于20k的程序,遠程升級是成功的。
回復

使用道具 舉報

ID:99580 發表于 2019-3-8 11:37 | 顯示全部樓層
各個程序段的地址在主程序運行時可以通過串口命令行讀代碼區內容來查看,驗證過的。
回復

使用道具 舉報

ID:301968 發表于 2019-4-21 14:40 | 顯示全部樓層
樓主能詳細說說細節嗎,我也在研究這個問題 ,總不成功,是不是程序寫錯了。
回復

使用道具 舉報

ID:99580 發表于 2019-4-23 11:55 | 顯示全部樓層
鄧文雄ABC 發表于 2019-4-21 14:40
樓主能詳細說說細節嗎,我也在研究這個問題 ,總不成功,是不是程序寫錯了。

原理就是整個代碼空間都設置為flash空間,用戶程序可以在運行時修改flash內容。
具體辦法:收到的升級代碼放在外部flash,用戶程序擦除內部flash(即舊代碼),將外部flash的升級代碼寫入內部falsh,最后重啟。
用戶程序分成兩部分,正常的應用部分和升級部分。兩部分分開存放,升級部分只擦除、寫入應用部分的flash空間。
回復

使用道具 舉報

ID:400402 發表于 2019-10-15 11:07 | 顯示全部樓層
我也用的是這個芯片;研究了兩天兩夜不合眼;終于搞定;有成就感 ;程序有33K;先把HEX文件轉成BIN文件;經測試;BIN文件傳輸容易亂碼;于是轉成了TXT文件;但是轉成TXT后;文件大了一倍;放到FTP服務器上;監控程序從TFP服務器上下載;保存到片外FLASH;用的是W25Q32;下載完成后;再升級;完全沒問題;升級監控程序也可以用中斷;但是不能和主程序重疊(如用戶程序用了定時0;監控程序就不能用定時0;不然跳轉會出問題);升級監控程序我只用了定時0;主要是因為定時0的跳轉地址離開頭最近;空間利用率最高;用定時器0模擬了串口1和串口2;串口1連接電腦方便調試;串口2連接接GSM模塊;用于下載升級包;在擦除和寫入第一他扇區時要關中斷;把升級監控程序的主跳轉地址和定時器0的跳轉地址重新寫入數組;寫完第一個扇區就可以開中斷了;中斷的跳轉地址都放在第一扇區的前面幾行;
回復

使用道具 舉報

ID:400402 發表于 2019-10-15 11:18 | 顯示全部樓層
我也是用的這個芯片;研究了兩天兩夜沒合眼;終于成功了;
用戶程序有33K;把HEX文件轉成BIN;經測試發現BIN文件傳輸容易出現亂碼;后轉成TXT文件;但轉換后文件大了一倍;但是傳輸穩定;把升級文件放到FTP服務器上;升級監控程序通過GSM連接FTP服務器;下載升級文件后;存儲在片外FLASH;我用的是W25Q32;全部下載完成后;需要將數據轉成16進制;然后才能寫入;升級監控程序也可以使用中斷;只要不和用戶程序重疊就可以;監控升級程序我用了定時器0;使用定時器0模塊了串口1和串口2;串口1連接電腦方便調試;串口2連接GSM模塊下載升級文件;在擦除第一扇區前一定要關中斷;寫入第一扇區數據后;就可以開中斷了;因為中斷跳轉地址都放在第一扇區的前面幾行;寫入第一扇區時;一定要將升級監控程序的主跳轉地址和定時器0的跳轉地址重寫進去;不然升級控制程序將被破壞;
回復

使用道具 舉報

ID:144776 發表于 2019-10-17 21:54 | 顯示全部樓層
moneylhc 發表于 2019-10-15 11:18
我也是用的這個芯片;研究了兩天兩夜沒合眼;終于成功了;
用戶程序有33K;把HEX文件轉成BIN;經測試發現B ...

佩服!佩服!
回復

使用道具 舉報

ID:154265 發表于 2021-1-5 14:48 | 顯示全部樓層
你好!能否分享一下老大你這個成功的硬件和軟件,兄弟也想學習一下
回復

使用道具 舉報

ID:154265 發表于 2021-1-5 14:52 | 顯示全部樓層
程序遠程升級,兄弟也想學一下,能否賞賜兄弟一下成功的硬件和軟件資料,叩謝!
回復

使用道具 舉報

ID:154265 發表于 2021-1-5 14:52 | 顯示全部樓層
最好把資料發帖里,共同分享一下!
回復

使用道具 舉報

ID:414556 發表于 2021-1-5 22:53 | 顯示全部樓層
設置接收校驗,如果錯了重傳
回復

使用道具 舉報

ID:866290 發表于 2022-7-21 21:42 | 顯示全部樓層
moneylhc 發表于 2019-10-15 11:07
我也用的是這個芯片;研究了兩天兩夜不合眼;終于搞定;有成就感 ;程序有33K;先把HEX文件轉成BIN文件;經 ...

分析下軟件吧,我們學習下。
回復

使用道具 舉報

ID:879348 發表于 2022-7-22 08:24 | 顯示全部樓層
沒什么問題的,認真檢查寫地址
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 蜜桃视频成人 | 日韩精品一区二区三区中文字幕 | 日本欧美黄色片 | 国产精品视频一区二区三区不卡 | 看一级毛片 | 色婷婷一区二区三区四区 | 91精品久久久久久久 | 欧美成人a | 黄色免费在线观看网站 | 日韩中文字幕视频在线 | 亚洲一区二区三区欧美 | 午夜视频网站 | 日韩毛片在线视频 | 日韩毛片 | 91高清免费观看 | 三a毛片 | 亚洲va欧美va人人爽午夜 | 国产一区二区久久 | 亚洲人成免费 | 欧洲av在线 | 午夜精品福利视频 | 亚洲国产精品一区 | 日韩视频在线免费观看 | 亚洲国产一区二区三区在线观看 | 一区二区国产精品 | 欧美日韩精品一区二区三区四区 | 一级黄色夫妻生活 | 天天操 天天操 | 亚洲啪啪 | 国产视频二区 | 香蕉一区 | 国产精品99久久久久久久久久久久 | 国产精彩视频在线观看 | 99视频免费在线 | 久草新在线 | 日日骚网 | 亚洲免费一 | 国产一区二区三区高清 | av黄色免费在线观看 | 蜜月aⅴ国产精品 | 欧美亚洲视频 |