17445|50

2万

帖子

74

TA的资源

管理员

楼主
 

准备DIY个具备VGA显示功能的学习版~~~大家给点建议? [复制链接]

如题,

近期

准备在DIY个具备vga显示功能的单片机学习版,

在功能确定上,

想听听大家的建议~~
此帖出自单片机论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身

最新回复

wrtw ert  详情 回复 发表于 2010-4-19 13:25
点赞 关注
个人签名

加油!在电子行业默默贡献自己的力量!:)

 

回复
举报

747

帖子

0

TA的资源

纯净的硅(高级)

沙发
 

我补充一些内容,感谢小志和soso

我这里刚巧完成cpld控制sdram的vga显示,聊起来,他们觉得这个东西非常好,就打算做这个活动。
此帖出自单片机论坛
 
 

回复

747

帖子

0

TA的资源

纯净的硅(高级)

板凳
 

这个东西,我做了一年了,等我慢慢写清楚

今天事情太多。
此帖出自单片机论坛
 
 
 

回复

747

帖子

0

TA的资源

纯净的硅(高级)

4
 

原始的进度和地址

创世:http://bbs.      21ic.com/icview-119600-1-1.html
继续:http://www.embcom.net/thread-1872-1-1.html
现在:https://bbs.eeworld.com.cn/viewthread.php?tid=88276

相关qq群:630571

此帖出自单片机论坛
 
 
 

回复

747

帖子

0

TA的资源

纯净的硅(高级)

5
 

硬件接口和编程示例 ,这是最原始的arm版本的程序

硬件spi总线,vga 1024*768 65536真彩色
速率不能大于13M byte写入速率。
接口定义:
接口引脚 说 明
NPCS0 spi片选信号(未用)
MOSI SPI数据信号
SPCK SPI时钟
EA0 数据/地址选择
VCC3 电源3.3V
GND 地

EA0=1 地址状态,设置光标地址。
EA0=0 数据状态,显示数据操作
void cursor(int addr) //设置显存地址 8M 寻址空间。

{

int i;

AT91F_PIO_SetOutput(AT91C_BASE_PIOA, AT91C_PIO_PA12 ); //set cmd status, EA0=1

//addr=272*y+x;

DelayUs(1);

pSpi -> SPI_TDR =(addr>>16)&0xffff; //16bit 地址低位

DelayUs(1);

pSpi -> SPI_TDR =addr&0xffff; //16bit 地址低位

DelayUs(1);

AT91F_PIO_ClearOutput(AT91C_BASE_PIOA, AT91C_PIO_PA12 );//set data status,EA0=0

DelayUs(1);

}

//清屏:

cursor(0);

for(i=0;i<272;i++)

for (j=0;j<480;j++)

{ pSpi -> SPI_TDR =0;for(n=0;n<2;n++);} //清屏 延时用2足够了,将来可以省略。

pSpi -> SPI_TDR =0 是写入0数据,写入其他数据可参考。

配置spi,修改这两个函数:

IO配置

__inline void AT91F_SPI_CfgPIO (void)

{

// Configure PIO controllers to periph mode

AT91F_PIO_CfgPeriph(

AT91C_BASE_PIOA, // PIO controller base address

((unsigned int) AT91C_PA11_NPCS0 ) |

((unsigned int) AT91C_PA13_MOSI ) |

// ((unsigned int) AT91C_PA31_NPCS1 ) |

((unsigned int) AT91C_PA12_MISO ) |

((unsigned int) AT91C_PA14_SPCK ), // Peripheral A

// ((unsigned int) AT91C_PA9_NPCS1 ) |

// ((unsigned int) AT91C_PA30_NPCS2 ) |

// ((unsigned int) AT91C_PA10_NPCS2 ) |

// ((unsigned int) AT91C_PA22_NPCS3 ) |

// ((unsigned int) AT91C_PA3_NPCS3 ) |

// ((unsigned int) AT91C_PA5_NPCS3 )

0); // Peripheral B

}

这是速度或spi模式配置

// SPCK active high + Data sampled on the falling edge of SPCK +

// CS inactive at the end of the transfer + cpt_bits to send + min baud rate + dlybct

AT91F_Set_SPI_CSR (AT91C_BASE_SPI, (0 + 0 + 0 + AT91C_SPI_BITS_16 + AT91C_SPI_SCBR), CSR0);

关于这些寄存器的具体细节,请参考共享中的at91sam7s的硬件手册。

以后实现的功能:

1.数据回读,速度和写入相同,8M 显存,可以当作数据空间用。

2.单独扫描起始指针,随时更新数据,不受扫描起始位置的影响。

3.显示特效,1)多层画面,2)遮挡效果,3)显示窗口



硬件的设计关键是sdram和显示时序的控制,得精确的安排时间。

现在能做到320ns写入16bit数据,大约25屏/s的刷新速度,不需要

busy信号!远远大于很多单片机甚至arm9的io速度。
此帖出自单片机论坛
 
 
 

回复

747

帖子

0

TA的资源

纯净的硅(高级)

6
 

这是现在的程序/线路图,源码

用的candence15.2,有原图,pdf图,bom清单。
这是给mini2440配套的vga板子,这块正在做。
单片机控制部分已经完成,现在想把这部分,单独拿出来,搞活动。
毕竟,可以用60-100元,搞定单片机和vga真彩显示器,如果
加上ps2的鼠标和键盘,可以当小电脑用了。
玩俄罗斯方块或者贪吃蛇这类游戏是怎么问题的。
vga可以考虑320,240 甚至1920*1200分辨率。显存够用8M
多余的显存,可以当存储用。
单片机我想用stc 20 pin的51。
此帖出自单片机论坛
 
 
 

回复

747

帖子

0

TA的资源

纯净的硅(高级)

7
 

都是我自己完成的,不是公司项目

没有版权问题。所有的版权都属于我自己。所以,不会被公司整。

mini2440_20091020_open.rar

1.21 MB, 下载次数: 203

此帖出自单片机论坛
 
 
 

回复

747

帖子

0

TA的资源

纯净的硅(高级)

8
 

使用工具:gerbertool,cadence,pdf阅读器,keil c 51

这些,自己去网上搜索。
现在这个vga控制板的功能只有两个:
setcursor(x,y) 设光标
spi_write().  写点

目前占用逻辑单元63%,还有不少空余。
后期可增加硬件2d,3d功能,当然,都是比较简单的功能。
成本限制,不可能做很复杂。

本来想做个开源的cpld开发板,cpld的代码也想开放部分,
但是,cpld的烧写器没搞定,usb烧写器厂家卖500元,
不可能要求每个人都买,所以就算了。
如果谁能搞定烧写器,这部分也可以部分开放,当cpld学习版了。
此帖出自单片机论坛
 
 
 

回复

2万

帖子

74

TA的资源

管理员

9
 

回复 8楼 wangkj 的帖子

大家来看看 有啥建议?
此帖出自单片机论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
个人签名

加油!在电子行业默默贡献自己的力量!:)

 
 

回复

81

帖子

0

TA的资源

纯净的硅(中级)

10
 
建议先弄个最小系统出来,VGA显示,我以前没接触过,所以不发表技术意见
此帖出自单片机论坛
 
 
 

回复

159

帖子

0

TA的资源

一粒金砂(高级)

11
 

做这个开发板非常有意义

我对VGA显示也觉得很神秘,很想参加,就是时间不允许,给私企打工每天的时间都很紧。:L
但是我要表明我的态度是:坚决支持!
此帖出自单片机论坛
 
个人签名*我的EMAIL:     sunke9@qq.com  
*我的博客http://blog.ednchina.com/sunke9/
*我网店:https://sunke9.taobao.com/
承接:电子、自动控制产品设计开发;单片机、ARM编程。
 
 

回复

2万

帖子

74

TA的资源

管理员

12
 

回复 11楼 SUNKE9 的帖子

可以思考下,就功能上提提自己的建议啊~~
此帖出自单片机论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
个人签名

加油!在电子行业默默贡献自己的力量!:)

 
 

回复

325

帖子

0

TA的资源

裸片初长成(初级)

13
 

没有做过VGA方面的,小谈一下

我只大概知道VGA显示有专用的数模芯片,也有通过接上下拉电阻实现的,还有VGA的信号源的选择,是选择电脑输出还是自已做前端CCD/CMOS采集输出?
此帖出自单片机论坛
 
个人签名科技应该让生活变得更简单!
 
 

回复

370

帖子

0

TA的资源

纯净的硅(中级)

14
 

我说一下VGA接口吧

主是两个同步脉冲信号,三个色元模拟信号.
同步脉冲信号,好似是0与3.3V的电平吧. 色元模拟信号电平我不记得了(大约也是0-3.3V),不过不会太大(通信距离近啊).这样用FPGA可以直接控制脉冲同步信号,用FPGA的开关和电阻阵也可产生位数不多的彩色VGA信号,当然用ADC,和专用的VGA芯片就更好了,做为学习就不这么多了.
此帖出自单片机论坛
 
 
 

回复

6366

帖子

4920

TA的资源

版主

15
 
现占个位置,等我想好了再来,呵呵
此帖出自单片机论坛
 
 
 

回复

51

帖子

0

TA的资源

纯净的硅(中级)

16
 
没有做过,只希望把规划跟进程发布一下。让我们不懂的学习学习。
此帖出自单片机论坛
 
 
 

回复

747

帖子

0

TA的资源

纯净的硅(高级)

17
 

ls 几个,把附近下载下来看看

里面有参考设计,这个参考设计也是我做的。

用单片机直接写数据,用电阻网络实现的rgb 565 16 bit真彩色。
此帖出自单片机论坛
 
 
 

回复

747

帖子

0

TA的资源

纯净的硅(高级)

18
 

今天,下午跑到现在才回公司。

如果是大家都不太明白,咱就做个最简单的:
单片机+a3p060(cpld)+8M sdram 。

预留 剩余的单片机管脚和cpld管脚。到时候自己增加电路,随意修改程序。
此帖出自单片机论坛
 
 
 

回复

2498

帖子

0

TA的资源

至上芯片

19
 

回复 楼主 soso 的帖子

没接触,不了解啊。。。。。
能够支持显示的图像的像素是大小事关键。。。
此帖出自单片机论坛
 
个人签名我的邮箱gaoxiaoan123@163.com!回帖是一种美德!互相帮助,共同进步!
口头禅:生活在于创造机会,把握机会!
 
 

回复

2400

帖子

0

TA的资源

裸片初长成(高级)

20
 
做个最简单的:
单片机+a3p060(cpld)+8M sdram 。

预留 剩余的单片机管脚和cpld管脚。
很好。。。有意思!
此帖出自单片机论坛
 
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表