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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

一種利用串口51單片機遠程升級 OTA

查看數: 13164 | 評論數: 31 | 收藏 30
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2020-2-15 18:29

正文摘要:

      想想來這個論壇挺久了,也在這學了不少東西,本著回饋論壇,回饋網友的心態,發一篇關于OTA的貼,不喜勿噴,隨著現在科技的發展,市面上出現很多帶wifi,藍牙等智能產品,為滿足人們對產 ...

回復

ID:50577 發表于 2025-2-6 13:35
厲害,試一試
ID:961114 發表于 2022-10-27 10:30
hongshi123 發表于 2022-10-27 09:33
你好 能否請教下怎么做 最近在做51單片機升級

新站STCAI
還是從 STC-ISP V6.90T 以上版本的 ISP燒錄/輔助開發工具包一體化軟件的//資料下載// 專欄 中下載 開源的 C語言代碼, 開源的原理圖

51hei截圖20221027102901.jpg (164.21 KB, 下載次數: 112)

51hei截圖20221027102901.jpg
ID:1047140 發表于 2022-10-27 09:33
yuanyijie 發表于 2021-7-3 09:18
INTERRUPT_OFFSET EQU 0X0600 ;中斷偏移量

你好 能否請教下怎么做 最近在做51單片機升級
ID:526108 發表于 2022-10-10 20:54
我也做過IAP51單片機在線升級功能,大致國過程和你的差不多,但比你的簡單
我的項目比較大,需要用到64KROM,所以外置EEPROM,有更新先下載到EEPROM并驗證一次
ROM劃分兩部分APP區(地址從0x0000開始)和UPDATE區,UPDATE只負責把EEPROM中的新APP程序寫入單片機APP區,驗證升級和程序下載命令等都在APP中,這樣就能隨時更新下載驗證指令了。
UPDATE區程序需要偏置到單片機FLASH末尾處,同時APP區也備份UPDATE程序,用來驗證是否正確。需要升級時使用指針函數跳轉到UPDATE區,升級完單片機復位即可。
ID:539106 發表于 2022-10-10 14:31
have a look
ID:1047140 發表于 2022-10-10 14:19
你好 遠程升級那部分有完整的代碼嗎  能分享下嗎
ID:981261 發表于 2021-11-15 19:45
yuanyijie 發表于 2021-7-3 09:18
INTERRUPT_OFFSET EQU 0X0600 ;中斷偏移量

你好!我正在自學做一個51單片機用1K xmodem升級的項目,請問可以請教源碼嗎?謝謝!
ID:163099 發表于 2021-10-25 13:03
請問怎么read和write單片機flash
ID:450849 發表于 2021-7-3 16:47
yuanyijie 發表于 2021-7-3 09:18
INTERRUPT_OFFSET EQU 0X0600 ;中斷偏移量



有道理,受教了
ID:450849 發表于 2021-7-3 16:47
yuanyijie 發表于 2021-7-3 09:13
從APP2拷貝數據到APP1的時候,剛好擦除了扇區0而還沒寫入時,突然掉電了,怎么能跳轉到BOOTLOAD(0X6000)程序 ...

有道理
ID:156923 發表于 2021-7-3 09:18
                INTERRUPT_OFFSET EQU 0X0600 ;中斷偏移量


                CSEG    AT      0X0000;絕對地址
                               
?C_STARTUP:     LJMP    STARTUP1

                                ;中斷向量地址
                                ORG      0X0003;相對地址(偏移地址)
                                LJMP     INTERRUPT_OFFSET + $    ;INT0中斷
                               
                                ORG      0X000B       
                                LJMP     INTERRUPT_OFFSET + $         ;T0中斷
                               
                                ORG      0X0013  
                                LJMP     INTERRUPT_OFFSET + $    ;INT1中斷
                               
                                ORG      0X001B  
                                LJMP     INTERRUPT_OFFSET + $    ;T1中斷
                               
                                ORG      0X0023          
                                LJMP     INTERRUPT_OFFSET + $         ;UART1中斷
                               
                                ORG      0X002B
                                LJMP     INTERRUPT_OFFSET + $    ;WDT中斷
                               
                                ORG      0X0033
                                LJMP     INTERRUPT_OFFSET + $    ;LVD中斷
                               
                                ORG      0X003B
                                LJMP     INTERRUPT_OFFSET + $    ;UART2中斷
                               
                                ORG      0X0043
                                LJMP     INTERRUPT_OFFSET + $         ;SPI中斷
                               
                                ORG      0X004B
                                LJMP     INTERRUPT_OFFSET + $    ;IIC中斷
                               
                                ORG      0X0053
                                LJMP     INTERRUPT_OFFSET + $    ;T3中斷
                               
                                ORG      0X005B
                                LJMP     INTERRUPT_OFFSET + $    ;T4中斷
                               
                                ORG      0X0063
                                LJMP     INTERRUPT_OFFSET + $    ;PWM中斷
                               
                                ORG      0X006B
                                LJMP     INTERRUPT_OFFSET + $    ;T5中斷
                               
                                ORG      0X0073
                                LJMP     INTERRUPT_OFFSET + $    ;CTK中斷
                               
                                ORG      0X007B
                                LJMP     INTERRUPT_OFFSET + $    ;ADC中斷
                               
                                ORG      0X0083
                                LJMP     INTERRUPT_OFFSET + $    ;INT2-INT7中斷
                               
                                ORG      0X008B
                                LJMP     INTERRUPT_OFFSET + $    ;INT8-17中斷

                                ORG      0X0093
                                LJMP     INTERRUPT_OFFSET + $    ;P2INT中斷
                               
                                RSEG    ?C_C51STARTUP;自動分配地址
               
                                ;CSEG    AT      0X0700;指定APP起始地址


我做的是把BOOTLOAD程序放在0X0000-0X0600處的,使用XMODEM協議進行下載
ID:156923 發表于 2021-7-3 09:13

從APP2拷貝數據到APP1的時候,剛好擦除了扇區0而還沒寫入時,突然掉電了,怎么能跳轉到BOOTLOAD(0X6000)程序呢位置呢?
ID:450849 發表于 2021-7-1 09:10
yuanyijie 發表于 2021-6-30 10:21
存在風險哦

什么風險呢?
ID:156923 發表于 2021-6-30 10:21
存在風險哦
ID:246441 發表于 2020-12-27 02:20
樓上試,代碼不全嘛,我沒有51單片機,有的話我也來試了
ID:115923 發表于 2020-12-5 10:11
C51  代碼不全, 無法實現樓主 說的 功能,   不信 , 你們 試一試 ,
樓主 ,也就是 一個 方向 ,  方案,  想專研的人 可以考慮 安裝這個思路去實現,  但是不一定會成功,  說了
這只是方案!
ID:246441 發表于 2020-12-3 19:20
高手啊,啟動跳轉改.A51好像可以跳吧
ID:385637 發表于 2020-7-25 18:32
高手,這是高手
ID:450849 發表于 2020-7-24 20:41
hei51com 發表于 2020-5-12 23:07
51也能串口升級,會玩

多謝夸獎
ID:731155 發表于 2020-5-12 23:07
51也能串口升級,會玩
ID:94449 發表于 2020-2-28 21:51
不錯資料,學習下。
ID:699613 發表于 2020-2-28 15:58
樓主真的很用心呀
ID:450849 發表于 2020-2-28 00:02
百度 “51 OTA”,竟然發現有被復制到別人的論壇。
ID:527324 發表于 2020-2-23 22:13
正好需要。。
ID:163391 發表于 2020-2-23 18:53
這個有意思
ID:450849 發表于 2020-2-23 17:04
chinayanhui 發表于 2020-2-23 13:38
一直有一個疑問想問一下樓主

就是51單片機在運行的過程中可以讀寫程序區的flash嗎?

51系列有很多品牌,具體要看規格書
ID:695961 發表于 2020-2-23 13:38
一直有一個疑問想問一下樓主

就是51單片機在運行的過程中可以讀寫程序區的flash嗎?
ID:450849 發表于 2020-2-23 09:37
xyz_123 發表于 2020-2-22 10:29
編譯bootload時,
Memory Model選Large: variables in XDATA有何講究,用Small可以嗎?
不勾選Use On-chi ...

Small:變量存儲在內部ram里;
Large:變量存儲在外部Ram里,使用16位間接尋址;所以程序大我們一般選 large
app1可以放置再0x100,這個地址避開中斷向量就可以,個人愚見。
ID:696374 發表于 2020-2-22 10:29
編譯bootload時,
Memory Model選Large: variables in XDATA有何講究,用Small可以嗎?
不勾選Use On-chip ROM有何講究?

編譯App1時,
App1的起點放在0x1000有何講究?可以放在其它處,例如0x100嗎?
ID:450849 發表于 2020-2-21 08:09
york_feng 發表于 2020-2-20 11:34
不錯,會玩!

過獎了
ID:695525 發表于 2020-2-20 11:34
不錯,會玩!

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 巨骚综合 | 国产精品视频在线观看 | 国产三级久久 | 一区二区在线免费观看 | 国产精品久久久999 成人在线国产 | 在线播放一区 | 国产精品成人国产乱一区 | 亚洲精品欧美 | 啪啪综合网 | 国产一级免费观看 | 亚洲国产日本 | 亚洲一区三区 | 久久免费国产视频 | 四虎永久在线 | 在线观看亚洲 | 成人午夜在线 | 在线观看免费黄色 | 精品国产91 | 国产精品第一区 | 视频一区二区在线播放 | 国产精品国产三级国产 | 色综合久久久久 | 欧美精品一区二区三区四区 | 可以看毛片的网站 | 国产精品一级 | 特级黄色大片 | 国 产 黄 色 大 片 | 国产一区二区视频在线 | 成人黄色小视频 | 91在线看片 | 国产精品麻豆视频 | 日韩精品在线观看视频 | 天天干夜夜欢 | 亚洲一级黄色 | 综合伊人久久 | 成人在线视频播放 | 欧美日日日 | 亚洲色网址 | 日韩视频在线观看免费 | 黄色三级av | 日韩av中文字幕在线播放 |