你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关于定义数组变量,影响到液晶显示导致死机。求助

[复制链接]
binqiang 提问时间:2018-3-15 20:01 /
在工程里定义数组变量(全局变量),在一定范围内不会影响。。但如果多定义几个(要使用到),编译的时候没有提示错误。但烧写进去显示不能用(FSMC接口)。网络上搜了一些,有的说是堆栈溢出。。。可我更改了堆栈大小,也解决不了。。。求助求助。。这到底是什么原因,怎么个思路解决。比如我需要A[28];可以用   ----》 改为A[50]就不能用了。。。但奇怪的是我手误输了A[200];反而可以用。。。。
收藏 2 评论6 发布时间:2018-3-15 20:01

举报

6个回答
wenyangzeng 回答时间:2018-3-15 20:30:18
本帖最后由 wenyangzeng 于 2018-3-15 20:33 编辑

1、    由于楼主对数组类型的定义(uint8_t、uint6_t等等)未描写清楚,这牵涉到字节对齐的问题。如果A[]都是32位应该没有问题,如果是8位就有可能因对齐问题出现A[50]不能用。
2、这个“不能用”是如何不能用,楼主貌似没有表达清楚。“烧写进去显示不能用(FSMC接口)” ,到底怎样不能用,出现什么故障现象?还望提问能一次把问题的描写清楚。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

toofree 回答时间:2018-3-16 03:29:56
发个工程上来吧,没遇到过你说的问题,要创造个一样的问题,难度太大了。
有工程的话,大不了,给你看汇编。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

bargagebaobei 回答时间:2018-3-16 07:48:37
1.如何定义的数组 数组类型没有说明
2.你是如何操作的数组也没说明白
3.请楼主贴代码 我们好看看怎么解决

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

dsjsjf 回答时间:2018-3-20 11:13:46
全局变量不受任务堆栈影响,倒是有可能是数据对齐问题,还请楼主把问题现象描述具体点

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

butterflyspring 回答时间:2018-3-20 11:44:07
这又不是结构体...你可以尝试调试,如果hardfualt,就可以看看是不是缓存的问题,如果是,那是有概率是对齐问题,使用自动对齐语句就好.你可以用IDE里面的memory看看你申请的东西.

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

无薪税绵 回答时间:2018-3-26 11:14:10
我估计不是数组变量的问题,
是某指针未做错误处理,
导致指针跑错地方,影响了显示。

有时候,很容易被表象误导。
建议楼主仔细检查一下显示相关的代码。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版