OpenEdv-开源电子网

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

ht1621驱动断码屏,com4上的段无法显示

[复制链接]

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
发表于 2018-11-5 16:00:36 | 显示全部楼层 |阅读模式
30金钱
本帖最后由 qiuzhicheng 于 2018-11-15 08:57 编辑

如图,com3上的段无显示。除了com3上的段,其他都有显示。请问问题出在哪呢
IMG_20181105_153508.jpg
Y}$Q`E(UY8B7D]3[(5HPV.png
A}IY2JNYR3Z]R9(I)B_0H3H.png

最佳答案

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

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
 楼主| 发表于 2018-11-16 08:00:25 | 显示全部楼层
回复

使用道具 举报

25

主题

683

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1351
金钱
1351
注册时间
2012-4-25
在线时间
195 小时
发表于 2018-11-5 16:00:37 | 显示全部楼层
      for(i=0;i<48;i++)
        {
                temp_data =p;
                Write_data_bit(temp_data,4);
        }

      for(i=0;i<48;i++)
        {
                Write_data_bit(p[i],4);
        }
   
        
        
1-1
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-11-6 02:16:13 | 显示全部楼层
帮顶
回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
 楼主| 发表于 2018-11-6 07:55:07 | 显示全部楼层
回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
 楼主| 发表于 2018-11-6 11:57:11 | 显示全部楼层
自己顶一下。
回复

使用道具 举报

32

主题

883

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4036
金钱
4036
注册时间
2015-11-14
在线时间
545 小时
发表于 2018-11-9 11:24:21 | 显示全部楼层
线路有没有问题,还有就是液晶和芯片是不是好的
回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
 楼主| 发表于 2018-11-15 08:49:08 | 显示全部楼层
Electronic 发表于 2018-11-9 11:24
线路有没有问题,还有就是液晶和芯片是不是好的

应该是好的,每个断码都能单独显示出来
回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
 楼主| 发表于 2018-11-15 08:56:08 | 显示全部楼层
本帖最后由 qiuzhicheng 于 2018-11-15 10:56 编辑

#include "lcd.h"
#include "sys.h"


unsigned char tab2[]={
0x00,0x00,0x00,0x00,0x00,0x0c,0x0b,0x0c,0x0b,0x00,0x0d,0x06,0x0d,0x06,0x0d,0x06, //5-20
0x06,0x0b,0x06,0x0b,0x0d,0x06,0x0d,0x06,0x0d,0x06,0x0d,0x03,0x0d,0x06,0x0d,0x06,  //21-36
0x0d,0x06,0x0d,0x06,0x0d,0x06,0x06,0x0b,0x06,0x0b,0x0d,0x06,0x0d,0x06,0x0d,0x06           //37-52
};

unsigned char tab9[]={
0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,
0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,
0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F
};

unsigned char tab5[]={
0x00,0x00,0x00,0x00,0x00,0x06,0x0d,0x06,0x0d,0x00,0x0b,0x0c,0x0b,0x0c,0x0b,0x0c,
0x03,0x0d,0x03,0x0d,0x0b,0x0c,0x0b,0x0c,0x0b,0x0c,0x0b,0x06,0x0b,0x0c,0x0b,0x0c,
0x0b,0x0c,0x0b,0x0c,0x0b,0x0c,0x03,0x0d,0x03,0x0d,0x0b,0x0c,0x0b,0x0c,0x0b,0x0c
};

unsigned char tab8[]={
0x00,0x00,0x00,0x00,0x00,0x0e,0x0f,0x0e,0x0f,0x00,0x0f,0x0e,0x0f,0x0e,0x0f,0x0e,  //5-20
0x07,0x0f,0x07,0x0f,0x0f,0x0e,0x0f,0x0e,0x0f,0x0e,0x0f,0x07,0x0f,0x0e,0x0f,0x0e,  //21-36
0x0f,0x0e,0x0f,0x0e,0x0f,0x0e,0x07,0x0f,0x07,0x0f,0x0f,0x0e,0x0f,0x0e,0x0f,0x0e         //37-52
};


unsigned char  tab0[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

unsigned char tab4[]={
0x08,0x00,0x00,0x01,0x08,0x00,0x00,0x01,0x08,0x00,0x00,0x01,0x08,0x00,0x00,0x01,
0x08,0x00,0x00,0x01,0x08,0x00,0x00,0x01,0x08,0x00,0x00,0x01,0x08,0x00,0x00,0x01,
0x08,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};


void Delayns(void)
{
        __asm("nop");__asm("nop");__asm("nop");__asm("nop");__asm("nop");__asm("nop");__asm("nop");__asm("nop");//__asm("nop");__asm("nop");
        __asm("nop");__asm("nop");__asm("nop");__asm("nop");__asm("nop");__asm("nop");//__asm("nop");__asm("nop");__asm("nop");__asm("nop");
}

void Delay_t(uint t)
{
        uint i,j;
        for(i=0;i<t;i++)
        for(j=0;j<80;j++);
}



//PB3--CS
//PB4--背光
//PB5--WR
//PB6--DATA

void Initial_LCD()
{
        GPIO_InitTypeDef  GPIO_InitStructure;
        
        RCC_AHBPeriphClockCmd( RCC_AHBPeriph_GPIOB, ENABLE);

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4 |GPIO_Pin_5|GPIO_Pin_6;                 
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
        GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
        GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
        GPIO_Init(GPIOB, &GPIO_InitStructure);
        
        LCD_CS_H();
        LCD_WR_H();
        LCD_DATA_H();
        
        LCD_RD_L();
        delay_ms(10);
        LCD_RD_H();
        delay_ms(100);
        
        Write_command(0x30);//select 1/4 dut & 1/3 bias
        Write_command(0x02);//RC 256K
        Write_command(0x52);//system enable
        Write_command(0x06);//LCD ON
}
//////////////////////////////////////
void Write_ID(unsigned char ID,unsigned char cnt)
{
   unsigned char i;

   for(i=0;i<cnt;i++)
   {   
           LCD_WR_L();
           delay_us(5);
           if(ID&0x80)
                 LCD_DATA_H();
           else
                LCD_DATA_L();
           

           LCD_WR_H();
           delay_us(5);

           ID<<=1;
   }
}

void Write_data_bit(unsigned char dat,unsigned char cnt)
{
        unsigned char i;
        for(i=0;i<cnt;i++)
        {               
                LCD_WR_L();        
                delay_us(5);
               
                if(dat&0x01)
                        LCD_DATA_H();        
                else
                        LCD_DATA_L();

                //delay_us(5);
                LCD_WR_H();
                delay_us(5);
                dat>>=1;               
        }
}
//写命令函数
void Write_command(unsigned char Command_byte)
{
        LCD_CS_L();
        delay_us(5);

        Write_ID(0x80,4);
        Write_ID(Command_byte,8);        
        LCD_CS_H();
}


//写一个数据
void Singal_data_write(unsigned char address,unsigned char dat)
{
        LCD_CS_L();
        delay_us(5);

        Write_ID(0xa0,3);//write   101
        Write_ID(address,6);//address from 0x00
        Write_data_bit(dat,4);

        LCD_CS_H();delay_us(5);
}


//写所有数据
void Writeall_data_1621(unsigned char *p)
{
        unsigned char i;
        unsigned char temp_data;
        LCD_CS_L();
        delay_us(5);
        
        Write_ID(0xa0,3);//write   101
        Write_ID(0x00,6);//address from 0x00

        for(i=0;i<48;i++)
        {
                temp_data =p;
                Write_data_bit(temp_data,4);
        }
        
        LCD_CS_H();
}

#include "sys.h"
#include "lcd.h"


extern unsigned char tab8[];
extern unsigned char tab2[];
extern unsigned char tab9[];
extern unsigned char tab5[];
extern unsigned char tab0[];
extern unsigned char tab4[];

int main(void)
{
        delay_init(48);
               
       Initial_LCD();
        
        delay_ms(1000);
        delay_ms(1000);
        Writeall_data_1621(tab0);   //清屏
        delay_ms(100);

        Writeall_data_1621(tab9);                        Delay_t(3000); //全部显示
        while(1)
        {
               
        }
}



回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
 楼主| 发表于 2018-11-15 15:22:26 | 显示全部楼层
本帖最后由 qiuzhicheng 于 2018-11-15 17:06 编辑

嗯嗯,本来就是这样的,不知道怎么改动了

原来程序就是这样:
for(i=0;i<48;i++)
        {
                temp_data =p;
                Write_data_bit(temp_data,4);
        }

全部显示本来就是 Write_data_bit(0xf,4);循环48次,效果是一样的
回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
 楼主| 发表于 2018-11-15 17:07:07 | 显示全部楼层

"p"会变成p。。。。
回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
 楼主| 发表于 2018-11-15 17:07:47 | 显示全部楼层
p【i】打不了,为什么
回复

使用道具 举报

22

主题

271

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
405
金钱
405
注册时间
2019-3-21
在线时间
107 小时
发表于 2019-7-6 16:45:51 | 显示全部楼层
楼主你好,我最近也在弄这个断码屏,按键程序已经写好了,请问怎么使用按键在控制屏幕上的数字加减
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-10 13:40

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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