feitianxiaozi 发表于 2024-6-24 09:09:34

STC8H8K64U单片机跑飞的问题!!!!

用了很多的这个款系统列的单片机,发现了一个问题,
就是在有LCD和LED驱动器上,那个48脚单片机有个很大的问题,
就是在读写单片机EEPROM的时候,
长时间读写,单片机的内存会发生异常自己改变,
现在推断是内部分配的内存和显存导致的官方可以试试,
当我们切换的外部EEPROM的时候,这个问题就消失了。

我们做了很多测试但是最终才证明应该是内存的问题,
仅限那个48脚的那款单片机,其他32脚和64脚没发现这个问题。

soma 发表于 2024-6-24 09:44:54

还有这种问题啊

_奶咖君_ 发表于 2024-6-24 10:03:06

zhaoye818 发表于 2024-6-24 09:52


好么 气氛组{:4_200:}

_奶咖君_ 发表于 2024-6-24 10:04:12

内存改变有考虑过是overlay功能么?

hsrzq 发表于 2024-6-24 10:43:13

有必现的代码吗?发上来瞧瞧?

feitianxiaozi 发表于 2024-6-24 11:41:17

hsrzq 发表于 2024-6-24 10:43
有必现的代码吗?发上来瞧瞧?

很简单,上面说的很明确了,你做一个反复读写的EEPROM程序,然后再做一个循环显示读取的EEPROM的显示,你跑一段时间就可以了,然后再负载上输出,输入,简单的就可以,一般出现时间1分钟到几个小时不等。

feitianxiaozi 发表于 2024-6-24 11:42:03

_奶咖君_ 发表于 2024-6-24 10:04
内存改变有考虑过是overlay功能么?

不是,这个已经验证过了!

_奶咖君_ 发表于 2024-6-24 11:44:09

feitianxiaozi 发表于 2024-6-24 11:42
不是,这个已经验证过了!

{:4_167:}好吧,,我也蹲个结果

hsrzq 发表于 2024-6-24 11:56:32

feitianxiaozi 发表于 2024-6-24 11:41
很简单,上面说的很明确了,你做一个反复读写的EEPROM程序,然后再做一个循环显示读取的EEPROM的显示,你 ...
我有点怀疑是这个问题造成的。

STC内置EEPROM“写”完不是立即生效,连续写完立即读是有可能产生问题的。
而外置EEPROM的写完是真真正正的写完了,所以连续读写就是没有问题的。


乘风飞扬 发表于 2024-6-24 14:18:23

内部EEPROM擦写时间比较长,一个扇区需要4~6ms,而且擦写过程中CPU处于IDLE模式不会执行LED刷新代码会导致LED闪烁。
除此之外应该没什么影响了。
你觉得“单片机的内存会发生异常自己改变”那么用串口打印应该也能复现才是,你可以烧录附件例子试试。
例子每200ms读写一次内部EEPROM并将结果通过串口打印出来,另有IO口翻转输出,按键扫描,如果不够的话可以继续往里加其它功能。
页: [1] 2
查看完整版本: STC8H8K64U单片机跑飞的问题!!!!