⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 新建 文本文档.txt

📁 自己编写的8254计数器/计时器
💻 TXT
字号:
when "01"  =>
     case  mode_choice is 
         when "000" => --mode0
    --out_sgnl(1) <=mode0(clk,mode0_start,gate(1),CE1); 
      if (cee<(ce1-1) and gate(1)='1')  then
                   cee<=cee+1;
                   out_sgnl(1)<='0';
          elsif(cee=(ce1-1) and gate(1)='1') then 
              cee<=ce1-1;
              out_sgnl(1)<='1';
          else  
                 cee<=cee;
                 out_sgnl(1)<='0';
           end if;      
  when "001" => --mode1
           out_sgnl(1)<=mode1(clk,gate(1),mode1_start,ce1);
        when "X10" =>
           out_sgnl(1)<=mode2(clk,gate(1),mode2_start,ce1);
       when "X11"   =>
            out_sgnl(1)<=mode3(clk,gate(1),mode3_start,ce1);
       when "100" =>
           -- out_sgnl(1)<=mode4(clk,gate(1),mode4_start,ce1);
    if (cee<(ce1-1) and gate(1)='1')  then
                   cee<=cee+1;
                   out_sgnl(1)<='1';
              elsif( cee=(ce1-1) and gate(1)='1') then 
                   cee<=0;
                   out_sgnl(1)<='0';
              else 
                   cee<=cee;
                   out_sgnl(1)<='1';
              end if;
       when "101" =>
             out_sgnl(1)<=mode5(clk,gate(1),mode5_start,ce1);
     when others => null;
end case;
 
when "10"  =>
     case  mode_choice is 
        when "000" => --mode0
         --out_sgnl(2) <=mode0(clk,gate(2),mode0_start,CE2); 
         if (cee<(ce2-1) and gate(2)='1')  then
                   cee<=cee+1;
                   out_sgnl(2)<='0';
          elsif(cee=(ce2-1) and gate(2)='1') then 
              cee<=ce2-1;
              out_sgnl(2)<='1';
          else  
                 cee<=cee;
                 out_sgnl(2)<='0';
           end if;
when "001" => --mode1
           out_sgnl(2)<=mode1(clk,gate(2),mode1_start,ce2);
        when "X10" =>
           out_sgnl(2)<=mode2(clk,gate(2),mode2_start,ce2);
       when "X11"   =>
            out_sgnl(2)<=mode3(clk,gate(2),mode3_start,ce2);
       when "100" =>
          --  out_sgnl(2)<=mode4(clk,gate(2),mode4_start,ce2);
         if (cee<(ce2-1) and gate(2)='1')  then
                   cee<=cee+1;
                   out_sgnl(2)<='1';
              elsif( cee=(ce2-1) and gate(2)='1') then 
                   cee<=0;
                   out_sgnl(2)<='0';
              else 
                   cee<=cee;
                   out_sgnl(2)<='1';
              end if;
       when "101" =>
             out_sgnl(2)<=mode5(clk,gate(2),mode5_start,ce2);
        when others => null;
             end case;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -