久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 4519|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

vhdl多功能電子秒表程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主

vhdl編的多功能電子秒表,可以記錄幾個(gè)人的時(shí)間,并且可以在跑秒的時(shí)候查看記錄。
  1. library ieee;
  2.   use  ieee.std_logic_1164.all;
  3.   use ieee.std_logic_unsigned.all;
  4.   use ieee.std_logic_arith.all;

  5. entity  clock  is
  6.   port( cp:in std_logic;
  7.                 minten:        out std_logic_vector(3 downto 0);
  8.                 min        :        out std_logic_vector(3 downto 0);
  9.                 secten:        out std_logic_vector(3 downto 0);
  10.                 sec:        out std_logic_vector(3 downto 0);
  11.                 stop:        in std_logic;
  12.                 reset:         in std_logic;
  13.         lamp:   out std_logic;
  14.         lam:   out std_logic;
  15.         read: in std_logic);
  16. end clock;

  17. architecture a of clock is
  18. signal mten: integer range 0 to 9;
  19. signal m: integer range 0 to 9;
  20. signal sten: integer range 0 to 9;
  21. signal ss: integer range 0 to 9;
  22. signal read_signal:integer range 0 to 3;
  23. signal ta : integer range 0 to 10;
  24. signal tb : integer range 0 to 10;
  25. signal tc : integer range 0 to 10;
  26. signal td : integer range 0 to 10;
  27. signal xa : integer range 0 to 10;
  28. signal xb : integer range 0 to 10;
  29. signal xc : integer range 0 to 10;
  30. signal xd : integer range 0 to 10;
  31. signal stop_signal: std_logic;

  32. begin
  33. -------------------stop_signal---------------
  34.     process(stop)
  35.     begin
  36.     if stop'event and stop='1' then
  37.        stop_signal<=not stop_signal;
  38.     end if;
  39.     end process;
  40. ------------------clock goes------------------
  41.         process(cp)
  42.         begin
  43.                 if cp'event and cp='1' then
  44.                         if reset='0' then       
  45.                         if stop_signal='1' then
  46.                                 if ss=9 then
  47.                                         ss<=0;
  48.                                         if sten=5 then
  49.                                                 sten<=0;
  50.                                                 if m=9 then
  51.                                                         m<=0;
  52.                                                         if mten=5 then
  53.                                                                 mten<=0;
  54.                                                         else mten<=mten+1;
  55.                                                         end if;
  56.                                                 else m<=m+1;
  57.                                                 end if;
  58.                                         else sten<=sten+1;
  59.                                         end if;
  60.                                 else ss<=ss+1;
  61.                                 end if;
  62.                         end if;
  63.                         else mten<=0;
  64.                                 m<=0;
  65.                                 sten<=0;
  66.                                 ss<=0;

  67.                         end if;
  68.                 end if;
  69.   end process;
  70. ------------------------------read_signal-----------
  71. process(read)
  72. begin
  73.   if read'event and read='1' then
  74.      
  75. if read_signal=2 then read_signal<=0 ;else read_signal<=read_signal+1 ; end if ;
  76.   end if;
  77. end process;
  78. --------------------record--------------
  79. process(read_signal)
  80. begin
  81.   if stop_signal='1' then  
  82.   case read_signal is
  83.         when 1=> ta<=ss;tb<=sten; tc<=m; td<=mten;lamp<='1';lam<='0';
  84.         when 2=> xa<=ss;xb<=sten; xc<=m; xd<=mten;lam<='1'; lamp<='0';
  85.         when others => lamp<='0' ;lam<='0';
  86.    end case;
  87. end if;
  88. end process;      
  89. ------------------------display--------------
  90. process(cp,read_signal)
  91. begin
  92.     case read_signal  is
  93.     when 1=>if stop_signal='0' then
  94.     minten<=conv_std_logic_vector(td,4);
  95.         min<=conv_std_logic_vector(tc,4);
  96.         secten<=conv_std_logic_vector(tb,4);
  97.         sec<=conv_std_logic_vector(ta,4);
  98.           end if;
  99.     when 2=>
  100.            if stop_signal='0' then
  101.     minten<=conv_std_logic_vector(xd,4);
  102.         min<=conv_std_logic_vector(xc,4);
  103.         secten<=conv_std_logic_vector(xb,4);
  104.         sec<=conv_std_logic_vector(xa,4);
  105.           end if;
  106.     when others=>
  107.         minten<=conv_std_logic_vector(mten,4);
  108.         min<=conv_std_logic_vector(m,4);
  109.         secten<=conv_std_logic_vector(sten,4);
  110.         sec<=conv_std_logic_vector(ss,4);
  111.     end case;
  112. end process;
  113. end a;
復(fù)制代碼



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久免费大片 | 欧美一级片在线看 | 午夜精品在线观看 | www.操.com | 久久久久国产精品www | 久久久www成人免费精品张筱雨 | 亚洲精品一区二区三区中文字幕 | 毛片网站在线观看 | www九色 | 91久久国产综合久久 | 日本视频中文字幕 | 亚洲男人天堂网 | 国产伦精品一区二区三区照片91 | 三级黄色网址 | 九九视频网 | 亚洲小视频在线播放 | 影音先锋中文字幕在线观看 | www网站在线观看 | 国产精品久久福利 | 一区二区国产在线 | 亚洲一区二区精品视频 | 欧美日韩一 | 亚洲麻豆| 国产精品久久久久久久久久 | 中文字幕1区2区 | 久久久做 | 免费在线观看一区二区三区 | 丁香综合 | 国产91观看| 成人午夜免费福利视频 | 日韩免费视频一区二区 | 最新国产视频 | 欧美手机在线 | 91精品国产高清一区二区三区 | 在线不卡一区 | 国产真实精品久久二三区 | 久久久久久久网 | 亚洲精品一区在线 | 特黄色毛片 | 色一阁| 精品日韩在线 |