微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 51单片机15k的flash room装不下我的程序,怎么回事

51单片机15k的flash room装不下我的程序,怎么回事

时间:10-02 整理:3721RD 点击:
我用的keil软件编写的程序,选的是STC89 C53单片机,编译时显示出错 DATA:SEGMENT TOO LARGE。我把存储模式调为PDATA时就没出错,用ISP烧录时显示程序大小只有4K。可是C53有15K的flash room,怎么会装不下4K程序,很是疑惑,求解答(本人是新手,望多指教)

你这是声明的变量超出了范围,keil 51的ram是分区data  xdata的,data只有256bytes,剩余为xdata

这种问题要怎么解决啊

你看一下是否有连续的大数组声明,把它声明在xdata区域

楼上正解。编译后,会显示占用多少 data区,xdata区,rom区。看看前者 是否超出范围

谢谢楼上两位,问题解决了,声明的数组太大了,刚试了下声明在xdata区就没问题了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top