硬汉嵌入式论坛

 找回密码
 立即注册
查看: 6674|回复: 15
收起左侧

[STM32CubeF4] STM32F407程序被卡死,未找到原因求助

[复制链接]

7

主题

29

回帖

7

积分

新手上路

积分
7
发表于 2015-4-2 15:49:46 | 显示全部楼层 |阅读模式
f407+TFT1.rar (548 KB, 下载次数: 77)


  小弟最近在学习F407时,用它来点亮一块8寸的TFT液晶,在调试发现程序会一直卡死在WAIT_SYNC这句话;程序大致如下:
#define LCD_SYNC_PORT GPIOG
#define LCD_SYNC_BIT GPIO_Pin_2
#define LCD_SYNC_STATE       GPIO_ReadInputDataBit(LCD_SYNC_PORT, LCD_SYNC_BIT)
//sync下降沿同步
#define   WAIT_SYNC  {while(!LCD_SYNC_STATE);\
                                             while(LCD_SYNC_STATE);}
//LCD_SYNC_IN;  PG2
  GPIO_InitStructure.GPIO_Pin  = LCD_SYNC_BIT;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; //浮空输入
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
  GPIO_Init(LCD_SYNC_PORT, &GPIO_InitStructure);
LCD初始函数中:
[img]file:///C:/Users/SHRENJI/AppData/Roaming/Tencent/Users/1174918934/QQ/WinTemp/RichOle/C%7B4OZ_6[%25(KV%7D_QSDO)W[RW.png[/img]求大神解救。。。。拜托
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-2 15:51:17 | 显示全部楼层
QQ图片20150402154711.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107240
QQ
发表于 2015-4-2 17:07:19 | 显示全部楼层
什么接口的,看着程序是GPIO模拟的吗?
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-2 17:47:40 | 显示全部楼层

回 eric2013 的帖子

f407+TFT.rar (548 KB, 下载次数: 54) eric2013:
什么接口的,看着程序是GPIO模拟的吗?



  小弟最近在学习F407时,用它来点亮一块8寸的TFT液晶,在调试发现程序会一直卡死在WAIT_SYNC这句话;程序大致如下:
#define LCD_SYNC_PORT GPIOG
#define LCD_SYNC_BIT GPIO_Pin_2
#define LCD_SYNC_STATE       GPIO_ReadInputDataBit(LCD_SYNC_PORT, LCD_SYNC_BIT)
//sync下降沿同步
#define   WAIT_SYNC  {while(!LCD_SYNC_STATE);\\
                                             while(LCD_SYNC_STATE);}
//LCD_SYNC_IN;  PG2
  GPIO_InitStructure.GPIO_Pin  = LCD_SYNC_BIT;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; //浮空输入
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
  GPIO_Init(LCD_SYNC_PORT, &GPIO_InitStructure);
LCD初始函数中:
[img]file:///C:/Users/SHRENJI/AppData/Roaming/Tencent/Users/1174918934/QQ/WinTemp/RichOle/C%7B4OZ_6[%25(KV%7D_QSDO)W[RW.png[/img]求大神解救。。。。拜托
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-2 17:49:59 | 显示全部楼层

回 eric2013 的帖子

eric2013:什么接口的,看着程序是GPIO模拟的吗?
(2015-04-02 17:07)
着实没找到原因,恳请你们的帮忙。。。。源码已附上。。。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107240
QQ
发表于 2015-4-2 22:54:37 | 显示全部楼层

回 jiangandlin0 的帖子

jiangandlin0:着实没找到原因,恳请你们的帮忙。。。。源码已附上。。。 (2015-04-02 17:49) 
好的,已经看到你的代码,明天上午过来了给你看看。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107240
QQ
发表于 2015-4-3 09:13:16 | 显示全部楼层
你的代码没有上传上,方便的话,重新上传下,我给你看看。
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-3 09:37:25 | 显示全部楼层

回 eric2013 的帖子

eric2013:你的代码没有上传上,方便的话,重新上传下,我给你看看。 (2015-04-03 09:13)
已经传上来了。。。。麻烦您了。。。指点一下
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107240
QQ
发表于 2015-4-3 10:15:26 | 显示全部楼层
你的TFT驱动是不是有问题,写的有点简单了,没有使用FSMC么
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-3 11:35:06 | 显示全部楼层

回 eric2013 的帖子

eric2013:你的TFT驱动是不是有问题,写的有点简单了,没有使用FSMC么 (2015-04-03 10:15)
用了的。。。。在LCD_USER.c里面
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107240
QQ
发表于 2015-4-3 11:57:54 | 显示全部楼层
在FSMC初始化后加个延迟,延迟50ms,也就是这个函数LCD_GPIO_Init();后加个延迟。
另外你的TFT屏用的什么驱动IC。
还有就是你的TFT屏寄存器初始化好简单,一般有好多寄存器要初始化的。
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-3 14:06:47 | 显示全部楼层

回 eric2013 的帖子

在FSMC初始化后加个延迟,延迟50ms,也就是这个函数LCD_GPIO_Init();后加个延迟。
另外你的TFT屏用的什么驱动IC。
还有就是你的TFT屏寄存器初始化好简单,一般有好多寄存器要初始化的。
没有控制芯片。。。。 ZX-TY080I86S-1616使用说明书V16.pdf (593 KB, 下载次数: 77) eric2013:
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-3 14:07:52 | 显示全部楼层

回 jiangandlin0 的帖子

jiangandlin0:没有控制芯片。。。。eric2013: (2015-04-03 14:06)
我现在把等待下降沿屏蔽了(不用),但是液晶还是没有点亮
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-3 14:09:10 | 显示全部楼层

回 eric2013 的帖子

eric2013:在FSMC初始化后加个延迟,延迟50ms,也就是这个函数LCD_GPIO_Init();后加个延迟。
另外你的TFT屏用的什么驱动IC。
还有就是你的TFT屏寄存器初始化好简单,一般有好多寄存器要初始化的。
(2015-04-03 11:57)
我现在把等待下降沿屏蔽了(不用),但是液晶还是没有点亮 。。。初始化后面加了50ms延时
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107240
QQ
发表于 2015-4-3 17:29:33 | 显示全部楼层

回 jiangandlin0 的帖子

jiangandlin0:我现在把等待下降沿屏蔽了(不用),但是液晶还是没有点亮 。。。初始化后面加了50ms延时 (2015-04-03 14:09) 
看了下手册,貌似这个屏是FPGA搞的驱动。

首先这个屏是怎么驱动点亮,看手册上面没说背光怎么打开?
回复

使用道具 举报

7

主题

29

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-4-6 13:49:26 | 显示全部楼层

回 eric2013 的帖子

eric2013:看了下手册,貌似这个屏是FPGA搞的驱动。

首先这个屏是怎么驱动点亮,看手册上面没说背光怎么打开? (2015-04-03 17:29) 
在初始化函数:
//4. 背光
write_reg(SYS_CMD,1<<X_INC | 1<< Y_INC | 3<<BL_LUM);其中的3就是设置的背光亮度,写成0就是关闭背光。。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-22 23:03 , Processed in 0.216603 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表