在线咨询 切换到宽版
eetop公众号 创芯大讲堂 创芯人才网

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜帖子
查看: 2233|回复: 1

[转贴] 求教关于一段式uart rx部分的代码

[复制链接]
发表于 2021-11-19 21:13:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
module top_module(
    input clk,
    input in,
    input reset,    // Synchronous reset
    output [7:0] out_byte,
    output done
); //
parameter idle=0,start=1,data=2,stop=3,err=4;
    reg [2:0]state;
    reg [2:0]cnt;
    reg [7:0]buff;
    always @(posedge clk)
        begin
            if(reset)
                begin  state<=idle;cnt<=0;buff<=0;end
            else
                case (state)
                    idle:state<=in?idle:start;
                    start: state<=data;
                    data:begin
                        state<=(cnt<7)?datain?stop:err);
                        cnt<=(cnt<7)?(cnt+1):0;
                        buff<=(cnt<7)?{in,buff[7:1]}:buff;
                    end
                    stop:state<=in?idle:start;
                    err:state<=in?idle:err;
                    default:state<=idle;
                endcase
        end
    assign done=(state==stop);
    assign out_byte=(state==stop)?buff:0;
endmodule



在hdlbits上仿真,out_byte有问题,
image.png 求大佬指点一下,data状态的 这句串并转换  buff<=(cnt<7)?{in,buff[7:1]}:buff;有什么问题吗,看了好久都不明白这句错在哪里,求大佬指教
发表于 2021-11-22 17:36:50 | 显示全部楼层
把state及cnt,buf信号也拉进来
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


手机版| 小黑屋| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-8-22 02:39 , Processed in 0.012572 second(s), 4 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表