一乐电子

一乐电子百科

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

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 8313|回复: 17
收起左侧

[其他综合] 真心求助:谁能帮我点亮这块VFD的屏(有奖)

[复制链接]
发表于 2010-11-26 12:10 | 显示全部楼层 |阅读模式
本帖最后由 hicool 于 2010-11-26 13:00 编辑

这块240×36的VFD屏刚到手,很想用它做点儿东西,可是怎么也点不亮,哪位高手帮忙写段驱动程序,万分感谢!
如驱动成功送数码相框一个。
参考网址:http://www.furutaka-netsel.co.jp/pdf/futaba/futaba_GP1152A01A.pdf
GP1152A01 数据手册(日文版附件已转为WORD格式)


http://elm-chan.org/junk/gvfd/report.html
小日本用此屏做的音频 频谱显示有原理图和代码(本帖附件也有)

http://members.jcom.home.ne.jp/felm/gpclk.avi
该小日本用此屏做的时钟,很漂亮。

补充:最好是51的c代码,10几年没玩单片机了,汇编都还给老师了。
ourdev_594086VFW9WA.jpg
ourdev_594087M72BG7.jpg

futaba_GP1152A01A[1].doc

862.5 KB, 下载次数: 640, 下载积分: 一乐金币 -1

日文GP1152A01手册,这个完整些

GP1059A01B.pdf

138.98 KB, 下载次数: 663, 下载积分: 一乐金币 -1

日文GP1059A01手册,只有规格,没有指令、时序等东东作为参考

akilcd34.zip

7.51 KB, 下载次数: 592, 下载积分: 一乐金币 -1

小日本写的AVR驱动代码,汇编的(频谱显示)

GP1059.xls

171 KB, 下载次数: 577, 下载积分: 一乐金币 -1

我用在线翻译GP1152A01A手册得到的一些内容作为参考

发表于 2010-11-26 12:56 | 显示全部楼层
看了视频, 那个时间变化效果真不错...  山寨个去..
发表于 2010-11-26 13:01 | 显示全部楼层
多少米搞回来的
 楼主| 发表于 2010-11-26 13:04 | 显示全部楼层
呵呵138,二手货,店主刚上架就被我抢了一块,不过现在店主舍不得卖了。
发表于 2010-11-26 13:47 | 显示全部楼层
http://www.docin.com/p-70354998.html

这里才是GP1059A , 你给的 datasheet 指令对不上.
发表于 2010-11-26 14:04 | 显示全部楼层
#include <REGX52.H>


#define DATA_PORT         P2      

sbit WR                =         P1^0;
sbit CS         =         P1^1;
sbit CD         =         P1^1;

void delay_nms(unsigned int count)                //软件延时
{
        unsigned int i,j;
        for(i=0;i<count;i++)
        for(j=0;j<80;j++);                                  //120 改成45看看
}

void LCD_write_cmd(unsigned char cmd)
{
        CD = 1;                                //CD=H 写命令
        DATA_PORT = cmd;
        CS = 0;
        WR = 0;
        _nop_();
        WR = 1;
        CS = 1;
        _nop_();
        _nop_();
        _nop_();
        _nop_();
}

void LCD_write_data(unsigned char data)
{
        CD = 0;                                //CD=L 写数据
        DATA_PORT = data;
        CS = 0;
        WR = 0;
        _nop_();
        WR = 1;
        CS = 1;
        _nop_();
        _nop_();
        _nop_();
        _nop_();
}

void LCD_set_add(unsigned char add_H,unsigned char add_L)
{
        LCD_write_cmd(4);
        LCD_write_data(add_L);
       
        LCD_write_cmd(5);
        LCD_write_data(add_H);
       
        LCD_write_cmd(2);
}

//设定显示位置
void LCD_set_disp(unsigned char add_H,unsigned char add_L)
{
        LCD_write_cmd(7);
        LCD_write_data(add_L);
       
        LCD_write_cmd(8);
        LCD_write_data(add_H);
}

void VFD_init(void)
{       
        unsigned int i;
        //LCD_write_cmd(0x10);                //开电源
        //LCD_write_cmd(0x0e);                //开电源        不知到底是哪个 反正默认是开的
       
        LCD_set_disp(0x00,0x00);        //设置显示地址
       
        LCD_write_cmd(6);                        //设定亮度
        LCD_write_data(15);                        //0~15
       
        //LCD_write_cmd(0x09);                //正常写入
       
        LCD_set_add(0x00,0x00);                //设置地址
       
        for(i=0;i<240*8;i++)
                LCD_write_data(0xf0);
       
}
       
void main(void)
{
        delay_nms(500);
       
        VFD_init();
       
        while(1)
        {
       
        };
}
       
       


家里的 keil 找不到51的器件 没有试过能不能编译.
 楼主| 发表于 2010-11-26 14:16 | 显示全部楼层
我试试看
 楼主| 发表于 2010-11-26 14:45 | 显示全部楼层
本帖最后由 hicool 于 2010-11-26 15:30 编辑

根据litchiate 提供的代码,把编译不能通过的地方稍微改动了一下,但还是不亮
sbit wr         =         P1^0;
sbit CS         =         P1^1;
sbit CD         =         P1^1; //此处的定义与CS冲突,改成了P1^2

_nop_();函数无法识别,加了头文件INTRINS.H

keil的保留字WR改成wr,void LCD_write_data(unsigned char data)中的data 改成DATA

还是没反应


估计高手最怕就是我这种半瓶子咣当的人了。


#include <REGX52.H>
#include<INTRINS.H>
#define DATA_PORT         P2      
sbit wr         =         P1^0;
sbit CS         =         P1^1;
sbit CD         =         P1^2;
void delay_nms(unsigned int count)                //软件延时
{
        unsigned int i,j;
        for(i=0;i<count;i++)
        for(j=0;j<80;j++);                                  //120 改成45看看
}
void LCD_write_cmd(unsigned char cmd)
{
        CD = 1;                                //CD=H 写命令
        DATA_PORT = cmd;
        CS = 0;
        wr = 0;
        _nop_();
        wr = 1;
        CS = 1;
        _nop_();
        _nop_();
        _nop_();
        _nop_();
}
void LCD_write_data(unsigned char DATA)
{
        CD = 0;                                //CD=L 写数据
        DATA_PORT = DATA;
        CS = 0;
        wr = 0;
        _nop_();
        wr = 1;
        CS = 1;
        _nop_();
        _nop_();
        _nop_();
        _nop_();
}
void LCD_set_add(unsigned char add_H,unsigned char add_L)
{
        LCD_write_cmd(4);
        LCD_write_data(add_L);
        
        LCD_write_cmd(5);
        LCD_write_data(add_H);
        
        LCD_write_cmd(2);
}
//设定显示位置
void LCD_set_disp(unsigned char add_H,unsigned char add_L)
{
        LCD_write_cmd(7);
        LCD_write_data(add_L);
        
        LCD_write_cmd(8);
        LCD_write_data(add_H);
}
void VFD_init(void)
{        
        unsigned int i;
        //LCD_write_cmd(0x10);                //开电源
        //LCD_write_cmd(0x0e);                //开电源        不知到底是哪个 反正默认是开的
        
        LCD_set_disp(0x00,0x00);        //设置显示地址
        
        LCD_write_cmd(6);                        //设定亮度
        LCD_write_data(15);                        //0~15
        
        //LCD_write_cmd(0x09);                //正常写入
        
        LCD_set_add(0x00,0x00);                //设置地址
        
        for(i=0;i<240*8;i++)
                LCD_write_data(0xf0);
        
}
        
void main(void)
{
        delay_nms(500);
        
        VFD_init();
        
        while(1)
        {
        
        };
}
 楼主| 发表于 2010-11-26 14:56 | 显示全部楼层
回复 8# hicool


    还是把指令表放上来吧
另外说明一下屏的INT管脚是帧同步输出(100Hz)
1.JPG
 楼主| 发表于 2010-11-26 15:15 | 显示全部楼层
本帖最后由 hicool 于 2010-11-26 16:21 编辑
这里才是GP1059A , 你给的 datasheet 指令对不上.
litchiate 发表于 2010-11-26 13:47 https://www.yleee.com.cn/images/common/back.gif


差的是离谱了点,


非得用锁存器吗?我手头倒是有个74hc573好像可以带替74LS373

本版积分规则

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

GMT+8, 2024-6-2 13:04 , Processed in 0.062753 second(s), 47 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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