边沿检测电路(二)

边沿检测电路,包括上升沿、下降沿、双沿检测电路。在检测到所需要的边沿后产生一个高电平的脉冲。

 

module edge_detect
(
    input clk,
    input rst_n,
    input data_in,
    output raising_edge_detect,
    output falling_edge_detect,
    output double_edge_detect
);

reg data_in_d1;
reg data_in_d2;

always @ (posedge clk,negedge rst_n)
begin
    if(!rst_n)
        begin
            data_in_d1 <= 1'b0;
            data_in_d2 <= 1'b0;
        end 
    else
        begin
            data_in_d1 <= data_in;
            data_in_d2 <= data_in_d1;
        end 
end 

assign raising_edge_detect = data_in_d1  & (~data_in_d2);
assign falling_edge_detect = ~data_in_d1 &  data_in_d2;
assign double_edge_detect  = data_in_d1 ^ data_in_d2;

endmodule


 

转自: http://www.cnblogs.com/qiweiwang/archive/2011/01/02/1924098.html

### PWM 边沿检测电路设计 PWM边沿检测电路用于识别PWM信号的上升沿或下降沿,这对于精确捕捉PWM周期和占空比至关重要。通过检测这些边沿事件,可以实现更精准的时间测量和其他控制功能。 #### 设计原理 在硬件层面,边沿检测通常依赖于专用逻辑门电路或微控制器内部资源来完成。对于基于微控制器的应用场景,输入捕获单元是一个常用的选择[^4]。该模块能够自动记录特定条件下的定时器状态,从而简化了软件编程复杂度并提高了响应速度。 具体来说,在STM32系列单片机中,TIMx->CCER寄存器中的`CC1P`位用来决定是监测上升沿还是下降沿。当配置为上升沿敏感时,只有遇到正跳变才会触发中断服务程序;反之亦然。此外,还可以启用双边沿触发模式以同时处理两种类型的转换。 #### 实现方法 为了提高抗干扰能力以及确保可靠的工作性能,实际应用时常采用施密特触发器作为前置缓冲级。这种器件具有迟滞特性,能够在噪声环境下稳定工作而不易误判边缘位置变化。 下面给出一段简单的C语言伪代码片段展示如何初始化一个典型的PWM输入捕获通道: ```c void Init_PWM_InputCapture(void){ // 配置GPIO引脚为复用推挽输出 GPIO_InitTypeDef GPIO_InitStruct; __HAL_RCC_GPIOA_CLK_ENABLE(); GPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); // 初始化定时器 TIM_HandleTypeDef htim1; htim1.Instance = TIM1; htim1.Init.Prescaler = 79; htim1.Init.CounterMode = TIM_COUNTERMODE_UP; htim1.Init.Period = 65535; htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; HAL_TIM_IC_ConfigChannel(&htim1, &sConfigIC, TIM_CHANNEL_1); } ``` 上述代码展示了针对STM32平台的一个基本框架,其中包含了必要的外设使能及时钟分频设定等内容。需要注意的是,具体的参数值应根据实际情况调整优化。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值