当前位置:首页 » 课程大全 » eda课程设计lcd模块接口电路设计t6963c

eda课程设计lcd模块接口电路设计t6963c

发布时间: 2021-02-08 00:13:43

❶ 求基于EDA的函数信号发生器的课程设计

本设计采用FPGA和锁相环4046实现波形发生器。系统由波形产生模块和可调频率的时钟产生模块,数模转换模块和显示模块四部分组成。波形产生模块完成三种波形的产生,并根据控制信号完成选定波形的输出。可调频率的时钟产生模块能够产生具有不同频率的方波clk,用此方波作为时钟完成输出波形频率的调整。显示模块用于显示输出波形的频率。数模转换模块将波形产生模块输出的数字信号转换为模拟信号;并完成滤波以及放大等功能。此设计的特点在于结合了直接数字频率合成技术和锁相技术各自的优点,同时利用了FPGA的强大处理能力使系统易于实现,结构简单。本设计能产生正弦波,三角波,占空比可调的方波以及它们的线性组合;频率在100Hz~20KHz之间能以100Hz为步进进行调整;幅度可调范围为0~5V。

关键词:正弦波;三角波;占空比可调的方波;频率可调;FPGA;锁相环4046

目 录

引言………………………………………………………………………………………1
1 设计任务……………………………………………………………………………1
1.1 基本要求……………………………………………………………………………1
1.2 发挥部分……………………………………………………………………………1
2 方案论证与比较……………………………………………………………………1
2.1 常见信号源制作方法原理…………………………………………………………1
2.2 常见信号产生电路…………………………………………………………………3
3 系统电路的设计………………………………………………………………4
3.1 系统框图及说明……………………………………………………………………4
3.2 主要电路设计说明…………………………………………………………………6
3.2.1晶体振荡电路………………………………………………………………………6
3.2.2倍频电路……………………………………………………………………………6
3.2.3数模转换和放大滤波电路…………………………………………………………7
3.2.4数码管显示电路……………………………………………………………………8
3.2.5 输入去抖电路……………………………………………………………………9
3.3 主要软件设计说明…………………………………………………………………10
3.3.1前端核心软件设计………………………………………………………………10
3.3.2波形产生模块软件设计…………………………………………………………12
3.4 主要元器件介绍……………………………………………………………………15
3.4.1FPGA介绍…………………………………………………………………………15
3.4.2锁相环4046介绍…………………………………………………………………16
3.4.3VHDL介绍…………………………………………………………………………19
3.4.4MAX+PLUSII介绍…………………………………………………………………20
4软件仿真与硬件调试与测试 ……………………………………………………20 4.1 软件部分仿真……………………………………………………………………20
4.2 硬件调试……………………………………………………………………………22
4.3 硬件电路测试………………………………………………………………………22
4.4 误差分析……………………………………………………………………………23
5 工程设计……………………………………………………………………………23
6 制作…………………………………………………………………………………24
7 结论…………………………………………………………………………………25
谢辞………………………………………………………………………………………26
参考文献…………………………………………………………………………………27
附录………………………………………………………………………………………28

❷ 求常用的由T6963C控制的12864LCD型号有哪些它们的引脚连接以及和单片机的连接图

这个比较少有,以为我们公司在广州锐显那买过一批,还不错。
型号好像是12864G-4来着。忘了,你可以网络搜搜他们公司去问问。

❸ EDA波形发生器课程设计

MAIN:MOV A,P1
MOV R0,A ;设置高电平
MOV R1,#00H ;设置低电平
LCALL BOXING
SJMP MAIN
BOXING: JNB P1.0,SANJIAO ;P1.0控制三角波的输出
JNB P1.1,JUXING ;P1.1控制矩形波的输出
JNB P1.2,JUCHI ;P1.2控制锯齿波的输出
JNB P1.3,ZXBO;P1.3控制正弦波的输出
RET
;**********三角波********
SANJIAO:
MOV DPTR,#7FFFH ; 选中DA0832
MOV A,#00H
UP1: MOVX @DPTR,A ; 向0832输出数据
INC A
JNZ UP1 ; A=!0 跳转反之顺序执行
DOWN1:DEC A
MOVX @DPTR,A
JNZ DOWN1
RET
;*********矩形波*********
JUXING:
MOV DPTR,#7FFFH
LP:MOV A,R0 ;设置输出上限
MOVX @DPTR,A
LCALL DEL_H ;调高电平延时程序
MOV A,R1
MOVX @DPTR,A
LCALL DEL_L ;调低电平延时程序
RET
;*********锯齿波********
JUCHI:
MOV DPTR,#7FFFH
MOV A,#00H
LOOP:MOVX @DPTR,A
INC A
SJMP LOOP
RET
;*********正弦波********
ZZXBO:
DA01 :
MOV R7,#0FFH
MOV DPTR ,#TAB
DA02 :
MOV A , #0H
MOVC A , @A+DPTR
MOV R0,DPL
MOV R1,DPH
MOV DPTR,#7FFFH
MOVX @DPTR, A
MOV DPL,R0
MOV DPH,R1
INC DPTR
DJNZ R7,DA02
AJMP DA01
TAB :
DB 80H,83H,86H,89H,8DH,90H,93H,96H
DB 99H,9CH,9FH,0A2H,0A5H,0A8H,0ABH,0AEH
DB 0B1H,0B4H,0B7H,0BAH,0BCH,0BFH,0C2H,0C5H
DB 0C7H,0CAH,0CCH,0CFH,0D1H, 0D4H,0D6H,0D8H
DB 0DAH,0DDH,0DFH,0E1H,0E3H, 0E5H,0E7H,0E9H
DB 0EAH,0ECH,0EEH,0EFH,0F1H, 0F2H,0F4H,0F5H
DB 0F6H,0F7H,0F8H,0F9H,0FAH, 0FBH,0FCH,0FDH
DB 0FDH,0FEH,0FFH,0FFH,0FFH, 0FFH,0FFH,0FFH
DB 0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH,0FEH,0FDH
DB 0FDH,0FCH,0FBH,0FAH,0F9H, 0F8H,0F7H,0F6H
DB 0F5H,0F4H,0F2H,0F1H,0EFH, 0EEH,0ECH,0EAH
DB 0E9H,0E7H,0E5H,0E3H,0E1H, 0DEH,0DDH,0DAH
DB 0D8H,0D6H,0D4H,0D1H,0CFH, 0CCH,0CAH,0C7H
DB 0C5H,0C2H,0BFH,0BCH,0BAH, 0B7H,0B4H,0B1H
DB 0AEH,0ABH,0A8H,0A5H,0A2H, 9FH, 9CH, 99H
DB 96H, 93H, 90H, 8DH, 89H, 86H, 83H, 80H
DB 80H, 7CH, 79H, 78H, 72H, 6FH, 6CH, 69H
DB 66H, 63H, 60H, 5DH, 5AH, 57H, 55H, 51H

DB 38H, 35H, 33H, 30H, 2EH, 2BH, 29H, 27H
DB 25H, 22H, 20H, 1EH, 1CH, 1AH, 18H, 16H
DB 15H, 13H, 11H, 10H, 0EH, 0DH, 0BH, 0AH
DB 09H, 08H, 07H, 06H, 05H, 04H, 03H, 02H
DB 02H, 01H, 00H, 00H, 00H, 00H, 00H, 00H
DB 00H, 00H, 00H, 00H, 00H, 00H, 01H, 02H
DB 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09H
DB 0AH, 0BH, 0DH, 0EH, 10H, 11H, 13H, 15H
DB 16H, 18H, 1AH, 1CH, 1EH, 20H, 22H, 25H
DB 27H, 29H, 2BH, 2EH, 30H, 33H, 35H, 38H
DB 3AH, 3DH, 40H, 43H, 45H, 48H, 4CH, 4EH
DB 51H, 55H, 57H, 5AH, 5DH, 60H, 63H, 66H
DB 69H, 6CH, 6FH, 72H, 76H, 79H, 7CH, 80H
RET
;********延时程序*******
DEL_H: ;高电平
MOV R7,#57
DE:MOV R6,#4

RET
DEL_L: ;低电平
MOV R7,#57
DEL:MOV R6,#4
DJNZ R6,$
DJNZ R7,DE
RET
END

❹ EDA课程设计,利用EP3C5E型FPGA芯片设计流水灯,两个开关控制8个LED灯,显示式样为4种。大神们,求程序!

进行模块程序的编写,然后组合调试,

❺ EDA课程设计:彩灯控制器

以前做的设计,粘贴时图形没出来,参考一下,记得给分啊

一.设计目的
1、学习EDA开发软件和MAX+plus Ⅱ的使用方法,熟悉可编程逻辑器件的使用,通过制作来了解彩灯控制系统。
2、进一步掌握数字电路课程所学的知识。
3、了解数字电路设计的一般思路,进一步解决和分析问题。
4、培养自己的编程和谨慎的学习态度
二、.设计题目内容和要求
(1)课题内容:
用EDA技术设计一个彩灯控制器,使彩灯(LED管)能连续发出三种以上不同的花型(自拟);
随着彩灯显示图案的变化,发出不同的音响声。
要求使用7段数码管显示当前显示的花型,如第一种花型显示A1,第二种花型显示b2,第三种花型显示C3
(2)主要任务:完成该系统的硬件和软件的设计,并利用实验箱制作出实物演示,调试好后并能实际运用(指导教师提供制作所需的器件),最后就课程设计本身提交一篇课程设计报告。
三、总体方案设计与选择
1 总体方案的设计
方案一:电路分为三个部分:彩灯花型模块、声音模块,时钟模块。用时钟控制声音和花型,整体使用相同的变量与信号,主体框图如下;

图三—1-1方案一的的流程图
方案二:电路分为五个模块:分频器模块、16进制计数器、4进制计数器,4选1选择器、彩灯控制器。其中彩灯控制器是用来输出不同的花样,彩灯控制器的输出则是用一个16进制的计数器来控制,扬声器的输出时用不同的频率来控制,所以用了一个集成分频器来使输入的频率被分为几种不同的频率,不同频率的选择性的输出则是用一个4选一的选择器来控制。整体框图如下:

图三—1-2方案二的流程图
2、方案的选择
方案一是将融合在一起,原理思路简单,元件种类使用少,但是在编程时要使用同一变量和信号,这样就会给编程带来很大的困难,另外中间单元连线较多,不容易检查,门电路使用较多,电路的抗干扰能力会下降。
方案二将彩灯花型控制与声音控制分开,各单元电路只实现一种功能,电路设计模块化,且编程时将工作量分开,出现错误时较容易检查,连线较少且容易组装和调试。
结合两个方案的优缺点,我选择容易编程、组装和调试的方案二。

四、模块电路的设计
1、分频器模块
设计要求显示不同的彩灯的时候要伴随不同的音乐,所以设计分频器来用不同的频率控制不同的音乐输出。
模块说明:
Rst:输入信号 复位信号 用来复位分频器的输出使输出为“0”,及没有音乐输出。
Clk:输入信号 模块的功能即为分频输入的频率信号。
Clk_4、clk8、clk_12、clk_16:输出信号 即为分频模块对输入信号clk的分频,分别为1/4分频输出、1/8分频输出、1/12分频输出、1/16分频输出。不同的频率会发出不同的声音。如图

图四-1分频器电路图
2、16进制计数器
16进制模块用来控制彩灯输出模块,即确定彩灯控制器的不同的输出。
Rst:输入信号 复位信号 用来复位16进制使其输出为“00000”,即彩灯不亮。
Clk1:输入信号 用来给模块提供工作频率。
Count_out[3..0]:输出信号 即为16进制计数器的输出,此输出信号作为彩灯的输入信号。
如图四-2
图四-2 16进制计数器电路图
3、4进制计数器模块
4进制计数器作为选择器的输入来控制选择器选择不同的频率作为输出控制扬声器工作。
Clk2:输入信号 来为计数器提供工作频率。
Rst:输入信号 复位信号 使计数器的输出为“00”。
如图四-3
图四-3 4进制计数器电路图
4、4选1选择器模块
Rst:输入信号复位信号使选择器的输出为“0”。
In1、in2、in3、in4:输入信号接分频器的输出。
Inp[1..0]:输入信号接4进制计数器的输出用来控制选择器的选择不同的输入选择不同的输出。
Output2:输出信号直接接扬声器即输出的是不同的频率来控制扬声器播放声音
如图四—4
图四—4 4选1选择器电路图
5、彩灯控制模块
彩灯控制采用的模式6来进行显示。
图四—5—1模式6结构图
彩灯控制模块用来直接控制彩灯的输出,使彩灯表现出不同的花样。
Rst:输入信号 使彩灯控制模块的输出为“00000000”,即让彩灯无输出。
Input[4..0]:输入信号 不同的输入使彩灯控制模块有不同的输出即彩灯显示出不同的花样。
Output3[7..0]:输出信号 直接与数码管相连来控制数码管。
如图四—5—2
图四-5-2 彩灯控制电路图
五、EDA设计与仿真
1、源程序:
----------------------------------------------分频器模块-----------------------------------------

LIBRARYieee;
USEieee.std_logic_1164.all;

ENTITYfenpinqi IS

PORT
(
clk2,rst :IN std_logic;
clk_12,clk_4,clk_16,clk_8 : OUT std_logic
);

ENDfenpinqi;

ARCHITECTUREcd OF fenpinqi IS
begin
p1:process(clk2,rst)
variable a:integer range 0 to 20;

begin
if rst='1' then
clk_4<='0'; ----- 复位信号控制部分
else
if clk2'event and clk2='1'then
if a>=3 then
a:=0;
clk_4<='1';
else
a:=a+1;
clk_4<='0';
end if;
end if;
end if;
endprocess p1;

p2:process(clk2,rst)
variable b:integer range 0 to 20;

begin
if rst='1' then
clk_16<='0'; ----- 复位信号控制部分
else
if clk2'event and clk2='1'then
if b>=15 then
b:=0;
clk_16<='1';
else
b:=b+1;
clk_16<='0';
end if;
end if;
end if;
endprocess p2;

p3:process(clk2,rst)
variable c:integer range 0 to 20;

begin
if rst='1' then
clk_8<='0'; ----- 复位信号控制部分
else
if clk2'event and clk2='1'then
if c>=7 then
c:=0;
clk_8<='1';
else
c:=c+1;
clk_8<='0';
end if;
end if;
end if;
endprocess p3;

p4:process(clk2,rst)
variable d:integer range 0 to 40;

begin
if rst='1' then
clk_12<='0'; ----- 复位信号控制部分
else
if clk2'event and clk2='1'then
if d>=11 then
d:=0;
clk_12<='1';
else
d:=d+1;
clk_12<='0';
end if;
end if;
end if;
endprocess p4;
endcd;

----------------------------------------------4选1选择器---------------------------------------
LIBRARYieee;
USEieee.std_logic_1164.all;

ENTITYxzq4_1 IS

PORT
(
rst:in std_logic;
inp:in integer range 0 to 3;
in1,in2,in3,in4 : In std_logic;

output2 :OUT std_logic
);

ENDxzq4_1;

ARCHITECTUREa OF xzq4_1 IS

BEGIN

PROCESS (rst,inp)
BEGIN
if(rst='1') then output2<='0';

else
case inp is
when 0=>output2<=in1;
when 1=>output2<=in2;
when 2=>output2<=in3;
when 3=>output2<=in4;
when others=>null;
end case;
end if;
END PROCESS;
ENDa;

-------------------------------------------彩灯控制模块----------------------------------------
LIBRARYieee;
USEieee.std_logic_1164.all;

ENTITYcaideng IS

PORT
(
input :
IN INTEGER RANGE
0 TO 15;
rst:in std_logic;
output3 :OUT std_logic_vector(7 downto 0);
sm :out std_logic_vector(6 downto 0)
);

ENDcaideng;

ARCHITECTUREa OF caideng IS

BEGIN

PROCESS (input)
BEGIN
if rst='1' thenoutput3<="00000000";sm<="0000000";
else
case input is
when 0=>output3<="00111000";sm<="0000110";
when1=>output3<="00001111";sm<="0000110";
when2=>output3<="00111110";sm<="0000110";
when3=>output3<="01111111";sm<="0000110";

when4=>output3<="01011011";sm<="1011011";
when5=>output3<="01110110";sm<="1011011";
when6=>output3<="00001111";sm<="1011011";
when7=>output3<="01111111";sm<="1011011";

when8=>output3<="01101101";sm<="1001111";
when9=>output3<="00000111";sm<="1001111";
when10=>output3<="01110111";sm<="1001111";
when11=>output3<="01111011";sm<="1001111";

when12=>output3<="00111000";sm<="1100110";
when13=>output3<="00111111";sm<="1100110";
when14=>output3<="00111110";sm<="1100110";
when 15=>output3<="01111001";sm<="1100110";
when others=>null;

end case;
end if;
end process;
end a;

--------------------------------------------16进制计数器模块-----------------------------------

LIBRARYieee;
USEieee.std_logic_1164.all;

ENTITYcounter_16 IS

PORT
(
clk,rst :IN std_logic;
count_out :
OUT INTEGER RANGE
0 TO 15);

ENDcounter_16;

ARCHITECTUREa OF counter_16 IS
BEGIN

PROCESS (rst,clk)
variable temp:integer range 0 to 16;
BEGIN

IF rst='1' THEN
temp:=0;

ELSIF (clk'event and clk='1') THEN

temp:=temp+1;
if(temp=15) then
temp:=0;
end if;
END IF;
count_out<=temp;
END PROCESS;
ENDa;

-------------------------------4进制计数器模块----------------------------------
LIBRARYieee;
USEieee.std_logic_1164.all;

ENTITYcounter_4 IS

PORT
(
clk,rst :IN std_logic;
count_out :OUT integer range 0 to 3 );

ENDcounter_4;

ARCHITECTUREa OF counter_4 IS
BEGIN

PROCESS (rst,clk)
variable temp:integer range 0 to 16;
BEGIN

IF rst='1' THEN
temp:=0;
ELSIF (clk'event and clk='1') THEN

temp:=temp+1;
if(temp=4) then
temp:=0;
end if;
END IF;
count_out<=temp;
END PROCESS;
ENDa;

-------------------------------------------主程序----------------------------------
LIBRARYieee;
USEieee.std_logic_1164.all;

ENTITYproject IS
PORT (clk1,rst,clk2: IN std_logic;
Out1: OUT std_logic_vector(7 downto 0);
Out2 :out std_logic_vector(6 downto0);
Out3: OUT std_logic);
ENDproject;

ARCHITECTUREstruct OF project IS
COMPONENT counter_16 IS
PORT(clk,rst : IN std_logic;
count_out : OUT integer range 0 to 15 );
ENDCOMPONENT;

COMPONENT fenpinqi IS
PORT(clk2,rst : IN std_logic;
clk_12,clk_4,clk_16,clk_8 : OUT std_logic);
END COMPONENT ;

COMPONENT counter_4 IS
PORT(clk,rst :IN std_logic;
count_out :OUT integer range 0 to 3 );

ENDCOMPONENT;

COMPONENT xzq4_1 IS
PORT
(
rst:in std_logic;
inp:in integer range 0 to 3;
in1,in2,in3,in4 : In std_logic;

output2 :OUT std_logic
);

ENDCOMPONENT;

COMPONENT caideng IS
PORT
(
input: IN INTEGER RANGE 0 TO 15;
rst:in std_logic;
output3 :OUT std_logic_vector(7 downto 0);
sm :out std_logic_vector(6 downto 0)
);

ENDCOMPONENT;

SIGNALu: integer range 0 to 15;
SIGNALw: integer range 0 to 3;
SIGNALv1,v2,v3,v4: std_logic;

BEGIN
U1:counter_16PORT MAP(clk1,rst,u);
U2:fenpinqiPORT MAP(clk2,rst, v1,v2,v3,v4);
U3:counter_4PORT MAP(v3,rst,w);
U4:xzq4_1 PORT MAP(rst,w, v1,v2,v3,v4,out3);
U5:caidengPORT MAP(u,rst,out1,out2);
ENDstruct;
2、彩灯控制器仿真结果及数据分析
分析:如上图,clk1控制的是彩灯模块,clk2控制的是声音模块,当rst为高电平是输出全为0,ck1每出现四个高电平,花型发生一次变化,out2分别显示1、2、3、4,out1显示不同的花型,out3发出声音,如图脉冲数不同表示发出的声音不同,但是声音与花型相比有一定的延迟。
六、硬件实现
1、引脚锁定图
2、硬件仿真图
显示第一组花型之一
显示第二组花型之一
显示第三组花型之一

显示的第四组花型之一

七、总体电路
整个系统就是各个分模块组成来实现最后的彩灯控制功能,系统又两个时钟来控制一个是控制16进制计数器即控制彩灯控制模块来实现彩灯的不同输出,另一个时钟为分频器的输入来进行分频处理,最后用来控制扬声器发出不同的音乐,为了使效果明显尽量达到要求分频处理的时钟的频率比实现彩灯控制的时钟频率要高。
将各个模块连在一起采用在课程中学到的元件例化,将各个模块的引脚连在一起,使之成为一个整体。元件例化是VHDL设计实体构自上而下层次化设计的重要途径。整体电路如图五—1

图七—1 整体电路图
八、心得体会
1、在设计时遇到一些主要问题如下:怎么将各个模块连在一起、开始硬件仿真时总是出现错误,设计方案的选择。最后我选择了元件例化将各个模块连在一起,仿真时是因为短路帽接错了,当时没有注意,在方案的选择时我们选了实现比较简单的分模块方案
2、这次的EDA课程设计我学到得东西很多明白了理论与实践之间的差距,而且对DEA课程有了更深入的理解,尤其是知道了怎么去应用所学的知识,怎么去利用网络实现自己的要求,具体体会如下:
(1)要想完成编程就要对DEA知识很熟悉,这样才能加快编程的速度,另外在编程时一定要小心,稍微有一点粗心都会有很多的错误出现,在出现错误后要学会寻找错误原因如名称前后不一、数据类型不同、符号写错等等
(2)拿道题目后要注意分析,要学会总体把握,然后再一一一细化、学会将复杂的问题简单化,分析时一定要有一个明确的目标。
(3)要学会理论联系实际,在程序导入到实验箱后,居然不显示结果,认真的检查看看操作是否有错误、试验箱中该短路的是否已用短路帽短路、又重新检查了一下程序,结果发现是短路帽接错了,所以看似很简单的操作自己操作起来可能会有很大的漏洞,所以亲自动手是很重要的。
(4)当自己的只是有限时,要注意运用网络等一切资源,要学会知识的灵活运用在查阅的过程中学到了很多在书本所没有学到的知识,通过查阅相关资料进一步加深了对EDA的了解
总的来说,通过这次课程设计不仅锻炼了我们的动手和动脑能力,也使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,要把所学的理论知识与实践相结合起来,才能提高自己的实际动手能力和独立思考的能力。还有最重要的一点就是要有一丝不苟的精神和端正认真的态度,遇到困难后要学会积极的面对。
3、在此设计中声音会有一定的延迟,可以考虑用花型输出信号作为4选1的控制信号
九、参考书目:
赵伟军,《Protel99se教程》,北京,人民邮电出版社,1996年
金西,《VHDL与复杂数字系统设计》,西安,西安电子科技大学出版社,2003
汉泽西,《EDA技术及其应用》,北京,北京航空航天大学出版社,2004
[4] 黄任,《VHDL入门.解惑.经典实例.经验总结》,北京,北京航空航天大学出版社,2005
[5] 李洋,《EDA技术 使用教程》,北京,机械工业出版社,2009
[6] 网络资源:EDA课程设计、EDA课程设计—彩灯控制器等

❻ 求12864-12 T6963C 控制芯片 例程

你可以参考下面这段代码,同样是T6963C,只是显示区域是240*128,操作之前先将LCD复位一次,你对着资料将初始化的寄存器改改就可以了,另外电路和你的不同,所以读状态寄存器和写寄存器的方法不同,你的需要操作P0,P1,P3口模拟读和写.其实T6963C可以直接和MCS51外部总线接口的,时序完全满足要求,下面的代码就是将/CE接P2.7,C/D接P2.0,直接用MOVX指令访问的.
#define dis_comand XBYTE[0x7fff] //液晶操作命令地址
#define dis_data XBYTE[0x7ffe] //液晶显示数据地址
#define discommand 1 //定义液晶操作的常量
#define disdata 0
/*****************************************
*液晶初始设置参数
*****************************************/
void dis_set()
{
dis_write_dandc(0xb2,discommand); //先关闭自动写模式
dis_write_dandc(20,disdata);
dis_write_dandc(8,disdata);
dis_write_dandc(0x21,discommand);
dis_write_dandc(0,disdata);
dis_write_dandc(0,disdata);
dis_write_dandc(0x42,discommand);
dis_write_dandc(30,disdata);
dis_write_dandc(0,disdata);
dis_write_dandc(0x43,discommand);
dis_write_dandc(0x3,disdata);
dis_write_dandc(0,disdata);
dis_write_dandc(0x22,discommand);
dis_write_dandc(0xa1,discommand);
dis_write_dandc(0x81,discommand);
dis_write_dandc(0x98,discommand); //液晶初始化完成
}
/******************************************
* 写数据到液晶包括命令
******************************************/
void dis_write_dandc(uchar x,bit y)
{
uchar i;
lab1:
i=dis_comand;
i=i&0x3;
if (i!=3) goto lab1; //检查状态
if (y==discommand) dis_comand=x; //命令
else dis_data=x; //数据
}

❼ EDA技术及应用课程设计 任选其一

你想干什么哦~!

❽ 救急哇,EDA课程设计,乘法器的!!

这是8位无符号,参数自己修改可以得到你想要的
library ieee;
use ieee.std_logic_1164.all;
entity multi8 is
port(a,b:in std_logic_vector(7 downto 0);
y:out std_logic_vector(15 downto 0));
end entity multi8;
architecture behavioral of multi8 is
begin
behavior:process(a,b) is
variable a_in:std_logic_vector(7 downto 0);
variable b_in:std_logic_vector(7 downto 0);
variable y_out:std_logic_vector(15 downto 0);
variable carry_in,carry:std_logic;
begin
a_in:=a;
b_in:=b;
y_out:=(others=>'0');
for count in 0 to 7 loop
carry:='0';
if(b_in(count)='1') then
for index in 0 to 7 loop
carry_in:=carry;
carry:=(y_out(index+count) and a_in(index))
or (carry_in and (y_out(index+count) xor a_in(index)));
y_out(index+count):=y_out(index+count) xor a_in(index) xor carry_in;
end loop;
y_out(count+8):=carry;
end if;
end loop;
y<=y_out;
end process behavior;
end architecture behavioral;

热点内容
武汉大学学生会辅导员寄语 发布:2021-03-16 21:44:16 浏览:612
七年级学生作文辅导学案 发布:2021-03-16 21:42:09 浏览:1
不屑弟高考成绩 发布:2021-03-16 21:40:59 浏览:754
大学毕业证会有成绩单 发布:2021-03-16 21:40:07 浏览:756
2017信阳学院辅导员招聘名单 发布:2021-03-16 21:40:02 浏览:800
查询重庆2018中考成绩查询 发布:2021-03-16 21:39:58 浏览:21
结业考试成绩怎么查询 发布:2021-03-16 21:28:40 浏览:679
14中医医师资格笔试考试成绩查分 发布:2021-03-16 21:28:39 浏览:655
名著赏析课程标准 发布:2021-03-16 21:27:57 浏览:881
北京大学商业领袖高端培训课程 发布:2021-03-16 21:27:41 浏览:919