OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7240|回复: 17

LCD12864显示屏不显示字符

[复制链接]

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
发表于 2019-11-28 15:27:32 | 显示全部楼层 |阅读模式
8金钱
显示屏说明:  川航电子12864-8不带字库的屏,ST7567驱动,串口控制
代码说明:    厂家给的基于51的代码,在此基础上修改移植到stm32f103上使用


问题描述:   编译通过,但下载后液晶只有背光亮,不显示字符

调了几天了,断断续续改掉一些问题,但仍然不显示,头大,求各位前辈指点指点


相关程序.rar

3.12 MB, 下载次数: 13

最佳答案

查看完整内容[请看2#楼]

目前排查出一个问题,stm32f103的PA15默认开启JTAG功能,故PA15对应的LCD_CS端口一直处于高电平状态, 需要添加以下两行代码,释放PA15端口 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE); //使能端口复用时钟 GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE); //关闭JTAG,释放PB3,PB4,PA15 添加后,PA15可以正常输出高低电平信号 但目前,LCD仍然无法显示字符,继续排查中。。。:dizz ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-11-28 15:27:33 | 显示全部楼层
目前排查出一个问题,stm32f103的PA15默认开启JTAG功能,故PA15对应的LCD_CS端口一直处于高电平状态,
需要添加以下两行代码,释放PA15端口

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);             //使能端口复用时钟
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);    //关闭JTAG,释放PB3,PB4,PA15

添加后,PA15可以正常输出高低电平信号

但目前,LCD仍然无法显示字符,继续排查中。。。
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-11-28 16:14:16 | 显示全部楼层
不要沉不要沉不要沉不要沉
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165369
金钱
165369
注册时间
2010-12-1
在线时间
2110 小时
发表于 2019-11-29 01:48:18 | 显示全部楼层
自己努力下吧,不难
回复

使用道具 举报

2

主题

582

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2690
金钱
2690
注册时间
2014-5-23
在线时间
188 小时
发表于 2019-11-29 09:48:40 | 显示全部楼层
一步一步来
回复

使用道具 举报

6

主题

1127

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1656
金钱
1656
注册时间
2019-8-15
在线时间
102 小时
发表于 2019-11-29 16:34:43 | 显示全部楼层
帮顶                          
成功没有捷径
回复

使用道具 举报

26

主题

1579

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
6551
金钱
6551
注册时间
2015-8-25
在线时间
1019 小时
发表于 2019-12-2 13:34:22 | 显示全部楼层
它给的数据手册的四线串行SPI方式的时序,单位是ns级别,你32的程序中用的是systick实现的delayus(由定时器生成的精准延时)。改改试试
Capture.JPG
He who fights with monsters should look to it that he himself does not become a monster, when you gaze long into the abyss, the abyss also gazes into you.
过于执着就会陷入其中,迷失自己,困住自己。
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-12-2 14:05:07 | 显示全部楼层
正点原子 发表于 2019-11-29 01:48
自己努力下吧,不难

谢谢原子哥,就是没了方向了
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-12-2 14:08:13 | 显示全部楼层

谢谢支持
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-12-2 14:08:55 | 显示全部楼层
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-12-2 14:16:31 | 显示全部楼层
szczyb1314 发表于 2019-12-2 13:34
它给的数据手册的四线串行SPI方式的时序,单位是ns级别,你32的程序中用的是systick实现的delayus(由定时 ...

多谢抽出时间帮忙看问题,但是觉得延时程序为us级别应该不是问题关键,我搜到的所有液晶程序里都是us级别的最小分辨率,而且厂家本身给的51的代码也是us延时
回复

使用道具 举报

26

主题

1579

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
6551
金钱
6551
注册时间
2015-8-25
在线时间
1019 小时
发表于 2019-12-2 16:50:59 | 显示全部楼层
yes杰sir 发表于 2019-12-2 14:16
多谢抽出时间帮忙看问题,但是觉得延时程序为us级别应该不是问题关键,我搜到的所有液晶程序里都是us级别 ...

其实我也觉得挺奇怪的,感觉它的数据手册写的ns级挺不靠谱的。另外你确定人家给你的51的程序真的能正确运行?人家有没有框你?
He who fights with monsters should look to it that he himself does not become a monster, when you gaze long into the abyss, the abyss also gazes into you.
过于执着就会陷入其中,迷失自己,困住自己。
回复

使用道具 举报

6

主题

1127

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1656
金钱
1656
注册时间
2019-8-15
在线时间
102 小时
发表于 2019-12-2 18:47:08 | 显示全部楼层
帮顶                                                            
成功没有捷径
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-12-3 20:08:55 | 显示全部楼层
目前识别出了一个问题,stm32f103的PA15默认开启JTAG功能,故PA15对应的LCD_CS一直是高电平,需要加以下两行代码释放PA15

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE); //使能端口复用时钟
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//关闭JTAG,释放PB3,PB4,PA15

修改后,PA15端口可正常输出高低电平,但液晶仍未显示字符,继续排查中。。。
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-12-3 20:22:19 | 显示全部楼层
szczyb1314 发表于 2019-12-2 16:50
其实我也觉得挺奇怪的,感觉它的数据手册写的ns级挺不靠谱的。另外你确定人家给你的51的程序真的能正 ...

兄台,果然被你言中了,厂家的代码里果然有一句不对
回复

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2018-9-22
在线时间
8 小时
发表于 2019-12-7 13:45:44 | 显示全部楼层
想请教一下,12864的DB0-DB7是如何接线的?
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2019-9-10
在线时间
47 小时
 楼主| 发表于 2019-12-9 11:14:06 | 显示全部楼层
a1460190874 发表于 2019-12-7 13:45
想请教一下,12864的DB0-DB7是如何接线的?

买的板子说明书应该都有示意图,并口12864的话,直接将DB0~DB7跟单片机的IO口直连就行了,具体选哪几个IO口是你自己定义的了,选择IO口时自己注意下,IO口是否能设定为推挽输出,这样可以正常输出高低电平,但如果某个口只能是开漏输出模式,那需要上拉电阻才能输出高电平,自己注意不要踩坑

回复

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2018-9-22
在线时间
8 小时
发表于 2019-12-9 13:38:59 | 显示全部楼层
yes杰sir 发表于 2019-12-9 11:14
买的板子说明书应该都有示意图,并口12864的话,直接将DB0~DB7跟单片机的IO口直连就行了,具体选哪几个IO ...

感谢老哥!~~!
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-1 04:50

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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