註冊
登錄
會員
幫助
茂宣企業 產品討論區
»
Silicon Labs 產品討論區
» M51內的函式
‹‹ 上一主題
|
下一主題 ››
發新話題
發佈投票
發佈商品
發佈懸賞
發佈活動
發佈辯論
發佈視頻
打印
M51內的函式
p902432
中級會員
發短消息
加為好友
當前離線
1
#
大
中
小
發表於 2011-1-13 20:24
只看該作者
M51內的函式
不清楚是不是叫函式
因為我在做BOOTLOADER
在分割檔案的時候需要去看M51有那些需要保留那些是放在要UPDATA的區塊
其中有幾個是我的程式內沒有的
只有在M51上會發現
下面為我列出來的項目
希望能為我解答
謝謝
?C_C51STARTUP
?C_INITSEG
?C?LIB_CODE
?CO?MAIN
精華
0
積分
212
閱讀權限
30
在線時間
75 小時
註冊時間
2009-3-8
最後登錄
2011-6-5
查看個人網站
查看詳細資料
TOP
Stevenyang
版主
Steven
發短消息
加為好友
當前離線
2
#
大
中
小
發表於 2011-1-17 16:01
只看該作者
那些都是程式指標名字或程式檔名,該些名稱一般都會設定在:
IDE → Project → Tool Chain Integration → Linker (Command line 欄位裡)
目的是要讓 Compiler 能按照 Command line 語法去輸出正去的 Bootload 燒錄檔。
詳細請參考 Silicon Labs AN112 或 KEIL C51 Help file,會有詳細說明。
PS:第2~3項名稱應該是 User define,要確認你的 IDE project code 是否有,否則 Compiler 會找不到。
[
本帖最後由 Stevenyang 於 2011-1-17 16:05 編輯
]
精華
0
積分
1332
閱讀權限
100
在線時間
23 小時
註冊時間
2009-3-9
最後登錄
2012-9-6
查看詳細資料
TOP
Jacky
高級會員
發短消息
加為好友
當前離線
3
#
大
中
小
發表於 2011-1-18 08:57
只看該作者
?C_C51STARTUP
?C_INITSEG
?C?LIB_CODE
前面三個是當你是用"KeilC"寫程式..Compiler,前面是"C"的一些前導碼,當你不加STARTUP51.A51,KeilC會自動幫你加.前導程式是ASM語言,執行完才會跳到Main().
?CO?MAIN
不知你Bootload 做法是如何?不需要這麼麻煩吧!
精華
0
積分
731
閱讀權限
50
在線時間
15 小時
註冊時間
2009-3-9
最後登錄
2011-5-9
查看詳細資料
TOP
p902432
中級會員
發短消息
加為好友
當前離線
4
#
大
中
小
發表於 2011-1-18 19:56
只看該作者
因為我的bootloader跟我的主程式是放在一起的
但程式在更新的時候bootloader的code不能被清除掉
所以我才需要將bootloader與主程式分別放在兩塊flash
但其中就是如上述的m51內有這些函式我就不清楚這該不該被清除的
請版主給點意見
謝謝
精華
0
積分
212
閱讀權限
30
在線時間
75 小時
註冊時間
2009-3-8
最後登錄
2011-6-5
查看個人網站
查看詳細資料
TOP
Jacky
高級會員
發短消息
加為好友
當前離線
5
#
大
中
小
發表於 2011-1-19 18:17
只看該作者
你可以參考Steven 建議參考AN112 & AN112SW範例就可以了!
真得還是不了解,再跟我們Sale聯絡,我們有相關文件可以讓你參考.
精華
0
積分
731
閱讀權限
50
在線時間
15 小時
註冊時間
2009-3-9
最後登錄
2011-5-9
查看詳細資料
TOP
p902432
中級會員
發短消息
加為好友
當前離線
6
#
大
中
小
發表於 2011-1-21 23:06
只看該作者
這份我看過了
可能沒有看得很清楚
但他的範例程式我跑過了
也是拿那來改的
這邊不知版主是否有遇到一樣的問題
就是在範例程式跑的時候都可以
但我這邊的程式比較大
大約從0x1000~0x7400
是由電腦端傳送hex file給c8051
但資料量大的時候最後面都會有接收資料錯誤的發生
小量就不會
不知你們有沒有遇過這樣的事情
精華
0
積分
212
閱讀權限
30
在線時間
75 小時
註冊時間
2009-3-8
最後登錄
2011-6-5
查看個人網站
查看詳細資料
TOP
p902432
中級會員
發短消息
加為好友
當前離線
7
#
大
中
小
發表於 2011-5-11 21:34
只看該作者
由於文件中並沒有提到
?C?LIB_CODE由自已所使用的一些lib越多則會使這個所需的空間越大。
那我想問的是?C?LIB_CODE這個是該放在bootloader的區塊裡還是要update的區塊裡呢?
另外?C_INITSEG也是該放在那個區塊才好?
精華
0
積分
212
閱讀權限
30
在線時間
75 小時
註冊時間
2009-3-8
最後登錄
2011-6-5
查看個人網站
查看詳細資料
TOP
‹‹ 上一主題
|
下一主題 ››
產品討論區
Avago 產品討論區
Linear Tech 產品討論區
Prolific 產品討論區
Silicon Labs 產品討論區
站務公告
其他議題
HR 小分享