OpenEdv-开源电子网

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

TFT LCD一步一步 学习。。。。。感谢论坛的大神chinafox....主要是把寄存器改为了库,附源码

[复制链接]

18

主题

128

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
421
金钱
421
注册时间
2013-2-4
在线时间
214 小时
发表于 2013-11-24 22:32:32 | 显示全部楼层 |阅读模式

1123日。对TFT进行学习。。发现程序代码过于庞大,不方便学习,主要是觉得无从下手。 贴出修改的前5个代码。。  mini板3.5库
看了
chinafox 的帖子

http://www.openedv.com/posts/list/6150.htm 

希望跟着他一步一步的对TFT有比较全面的了解,希望最后能用库的方式把TFT显示出来。

 

下面是一个菜鸟的 混乱的学习过程。。大神可以多多指导,看我有什么地方更加需要注意的。。

从新看一下,用寄存器方式写stm32的代码。毕竟之前一直用的是库的方式。

新建MDK工程

10  00000  0000

 

 LCD ID:4535   100  0101  0011  0101

 

关闭JTAG LCD ID 10

 18

3D

453D

1101  5   1001 

1124 文件夹,用库函数版本实现串口打印LCD ID

 

1、引脚定义

2、端口初始化

3、写命令

4、写数据

5、读命令

 

分析JTAG TFT的端口定义中,用到了B.C端口。在默认情况下PB3 B4复用,不能作为IO口,需要



 



 

库函数中的定义:

#define GPIO_Remap_SWJ_NoJTRST      ((uint32_t)0x00300100)  /*!< Full SWJ Enabled (JTAG-DP + SW-DP) but without JTRST */

#define GPIO_Remap_SWJ_JTAGDisable  ((uint32_t)0x00300200)  /*!< JTAG-DP Disabled and SW-DP Enabled */

#define GPIO_Remap_SWJ_Disable      ((uint32_t)0x00300400)  /*!< Full SWJ Disabled (JTAG-DP + SW-DP) */

 

 

SWD_ENABLE 宏定义 为0x01

 

//JTAG模式设置,用于设置JTAG的模式

//mode:jtag,swd模式设置;00,全使能;01,使能SWD;10,全关闭;

//CHECK OK

//100818   

void JTAG_Set(u8 mode)

{

u32 temp;

temp=mode;

temp<<=25; 对第25位置1

RCC->APB2ENR|=1<<0;     //开启辅助时钟    

AFIO->MAPR&=0XF8FFFFFF; //清除MAPR[26:24]

AFIO->MAPR|=temp;       //设置jtag模式

 

 



 

SWJ_CFG 010. B.3|PB.4可用

 



 

PB.3|PB.4持续拉高,不能用

 

 

{   

   

for (k=0;k<5;k++)

{

for (i=0;i<320;i++)

{

for (j=0;j<240;j++)

{

 

LCD_WriteReg(0x0020,j);  //X

LCD_WriteReg(0x0021,i);  //Y

 

LCD_WR_REG(0x22);

 

LCD_WR_DATA(FOX[k]);

 

    //delay_ms(1);    

}

      }

根据程序,先执行j++应该从x坐标变。看到的实验现象不明显。会有一些非常浅的波浪,然后过一点时间才会出现细线。

而且为什么颜色没有发生变化?在扫描完一次j++ i++之后,k也发生变化,而其中划线的颜色也要变化。现象不明显。

原来是 初始化不对啊。。。

 

 

LCD_WriteReg(0X15,0X0030);   

LCD_WriteReg(0X9A,0X0010);   

  LCD_WriteReg(0X11,0X0020);   

  LCD_WriteReg(0X10,0X3428);   

LCD_WriteReg(0X12,0X0002);//16    

  LCD_WriteReg(0X13,0X1038);   

delay_ms(40);   

LCD_WriteReg(0X12,0X0012);//16    

delay_ms(40);   

   LCD_WriteReg(0X10,0X3420);   

  LCD_WriteReg(0X13,0X3038);   

delay_ms(70);   

LCD_WriteReg(0X30,0X0000);   

LCD_WriteReg(0X31,0X0402);   

LCD_WriteReg(0X32,0X0307);   

LCD_WriteReg(0X33,0X0304);   

LCD_WriteReg(0X34,0X0004);   

LCD_WriteReg(0X35,0X0401);   

LCD_WriteReg(0X36,0X0707);   

LCD_WriteReg(0X37,0X0305);   

LCD_WriteReg(0X38,0X0610);   

LCD_WriteReg(0X39,0X0610); 

  

LCD_WriteReg(0X01,0X0100);   

LCD_WriteReg(0X02,0X0300);   

LCD_WriteReg(0X03,0X1030);//改变方向的   

LCD_WriteReg(0X08,0X0808);   

LCD_WriteReg(0X0A,0X0008);   

  LCD_WriteReg(0X60,0X2700);   

LCD_WriteReg(0X61,0X0001);   

LCD_WriteReg(0X90,0X013E);   

LCD_WriteReg(0X92,0X0100);   

LCD_WriteReg(0X93,0X0100);   

  LCD_WriteReg(0XA0,0X3000);   

  LCD_WriteReg(0XA3,0X0010);   

LCD_WriteReg(0X07,0X0001);   

LCD_WriteReg(0X07,0X0021);   

LCD_WriteReg(0X07,0X0023);   

LCD_WriteReg(0X07,0X0033);   

LCD_WriteReg(0X07,0X0133);   

}  

 

我们学到现在,对于显屏,不外呼就是先找到屏里的像素地址,然后输入这一点的的数据.就成了.

 

1.zip

2.16 MB, 下载次数: 114

4.zip

286.37 KB, 下载次数: 183

3.zip

286.62 KB, 下载次数: 197

5.zip

286.43 KB, 下载次数: 181

2.zip

286.26 KB, 下载次数: 171

mini板TFT寄存器改为库方式.zip

309.38 KB, 下载次数: 188

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2013-11-25 10:37:02 | 显示全部楼层
回复 支持 反对

使用道具 举报

18

主题

128

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
421
金钱
421
注册时间
2013-2-4
在线时间
214 小时
 楼主| 发表于 2013-11-25 10:53:31 | 显示全部楼层
回复【2楼】xiaoyan:





谢谢分享

---------------------------------


感觉他的方法很好。在论坛学到了东西。分享是应该的。。还有很多要学习的。
回复 支持 反对

使用道具 举报

18

主题

72

帖子

0

精华

初级会员

Rank: 2

积分
165
金钱
165
注册时间
2013-8-13
在线时间
0 小时
发表于 2013-11-25 11:15:24 | 显示全部楼层
很不错的样子,我回去一直看看好不好用。。。谢谢分享,我现在也在玩彩屏
要么不做,要么做到最好。。
回复 支持 反对

使用道具 举报

18

主题

128

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
421
金钱
421
注册时间
2013-2-4
在线时间
214 小时
 楼主| 发表于 2013-11-25 11:20:49 | 显示全部楼层
回复【4楼】小深深:

很不错的样子,我回去一直看看好不好用。。。谢谢分享,我现在也在玩彩屏

---------------------------------

多关注chinafox 写的,然后结合原子哥的教程,会收获很大。共同进步。。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-11-25 20:15:22 | 显示全部楼层
不错,谢谢分享.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

46

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
405
金钱
405
注册时间
2013-3-28
在线时间
39 小时
发表于 2013-11-25 21:33:55 | 显示全部楼层
来学习了
回复 支持 反对

使用道具 举报

20

主题

75

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
308
金钱
308
注册时间
2013-11-6
在线时间
23 小时
发表于 2013-11-26 09:21:10 | 显示全部楼层
謝謝分享~
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-8 17:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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