一乐电子

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

微信扫码登录

手机号码,快捷登录

手机号码,快捷登录

搜索
查看: 2205|回复: 3

[其他综合] 【求助】VFD_GP9002A读字节不正确

[复制链接]
发表于 2012-6-13 16:00 | 显示全部楼层 |阅读模式
【求助】VFD_GP9002A读字节不正确
FUTABA的VFD_GP9002A,128*64的。
编程驱动的时候,遇到以下问题。
我用的是SPI模式驱动。写的时候都正确,一个个直接写像素画图也都正确。
如果要画线画点混合图像,需要先把原来的像素读出来,然后再混合。
调试方法,画三角形,然后读出像素,在旁边画出来。调试了好久,都不能正确读出数据。
硬件上的io口
弱上拉读spi的数据,或者弱上拉外加4.7k上拉电阻读,或者用高阻io读,都读不到正确的数据。
在各句代码加延时也不行。

void  GP9002A_SPI_byte(unsigned char spi_in_byte)
{
   unsigned char i;
   GP9002A_CS_0;
   _delay_us(2);
   for(i = 0; i < 8; i++)
      {
         if(spi_in_byte & 0x01) {GP9002A_S_IN_1;}
         else {   GP9002A_S_IN_0;}
         GP9002A_CLK_01;
         _delay_us(2);
         spi_in_byte = spi_in_byte >> 1;
         }
   GP9002A_CS_1;
}

unsigned char  VFD_Read_data(void)
{
   unsigned char i;
   unsigned int get_spi_out_byte = 0;

   GP9002A_CD_0;
   GP9002A_S_IN_0;
// GP9002A_delay_us(500);
   GP9002A_CS_0;  
// GP9002A_delay_us(100);

for(i = 0; i < 8; i++)//循环8次
      {
GP9002A_CLK_01;
get_spi_out_byte=get_spi_out_byte>>1;
  if(GP9002A_S_OUT_is_1)( get_spi_out_byte|=0x80);
    }
   GP9002A_CS_1;
//  return (  unsigned char)(get_spi_out_byte>>1);
return (  unsigned char)(get_spi_out_byte);
}

unsigned char VFD_read_char(unsigned char Line, unsigned char Row)
{
VFD_set_char_addressone(Line, Row);     
  VFD_write_command(0x09);
  GP9002A_delay_us(150);
     GP9002A_CD_0;
  GP9002A_delay_us(150);
VFD_Read_data();//跳过一个假字节
   return  VFD_Read_data();
}

这款vfd15脚的vcc2跟其他vcc不直接连通的,我是直接连通接5v的,发送字节正确,就是接收的不正确。
因为读出的数据不正确,画直线的时候,是画两次才成一条直线。画圆也不闭合...
最右边的直线是坐标127,也就是最后一列,不过我这里显示是半亮,旁边坐标126那一点正常显示。
左边三角形上的直线,我是画给比较而已。
1.JPG
接近的说明书是这款,需要3.3v跟5v供电。
GP9002A02B.pdf (153 KB, 下载次数: 550)
 楼主| 发表于 2012-6-13 16:05 | 显示全部楼层
最右边的直线是坐标127,也就是最后一列,不过我这里显示是半亮,127坐标一整列都是灰度,不知道是代码问题还是硬件问题。
每个像素的左右两个像素也是稍微亮一点,上下的像素不亮。

vfd屏上有2048字节的ram,如果不能正确读出来,就只有在单片机上使用1024个字节做像素缓存了。
回复

使用道具 举报

 楼主| 发表于 2012-6-13 16:18 | 显示全部楼层
本帖最后由 狗狗百里游 于 2012-6-13 17:22 编辑

晕,在单片机上换了几个io驱动,程序正常了...

估计原来是用了avr128的PB3(miso)做模拟io输入,
换其他io端口用就正常了。

//<<<<<<<<<<<<<端口设置开始结束


剩下的问题是,图形文字像素左右的两个像素弱亮。可能相当于漏光,跟坐标127列,亮的时候是弱亮而已。
可能硬件原来就是这样的
回复

使用道具 举报

 楼主| 发表于 2012-6-13 16:43 | 显示全部楼层
2.JPG
代码现在正常了
回复

使用道具 举报

本版积分规则

QQ|一淘宝店|手机版|商店|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2025-8-20 17:47 , Processed in 0.051203 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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