OpenEdv-开源电子网

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

stm32 LCD 程序LCD_WR_REG(lcddev.setxcmd) 的问题

[复制链接]

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
发表于 2020-4-27 12:36:04 | 显示全部楼层 |阅读模式
1金钱
原子老师:一下疑问请教一下
stm32 :战舰开发板光盘资料\程序源码\寄存器版本
实验13 TFTLCD 显示实验:
test.c : 33行 case 0CD_Clear(WHITE);break;
LCD_Clear链接到 ILI93xx.c: 2048行 void LCD_Clear(u16 color)
进入2062行:else LCD_SetCursor(0x00,0x0000);        //设置光标位置
再进入174行设置XPOS和YPOS的时候
写指令这段代码:LCD_WR_REG(lcddev.setxcmd); 中lcddev.setxcmd没有设置,怎么可以写入命令?
或设置值得地方怎么也找不到,也就是命令参数lcddev.setxcmd为零

最佳答案

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

1, LCD初始化函数的最后, 就会调用LCD_Display_Dir 函数, 设置竖屏。自然就设置了setxcmd 2, 如果还不明白, 仿真吧。。。看你写的是0, 还是有值。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2020-4-27 12:36:05 | 显示全部楼层
luolingy 发表于 2020-4-28 15:20
能不能麻烦原子老师指点一下在什么地方赋的值

1, LCD初始化函数的最后, 就会调用LCD_Display_Dir 函数, 设置竖屏。自然就设置了setxcmd
2, 如果还不明白, 仿真吧。。。看你写的是0, 还是有值。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2020-4-27 17:09:45 | 显示全部楼层
没有Q到点
可能截图来表达会好点
业精于勤荒于嬉;行成于思毁于随!
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-27 22:32:47 | 显示全部楼层
初始化以后,进入循环
          while(1)
        {                       
                switch(x)
                {
                        case 0CD_Clear(WHITE);break;
捕获1.GIF
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-27 22:37:41 | 显示全部楼层
进入LCD_Clear(WHITE)的子程序调用
因为ID号是9431,应该执行的是2062行的else LCD_SetCursor(0x00,0x0000);        //设置光   这个语句
捕获2.GIF
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-27 22:40:21 | 显示全部楼层
再进入LCD_SetCursor(0x00,0x0000)的调用函数
捕获3.GIF
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-27 22:42:35 | 显示全部楼层
177行                LCD_WR_REG(lcddev.setxcmd);的参数  lcddev.setxcmd 前面没有赋值的地方,那么怎么可以实现写指令呢?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2020-4-28 01:10:02 | 显示全部楼层
全局搜索下, 你就知道lcddev.setxcmd在哪里设置的 了
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-28 15:15:17 | 显示全部楼层
原子老师:

我收索了下,共有11条语句给lcddev.setxcmd赋值,
分别为lcddev.setxcmd=2A,2B,4E,4F,R33,是在不同的ID号中的赋值
仅有
C:\Users\luolingy\Desktop\待删\实验13 TFTLCD显示实验\HARDWARE\LCD\ILI93xx.c(400) :        
                lcddev.setxcmd=0X2A;
是给9341赋值的,
捕获1.GIF
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-28 15:18:32 | 显示全部楼层
luolingy 发表于 2020-4-28 15:15
原子老师:

我收索了下,共有11条语句给lcddev.setxcmd赋值,


但是,这条语句是在void LCD_Display_Dir(u8 dir)这个调用函数中才赋值的,而主程序在调用177行中LCD_WR_REG(lcddev.setxcmd);
lcddev.setxcmd前面没有执行void LCD_Display_Dir语句啊,
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-28 15:20:43 | 显示全部楼层
luolingy 发表于 2020-4-27 22:42
177行                LCD_WR_REG(lcddev.setxcmd);的参数  lcddev.setxcmd 前面没有赋值的地方,那么怎么可以实现写指令 ...

能不能麻烦原子老师指点一下在什么地方赋的值
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-30 08:17:17 | 显示全部楼层
原子老师,问题已经找到了,        在初始化2042行LCD_Display_Dir(0);里就设置了lcddev.setxcmd的值,非常感谢指导                         //默认为竖屏
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-30 08:26:28 | 显示全部楼层
原子老师,问题找到了,在初始化函数2042行,有一个LCD_Display_Dir(0);
在里面就对lcddev.setxcmd进行了赋值,非常感谢指点!
用J-LINK硬件仿真 一步步的跑出来的,第一次体会到J-LINK的优美
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-30 08:32:28 | 显示全部楼层
正点原子 发表于 2020-4-27 12:36
1, LCD初始化函数的最后, 就会调用LCD_Display_Dir 函数, 设置竖屏。自然就设置了setxcmd
2, 如果还 ...

已经解决了,谢谢原子老师指点
回复

使用道具 举报

20

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2014-7-22
在线时间
18 小时
 楼主| 发表于 2020-4-30 08:33:00 | 显示全部楼层
最佳答案
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-28 01:03

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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