找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 864|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

關(guān)于PLC系統(tǒng)程序的一點(diǎn)疑惑

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:74687 發(fā)表于 2024-8-29 09:41 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
最近在學(xué)習(xí)一個(gè)STM32仿三菱PLC的系統(tǒng)程序,有個(gè)問題沒想明白,望高手指點(diǎn)一下。

PLC用戶程序,由GXdeveloper編譯好后上傳至單片機(jī),按照對(duì)程序的理解,是保存在flash里。這樣STM32里就有了兩段代碼,一段是KEIL編譯的程序,另一段就是由GX developer編譯的程序。STM32運(yùn)行的時(shí)候是從0x8000000這個(gè)地址讀取程序代碼并執(zhí)行,我在源碼里看到PLC的用戶程序是從0x800605C開始執(zhí)行的。我的理解就是keil編譯的程序必須保存在0x8000000 - 0x8006000之間,但是keil文件編譯的code大小是57006,換算成十六進(jìn)制是0xDEAE,已經(jīng)超過了0x6000,那么PLC的用戶程序會(huì)覆蓋flash上原來的程序嗎?


無標(biāo)題1.png (6.68 KB, 下載次數(shù): 7)

keil編譯截圖

keil編譯截圖
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:74687 發(fā)表于 2024-8-29 13:08 | 只看該作者
我大體已經(jīng)知道是怎么回事了,這個(gè)需要從map文件來分析一下,應(yīng)該是從8006000后面劃出一片區(qū)域?qū)iT用來存儲(chǔ)PLC程序的。

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表