技师cpld技术专题研修设计造作报告-vhdl数字时钟内容摘要:

时就给co 来个脉冲。 Tem2 清零。 TEM2=0000。 CO=39。 139。 ELSE TEM2=TEM2+1。 脉冲加一。 CO=39。 039。 co 清零。 END IF。 ELSE TEM1=TEM1+1。 END IF。 END IF。 END PROCESS。 END ART。 15 24 进制程序 图 44 24 进制顶层元件图 library ieee。 use。 use。 use。 entity fen24 is port ( clk:in std_logic。 rst:in std_logic。 qout1: out std_logic_vector(3 downto 0)。 qout2: out std_logic_vector(3 downto 0)。 co:out std_logic )。 end fen24。 architecture behave of fen24 is signal tem1:std_logic_vector(3 downto 0)。 signal tem2:std_logic_vector(3 downto 0)。 begin process(clk,rst) begin if(rst=39。 139。 )then 当 rst(复位)等于 1, 输出进位脉冲则执行下一条语句 tem1=0000。 tem1 输出为 0 tem2=0000。 tem2 输出为 0 elsif clk39。 event and clk=39。 139。 then 当时钟信号为上升沿触发时 if (tem2=0010and tem1=0011)then如果 tem2 为 2, tem1 为 3,执行以下程序 tem1=0000。 那么 tem1 和 tem2 就清零 tem2=0000。 co=39。 139。 有输出进位 Else 否则 co=39。 039。 无输出进位 if tem1=1001then 在不满足以上情况如果 tem1 加至 9 tem1=0000。 tem1 则清零 if tem2=1001then如果 tem2 为 9 tem2=0000。 tem2 则清零(此段为 100 进制) Else 否则 tem2=tem2+1。 tem2 加 1 end if。 结束 if 语句 Else 否则 tem1=tem1+1。 tem1 加 1 end if。 结束 if 语句 end if。 结束 if 语句 end if。 结束 if 语句 16 qout1=tem1。 qout2=tem2。 end process。 结束进程 end behave。 60 进制程序 45 60 进制顶层元件图 library ieee。 use。 use。 use。 entity fen60 is port ( clk:in std_logic。 rst:in std_logic。 qout1: out std_logic_vector(3 downto 0)。 qout2: out std_logic_vector(3 downto 0)。 co:out std_logic )。 end fen60。 architecture behave of fen60 is signal tem1:std_logic_vector(3 downto 0)。 signal tem2:std_logic_vector(3 downto 0)。 begin process(clk,rst) begin if(rst=39。 139。 )then 当 ckr 为上升沿时 tem1=0000。 tem1 清零 tem2=0000。 tem2 清零 elsif clk39。 event and clk=39。 139。 then 当时钟信号为上升沿时,执行以下句子 if tem1=1001then 如果 tem1 为 9 时 tem1=0000。 则 tem1 清零 if tem2=0101then 如果 tem2 为 5 时 tem2=0000。 则 tem2 清零 co=39。 139。 输出 进位脉冲 Else 17 tem2=tem2+1。 tem2 加 1 co=39。 039。 无进位脉冲输出 end if。 结束 if 语句 else 否则 tem1=tem1+1。 个位加 1 end if。 结束 if 语句 end if。 结束 if 语句 qout1=tem1。 qout2=tem2。 end process。 结束进程 end behave。 24 进制 C LKR STQOU T 1[ 3. . 0]QOU T 2[ 3. . 0]COAA24ins t 38 LIBRARY IEEE。 USE。 USE。 USE。 ENTITY AA24 IS PORT( CLK:IN STD_LOGIC。 RST:IN STD_LOGIC。 QOUT1: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 QOUT2: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 CO: OUT STD_LOGIC )。 END AA24。 ARCHITECTURE ART OF AA24 IS SIGNAL TEM1: STD_LOGIC_VECTOR(3 DOWNTO 0)。 SIGNAL TEM2: STD_LOGIC_VECTOR(3 DOWNTO 0)。 BEGIN PROCESS (CLK,RST) BEGIN IF(RST=39。 139。 )THEN TEM1=0000。 TEM2=0000。 ELSIF CLK39。 EVENT AND CLK=39。 139。 THEN IF (TEM2=0010 AND TEM1=0011) THEN TEM1=0000。 TEM1=0000。 CO=39。 139。 18 ELSE CO=39。 039。 IF TEM1=1001 THEN TEM1=0000。 IF TEM2=1001 THEN TEM2=0000。 ELSE TEM2=TEM2+1。 END IF。 ELSE TEM1=TEM1+1。 END IF。 END IF。 END IF。 QOUT1=TEM1。 QOUT2=TEM2。 END PROCESS。 END ART。 数码管显示 Q I N [ 3 . . 0 ] Q O U T [ 7 . . 0 ]L E D 7in s t 3 6 LIBRARY IEEE。 USE。 USE。 USE。 ENTITY LED7 IS PORT( QIN: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 QOUT: OUT STD_LOGIC_VECTOR(7 DOWNTO 0) )。 END LED7。 ARCHITECTURE ART OF LED7 IS BEGIN WITH QIN SELECT QOUT=00000011 WHEN 0000,显示 0 10011111 WHEN 0001,显示 1 00100101 WHEN 0010,显示 2 00001101 WHEN 0011,显示 3 10011001 WHEN 0100,显示 4 01001001 WHEN 0101,显示 5 01000001 WHEN 0110,显示 6 19 00011111 WHEN 0111,显示 7 00000001 WHEN 1000,显示 8 00001001 WHEN 1001,显示 9 00010001 WHEN 1010,显示 A 11000001 WHEN 1011,显示 B 01100011 WHEN 1100,显示 C 10000101 WHEN 1101,显示 D 01100001 WHEN 1110,显示 E 11111101 WHEN 1111,显示 00000011 WHEN OTHERS。 END ART。 数码管动态显示 C LKR STQI N 1[ 3. . 0]QI N 2[ 3. . 0]QI N 3[ 3. . 0]QI N 4[ 3. . 0]QI N 5[ 3. . 0]QI N 6[ 3. . 0]QOU T [ 3. . 0]SEL [ 7. . 0]D T SMin s t 24 LIBRARY IEEE。 USE。 USE。 USE。 ENTITY DTSM IS PORT( CLK : IN STD_LOGIC。 RST : IN STD_LOGIC。 QIN1: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 QIN2: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 QIN3: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 QIN4: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 QIN5: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 QIN6: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 QOUT: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 SEL : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) )。 END DTSM。 ARCHITECTURE ART OF DTSM IS BEGIN PROCESS(CLK,RST) VARIABLE CNT:INTEGER RANGE 0 TO 7。 BEGIN 20 IF(RST=39。 139。 ) THEN CNT:=0。 SEL=11111110。 QOUT=0000。 ELSIF CLK39。 EVENT AND CLK=39。 139。 THEN IF CNT=7 THEN CNT:=0。 ELSE CNT:=CNT+1。 END IF。 CASE CNT IS WHEN 0=QOUT=QIN1。 SEL=11111110。 WHEN 1=QOUT=QIN2。 SEL=11111101。 WHEN 2=QOUT=1111。 SEL=11111011。 WHEN 3=QOUT=QIN3。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。