OpenEdv-开源电子网

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

求助:1.3寸液晶屏只能刷新上半屏,可能的原因是什么?

[复制链接]

2

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2020-11-10
在线时间
11 小时
发表于 2021-10-11 09:24:13 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 langbaiyue 于 2021-10-11 09:50 编辑

1.3寸液晶屏只能刷新上半屏,可能的原因是什么? 没有使用硬件SPI,软件模拟的。  下半屏的字符其实也能够显示,但是没有初始化一样。上半屏能够按照程序初始化各种颜色,下半屏就是花屏,但是字符串能够显示


void TFT_WriteData(unsigned char a)
{
        unsigned char i ;
        LCD_CS = 0 ;
        for ( i = 0; i < 8; i++)
        {
                LCD_SCK = 0 ;
                if ( a & 0x80 )
                {
                        LCD_SDA = 1 ;
                }
                else
                {
                        LCD_SDA = 0 ;
                }
                LCD_SCK = 1 ;
                a = a << 1 ;
        }       
        LCD_CS = 1 ;
        LCD_WR = 1 ;
}

/**
* @brief        LCD底层SPI发送数据函数
*
* @param   dataa        数据的起始地址
* @param   size        发送数据大小
*
* @return  void
*/
static void LCD_SPI_Send(unsigned  char *dataa, unsigned long int size)
{
    unsigned long int i;
    unsigned long int delta;

    delta = size/0xFFFF;

    for(i = 0; i <= delta; i++)
    {
        TFT_WriteData(dataa);
    }
}

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

使用道具 举报

4

主题

881

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4198
金钱
4198
注册时间
2019-9-4
在线时间
881 小时
发表于 2021-10-11 09:43:16 | 显示全部楼层
直接用颜色填充函数把下半屏填充颜色能正常吗?
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8204
金钱
8204
注册时间
2020-5-11
在线时间
3697 小时
发表于 2021-10-11 09:43:41 | 显示全部楼层
上程序
回复

使用道具 举报

2

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2020-11-10
在线时间
11 小时
 楼主| 发表于 2021-10-11 09:48:51 | 显示全部楼层
A571157242 发表于 2021-10-11 09:43
直接用颜色填充函数把下半屏填充颜色能正常吗?

不能,就是花屏
回复

使用道具 举报

2

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2020-11-10
在线时间
11 小时
 楼主| 发表于 2021-10-11 09:49:30 | 显示全部楼层

出问题应该也只是软件SPI部分,其他的都是原子哥的
回复

使用道具 举报

6

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2017-3-1
在线时间
33 小时
发表于 2021-10-12 11:45:45 | 显示全部楼层
要么初始化地址有问题  要么写起始地址不对
回复

使用道具 举报

2

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2020-11-10
在线时间
11 小时
 楼主| 发表于 2021-10-12 13:46:23 | 显示全部楼层
我感觉上这个static void LCD_SPI_Send(unsigned  char *dataa, unsigned long int size)函数有问题,没有处理下半部分,但是又能显示字符,所以不知道咋回事儿
回复

使用道具 举报

0

主题

5

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2020-12-7
在线时间
4 小时
发表于 2021-10-12 21:52:51 | 显示全部楼层
能显示字符说明底层SPI字节写操作没问题,刷单色刷不到下半屏要么是你刷的数据长度不够(没明白SIZE/0xFFFF干嘛用的),要么就是刷屏前的开窗口指令就开小了,只开了上半屏
回复

使用道具 举报

4

主题

76

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
483
金钱
483
注册时间
2020-10-10
在线时间
114 小时
发表于 2021-10-14 16:15:09 来自手机 | 显示全部楼层
用中景园的程序试下,
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-23 01:48

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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