找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 885|回復(fù): 1
收起左側(cè)

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

[復(fù)制鏈接]
ID:74687 發(fā)表于 2024-8-29 09:41 | 顯示全部樓層 |閱讀模式
最近在學(xué)習(xí)一個STM32仿三菱PLC的系統(tǒng)程序,有個問題沒想明白,望高手指點(diǎn)一下。

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

源碼截圖

源碼截圖


keil編譯截圖

keil編譯截圖
回復(fù)

使用道具 舉報(bào)

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

評分

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

查看全部評分

回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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