- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EDA实习教案1
EDA实习讲义
第 PAGE 17 页 共 NUMPAGES 17 页
双色LED点阵扫描显示电路设计
一、实习目的
二、实习原理
1.8*8双色LED原理
图所示的双色点阵是行共阴、列共阳。当列共阳为高电平,行共阴为低电平,则所接的发光像素点点亮,反之,列共阳为低电平,行共阴为高电平,则所接的发光像素处于截止状态不发光。双色点阵一个像素点有二个发光管,分别为红和绿二种,如同时发亮为橙色。
2.LED的驱动
列扫描线
行扫描线
我们对于不同的行列加不同的电平,就可以选出需要点亮的LED,若对行列扫描线动态的加不同的高低电平,就可以使LED显示出各种文字、图像。
3.VHDL语言设计扫描显示电路
LED点阵显示驱动可以用多种方式,现在介绍用VHDL设计其驱动程序。我们以8*8阵列为例,同时用6个状态机控制其显示方式。改变8位数字开关(B)组的SW9、SW10、SW11、SW12,按顺序置开关为“1111”、“0111”、“1110”、“1101”、“1011”、“其他”共6种组合,就可以观察8*8行共阴列共阳显示模块的六种显示方式。
设计原理框图如下:
本实习具体要求:
SW[12..9]颜色点亮顺序移动方式1111红绿循环从上往下0111红绿循环中间散开1011红绿循环整屏往下移1101绿红循环从上往下1110红绿循环从下往上其它红绿循环从上往下
程序设计分析:
定时程序
当LED显示时需一定持续时间。因此在此程序设计时有延迟程序。
若接于FRQH的H3(3MHZ),则时为0、6S。
思路为:可以设计一个计数器,当来一个时钟计数一次,当定时完毕后,就可以扫描状态,
若显示方式变化,则按相应方式显示。
则计数次数为次。
显示方式
Eg:
……
green=not data;
com=not st;
red= data;
…….
WHEN 1111 =
IF ST(7 DOWNTO 0)=or st(7 downto 0)THEN
ST(7 DOWNTO 0);data=not data;
else ST(7 DOWNTO 0)=(ST(6 DOWNTO 0) 0 );data=not data;
……..
同理其他。
实验箱模块介绍
演示
编写程序过程中易错点:
CASE语句
语句结构
CASE表达式 IS
WHEN选择值或标识符 = 顺序语句;….; 顺序语句;
WHEN选择值或标识符 = 顺序语句;….; 顺序语句;
WHEN选择值或标识符 = 顺序语句;….; 顺序语句;
…….
WHEN OTHERS = 顺序语句;….; 顺序语句;
END CASE;
2)注意事项:
1.CASE语句是顺序语句,因此必须放在进程语句中.
2. 选择值必须在所代表的值之内.
3.CASE语句必须列完所有的可能情况.
条件句中的选择值若不能覆盖完所有的情况,则要有”WHEN OTHERS”语句.
4.选择值只能出现一次.
5.CASE语句执行中只能执行所列条件中的一条.
3)与IF语句的比较
直观明了,易读易写不易错.而且执行时几乎是并行语句.
二.扫描程序的设计
1.在此次实习过程中,需用四个触发开关来选择其状态.所以我们用CASE语句来实现.
2.由上次所讲的原理,我们现在以其中的两种方式来讲,其余以此类推.
RED
GREEN
…..
SIGNAL st: STD_LOGIC_VECTOR(7 downto 0);
SIGNAL d_ff: STD_LOGIC_VECTOR(20 downto 0);
signal data: STD_LOGIC_VECTOR(7 downto 0):
……
green=not data;
com=not st;
red= data;
…….
Case sw is
--"1110" 红绿循环 从下往上
WHEN 1110 =
IF ST(7 DOWNTO 0)=or st(7 downto 0)THEN
ST(7 DOWNTO 0)=1
您可能关注的文档
- 2007-8-2化工原理A卷答案.doc
- 2007级《花卉学》总论复习提纲111.doc
- 2008届物理回归基础训练——曲线运动.doc
- 2008年全国中学生生物学联赛理论考试大纲.doc
- 2008年咨询工程师《现代咨询方法与实务》真题-中大网校.doc
- 2008年广西桂南稻作区迟熟组引种试验汇总.doc
- 2008年冲刺外校模拟试题(二十).doc
- 2008外校期末考试高一英语试卷.doc
- 2009届中考语文专题复习 病句修改.doc
- 2009届黑龙江龙涤中学高三数学回归课本基础精练.doc
- Ernioo中国农学会耕作制度分会介绍.doc
- ETA计数器说明书8700007.doc
- EXCEL理论部分.doc
- Excel计算曲线.doc
- FEMAG晶体生长专业模拟软件之Float_Zone_Process_(FEMAG-FZ).doc
- FEMAG晶体生长模拟软件.doc
- FEMAG晶体生长建模软件之Float_Zone_Process_(FEMAG-FZ).doc
- fhnbfa农_学《耕作学》教学大纲.doc
- FEMAG晶体生长计算软件之Float Zone Process (FEMAG-FZ).doc
- FEMAG晶体生长模拟软件之Float_Zone_Process_(FEMAG-FZ).doc
文档评论(0)