野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 18130|回复: 13

請問1.44寸彩色TFT屏幕模塊有沒有STM32的庫?

[复制链接]
发表于 2013-10-30 16:42:04 | 显示全部楼层 |阅读模式
請問火哥有沒有1.44寸彩色TFT屏幕模塊的STM32庫可以提供?

我想把這塊屏幕用在STM32 的那塊發板上
回复

使用道具 举报

发表于 2013-10-30 16:56:43 | 显示全部楼层
8080 协议 而已, 8bit 的
stm32 的是 16 bit

火哥 的 k60 是 用 io 模拟的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-30 18:48:00 | 显示全部楼层
那是不是跟原本的3.2LCD差不多?
回复 支持 反对

使用道具 举报

发表于 2013-10-30 20:36:39 | 显示全部楼层
ryuki001 发表于 2013-10-30 18:48
那是不是跟原本的3.2LCD差不多?

通信协议 都是 8080
不过 液晶主控不一样,所以 命令 不一样,但 基本也是相似的。(如果你驱动过多款tft 液晶,就有感觉)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-30 20:43:48 | 显示全部楼层
這是我第一次弄TFT
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-30 21:17:00 | 显示全部楼层
不是只多了8 Bits嗎?
回复 支持 反对

使用道具 举报

发表于 2013-10-31 06:27:31 | 显示全部楼层
ryuki001 发表于 2013-10-30 21:17
不是只多了8 Bits嗎?

stm32 带的 3.2寸 液晶,是 8080 协议 16bit
k60 的小液晶,是 8080 协议 8bit ,写数据的时候 需要写两次(高低字节)

然后控制命令,这个就 看手册……基本上都是相同的,例如开窗函数
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-5 11:48:04 | 显示全部楼层
黑白那個lcd是一次發8個像素的
這個每次是只發一個像素的資料嗎?
但這個好像只有8種顏色,應該只有3bits
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-5 12:45:03 | 显示全部楼层
請問CS是有什麼用的? 我看過文件但看不明
RD是時鐘訊號嗎?
回复 支持 反对

使用道具 举报

发表于 2013-11-5 16:03:45 | 显示全部楼层
ryuki001 发表于 2013-11-5 12:45
請問CS是有什麼用的? 我看過文件但看不明
RD是時鐘訊號嗎?

参考一下 这份 8080 协议 文档就知道

lcd的接口简介(8080模式).pdf (131.56 KB, 下载次数: 60)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-5 20:24:06 | 显示全部楼层
我真的是看了很久也看不明白
原本的3.2寸看例又把LCD_ILI9341_CMD(index)等都define幾次,真的很難看得懂
我去查過ST7735S指令表,又看不明白
我找了很久才找到這塊顯示屏是合用的,但是又找不到庫可用,是怎找也找不到stm32的庫,只能自己做
但是全都是用16位元的,真的很苦惱
回复 支持 反对

使用道具 举报

发表于 2013-11-6 08:39:06 | 显示全部楼层
ryuki001 发表于 2013-11-5 20:24
我真的是看了很久也看不明白
原本的3.2寸看例又把LCD_ILI9341_CMD(index)等都define幾次,真的很難看得懂
...

不是啊,直接 用 K60 的 来做就好啦,K60 的是 用 IO口 模拟的,数据 需要 发送 2次 (因为 小液晶是 8位的)

你移植 一下 k60 的不就可以了嘛
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-8 11:26:48 | 显示全部楼层
#define LCD_WR_CMD(command_data_8)                do\
                {\
                GPIO_SetBits(GPIOC, GPIO_Pin_7);\
                BL14002_DELAY();\
                GPIO_ResetBits(GPIOC, GPIO_Pin_9);\
                BL14002_DELAY();\
                GPIO_ResetBits(GPIOC, GPIO_Pin_8);\
                BL14002_DELAY();\
                GPIO_Write(GPIOB, ((u8)command_data_8)<<8);\
                GPIO_ResetBits(GPIOC, GPIO_Pin_6);\
                BL14002_DELAY();\
                GPIO_SetBits(GPIOC, GPIO_Pin_6);\
                BL14002_DELAY();\
                GPIO_SetBits(GPIOC, GPIO_Pin_8);\
                }while(0)        //wr=0;wr=1;产生一个上升沿
                                                                       
#define LCD_WR_Data(low_8_data)                do\
                {\
                GPIO_SetBits(GPIOC, GPIO_Pin_7);\
                GPIO_SetBits(GPIOC, GPIO_Pin_9);\
                GPIO_ResetBits(GPIOC, GPIO_Pin_8);\
                BL14002_DELAY();\
                GPIO_Write(GPIOB, ((u8)low_8_data)<<8);\
                GPIO_ResetBits(GPIOC, GPIO_Pin_6);\
                GPIO_SetBits(GPIOC, GPIO_Pin_6);\
                GPIO_SetBits(GPIOC, GPIO_Pin_8);\
                }while(0)         //wr=0;在这里写入数据到RAM


我把K60的改成這樣

PC6>>wr
PC7>>rd
PC8>>cs
PC9>>rs
PC10>>reset
PB15>>D7
.
.
.
.
PB8>>D0

但是我用了LCD_Init(RED);之後只有白屏
請問知不知是什麼問題?





回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-8 11:32:38 | 显示全部楼层
還有我改了這裡
#define        BL14002_DELAY()                do{__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();}while(0)
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-6 23:27 , Processed in 0.029270 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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