《嵌入式创新设计技术工程方法》典型电路创新设计举例.pptVIP

  • 1
  • 0
  • 约4.7千字
  • 约 23页
  • 2019-11-28 发布于广东
  • 举报

《嵌入式创新设计技术工程方法》典型电路创新设计举例.ppt

键盘扫描编码电路 2×8矩阵键盘 扫描编码 …… 编码输出 编码有效 clk reset d In[7:0] 六位七段数码管动态显示电路的设计 位选译码 动 态 显 示 电 路 7位段码输出 8421码 8421码 8421码 …… 模6计数输出 显示控制时钟 5 4 3 2 1 0 频率计的设计 1. 总体设计框图 分频电路 1KHz 控制信号发生器 1Hz 计数器 clr en 寄存器 load 七段数码管动态显示 被测信号 位选信号 段码输出 2. 各模块的设计 分频电路 输入1KHz,1000分频,产生1Hz(秒脉冲)。 ●占空比为50%的秒脉冲: …… ●占空比为999‰的秒脉冲: 秒脉冲信号的产生方式,影响控制信号发生器的设计。 module f_1000(clk,out_1); input clk; output out_1; reg out_1; reg [10:1] counter; always @(posedge clk) begin if (counter==999) counter=0; else counter=counter+1; if (counter499) out_1=1; else out_1=0; end endmodule 可修改调整占空比 控制信号发生器 根据1Hz秒信号,产生频率计数器的使能信号en、清零信号clr和寄存器的锁存信号load。 当秒脉冲(out_1) 直接用作en 取反 再取反 上升沿用作load 低有效清零clr out_1 en load clr 问题? 当秒脉冲(out_1) 采用两秒测量一次策略: 准备 测量 out_1 en load clr 准备 测量 上升沿锁存 低有效清零 高有效使能 module ckongzhi ( out_1, en, load, clr ); input out_1 ; output en, load, clr ; reg en ; always @ ( posedge out_1 ) en = ~en ; assign load = ~en ; assign clr = ~( load (~out_1) ) ; endmodule 控制信号发生器的描述 频率测量计数器 方案一:若干8421码计数器,级联 计数器 计数器 计数器 …… 被测信号 en clr 8421码 8421码 8421码 优点:多位扩展 缺点:串行级联,毛刺 到寄存器输入端 方案二:计数器 + 代码转换 大模数计数器 代码转换 …… 8421码 8421码 8421码 被测信号 en clr 到寄存器输入端 module f_counter ( in_clk, clr, en, Q); input in_clk, en, clr; output [16:1] Q; reg [14:1] counter; // 0~9999Hz reg [4:1] qian, bai, shi, ge ; // 千、百、十、个位 always @(posedge in_clk or negedge clr) if (!clr) counter=0; else if (en) if (counter==9999) counter=0; else counter=counter+1; always @(counter) begin qian=counter / 1000; bai=(counter-qian*1000) / 100; shi=(counter-qian*1000-bai*100) / 10; ge=(counter-qian*1000-bai*100-shi*10) % 10; Q[4:1]=ge; Q[8:5]=s

文档评论(0)

1亿VIP精品文档

相关文档