欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4629|回復: 4
收起左側

關于單片機keil設置xdata后系統不能運行的故障,求解析

[復制鏈接]
ID:383840 發表于 2018-8-25 15:14 | 顯示全部樓層 |閱讀模式
單片機編程軟件keil xdata設置如下圖設置

圖.png

編譯程序后,下載到板子上,程序不能正常運行
但是我刪掉部分變量后,再次編譯,程序就正常了
查看map文件 定義的變量并未超出xdata空間
如圖兩種設置都不行 T2.png T3.png
求問,為什么能正常編譯成功 但是程序卻跑不起來呢
回復

使用道具 舉報

ID:277550 發表于 2018-8-25 22:46 | 顯示全部樓層

為何要修改配置資料,修改地址要修改得正確才行,在代碼中使用就好了。
回復

使用道具 舉報

ID:383840 發表于 2018-8-27 08:50 | 顯示全部樓層
是這樣的  我有兩份代碼  A份是變量少的 xdata空間是2816byte B份是變量多的 編譯的時候提示xdata超出空間大小  所以我把A、B兩份xdata空間調整成3072byte 最后A代碼燒進去系統能正常工作 B代碼燒進去不能正常工作 但是減少B代碼中變量的數量 B代碼也可以正常了 這是為什么呢 難道這個keil設置空間是沒用的 僅僅是依靠實際代碼情況來工作的?
回復

使用道具 舉報

ID:387733 發表于 2018-8-27 12:15 | 顯示全部樓層
art_jianda 發表于 2018-8-27 08:50
是這樣的  我有兩份代碼  A份是變量少的 xdata空間是2816byte B份是變量多的 編譯的時候提示xdata超出空間 ...

你的B代碼xdata超出芯片空間了,你把空間調大只是編譯通過了,實際芯片內部沒有變化,A代碼變量少,所以前后都能正常工作,而B代碼超出空間,你調整編譯器空間,使得編譯正常通過,實際工作時,一部分超界的變量不能工作,當然不能正常了。keil設置空間只是告訴編譯器我有那么大的空間,它并不知道你是否欺騙了它。
回復

使用道具 舉報

ID:104984 發表于 2021-8-9 19:41 | 顯示全部樓層
我把受影響的變量聲明data就可以正常工作了,幾個全局變量,256字節大數組在xdata沒有問題
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表