FPGA|CPLD|ASIC论坛
登录
直播中
whyil
8年用户
37经验值
擅长:嵌入式技术 控制/MCU 嵌入式技术 控制/MCU
私信
关注
[问答]
求助,FPGA三段式状态机 状态未跳转!
开启该帖子的消息推送
求助
三段式
状态机
状态
//第一部分说明初始状态,和current_state<=next_state
//每一个时钟沿产生一次可能的状态变化
always@(posedge clk or negedge rst_n)
if(!rst_n)
cstate <= INIT; //复位态
else
cstate <= nstate;
//第二部分,状态转移,产生下一状态的整合逻辑
//状态的跳转
always@(cstate or
ti
me_ones or pdh_ok or locked)
begin
case (cstate)
IF_PDH_OK: //PDH OK判断
begin
if(time_ones == T2S) //2s
begin
if(pdh_ok_count >= PDH_OK_COUNT_N) //真信号
nstate <= SEARCH_PDH_OK; //搜索到pdh
`else
nstate <= WAIT; //重新扫描
end
else
nstate <= IF_PDH_OK;
end
//第三段,产生输出
always@(posedge clk or negedge rst_n)
if(!rst_n)
begin
end
else
begin
case(nstate)
IF_PDH_OK: //PDH OK判断
begin
//锯齿波扫描延长2S
if(time_count == T1S) //1s
begin
time_ones <= time_ones + 1'b1;
time_count <= 32'd0;
end
else
time_count <= time_count + 1'b1;
//清寄存器
if(time_ones == T2S) //2s
begin
time_ones <= 0;
pdh_ok_count <= 0;
end
//pdh误触发处理
//开始延时
if(pdh_ok_delay_flag == START)
begin
if(pdh_time_count == T10MS) //ms
begin
pdh_ok_delay_flag <= END;
pdh_time_count <= 32'd0;
end
else
pdh_time_count <= pdh_time_count + 1'b1;
end
else
begin
if(pdh_ok == LOCK)
begin
pdh_ok_count <= pdh_ok_count + 1'b1;
pdh_ok_delay_flag <= START;
end
end
end
求助 ,
我在
第二部分,状态转移,产生下一状态的整合逻辑
IF_PDH_OK: //PDH OK判断
time_ones == T2S 同时 pdh_ok_count >= PDH_OK_COUNT_N 时
将状态改变成
nstate <= SEARCH_PDH_OK;
//搜索到pdh
但有时并没有被进行状态跳转 还是 在
IF_PDH_OK 里
if(pdh_ok == LOCK) 时
pdh_ok_count
还在计数
这是是为什么啊?
同时我在
第三段,产生输出的
IF_PDH_OK: 状态里对pdh_ok_count清零,但pdh_ok_count并没有被清零,这是什么原因啊/
//清寄存器
if(time_ones == T2S) //2s
begin
time_ones <= 0;
pdh_ok_count <= 0;
end
已退回
10
积分
回帖
(1)
苑嘉才
2018-11-10 15:40:34
cstate的默认初始值与reset后的初值相同,导致cstate未发生变化,无事件触发,不跳转
cstate的默认初始值与reset后的初值相同,导致cstate未发生变化,无事件触发,不跳转
举报
更多回帖
rotate(-90deg);
回复
相关问答
求助
三段式
状态机
状态
不同形式的
状态机
占用资源问题
2015-01-21
2746
【Z-turn Board试用体验】有限
状态机
三段式
描述方法(转载)
2015-05-25
4970
关于特权同学写的
状态机
有疑问
2015-04-20
3899
三段式
过电流保护的模型
2017-06-30
7420
浅谈有限
状态机
FSM——以序列检测为例
2014-09-25
10378
LTC4020
三段式
充电,转不到浮充电压怎么解决?
2024-01-05
529
求大佬分享有位置传感无刷直流电机BLDL
三段式
启动仿真模型
2021-09-23
1392
编写的i2c
三段式
状态机
,编译出现问题,说我产生了多驱动,请问怎么解决?谢谢
2019-12-02
2769
想做一个采用反激拓扑的600W左右的蓄电池充电机,请问有什么控制芯片可以实现普通的
三段式
充电?
2023-07-31
3709
BLDC 电机启动时出现抖动
2024-06-20
5899
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分