Program Size: data=152.6 xdata=111 code=10571
data=152.6-----> 大于100的变量或数组要移到xdata.
一般data 的占用在80以下为宜。
软件我不太懂,按道理讲同样的程序,类似的芯片,程序很小,8H2K17的ram还更大,8H2K17肯定没问题,结果是1K28正常,2K17反倒是不行了
楼主查一下,是不是因为2K17U里面的USB原因,因为USB里面有1280byte的FIFO是共用RAM的。
yjawei 发表于 2024-3-26 11:13
楼主查一下,是不是因为2K17U里面的USB原因,因为USB里面有1280byte的FIFO是共用RAM的。 ...
是的,STC8H2K17的2K RAM中1K XDATA,1280Byte的USB数据RAM,是否可以声明为XDATA使用,有待官方答复。
21cnsound 发表于 2024-3-26 11:30
是的,STC8H2K17的2K RAM中1K XDATA,1280Byte的USB数据RAM,是否可以声明为XDATA使用,有待官方答复。 ...
没有使能USB功能的话,1280Byte USB数据RAM可以作为普通XRAM使用,地址和前面的1K连续,定义变量时使用 xdata 关键字定义就可以。
使能USB后,这1280字节的RAM就为USB专用的FIFO,1280字节的RAM就都不能当普通的XRAM使用了。(1280字节的USB RAM是一个整体,不能一部分当作USB的FIFO,另外一部分当作XRAM)
这两个芯片的EEPROM操作没什么区别,只要注意EEPROM操作地址不要超过烧录时设置的EEPROM地址上限即可。
可以直接烧录附件例程到芯片里试试,通过串口输出EEPROM内容。
乘风飞扬 发表于 2024-3-26 15:19
没有使能USB功能的话,1280Byte USB数据RAM可以作为普通XRAM使用,地址和前面的1K连续,定义变量时使用 x ...
多谢回复,这个好像在数据手册中没有写。
STC8h2k17测试结果