1855|5

14

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

串口通信发送的程序编译老是出错 [复制链接]

module UARTMYSELF
(
        input CLOCK,RESET,
        output TXD,
        input iCall,
        output oDone,
        input [7:0]iData
);
        parameter B115K2=9'd434;
        reg[3:0]i;
        reg[8:0]C1;
        reg[10:0]D1;
        reg rTXD;
        reg isDone;
        
        always@(posedge CLOCK or negedge RESET)
        if(!RESET)
                begin
                        i<=4'd0;
                        C1<=9'd0;
                        D1<=11'd0;
                       rTXD<=1'b1;
                        isDone<=1'b0;
                end
        else if(iCall)
                case(i)
                        
                        0:
                        begin 
                        D1<={2'b11,iData,1b'0};
                        i<=i+1'b1;
                        end
                        
                        1,2,3,4,5,6,7,8,9,10,11:
                        if(C1==B115K2-1)begin C1<=9'd0;i<=i+1'b1;end
                        else begin rTXD<=D1[i-1];C1<=C1+1'b1;end//为什么这里i-1不需要写成1'b1
                        
                        12:
                        begin isDone<=1'b1;i<=i+1'b1;end
                        
                        13:
                        begin isDone<=1'b0;i<=4'd0;end
                        
                endcase
                
        assign TXD=rTXD;
        assign oDone=isDone;
        
endmodule

标红字体一直报语法错误,Error (10170): Verilog HDL syntax error at tx_funcmod.v(30) near text "b";  expecting "}"。求问是哪里出了问题。

    

此帖出自FPGA/CPLD论坛

最新回复

1‘b1不是1b'1   详情 回复 发表于 2019-7-3 12:43
点赞 关注
 

回复
举报

33

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
把小于号去掉再试试
此帖出自FPGA/CPLD论坛
 
 

回复

33

帖子

0

TA的资源

一粒金砂(中级)

板凳
 

          end
        else if(iCall)
                case(i)
                        
                        0:
                        begin 
                        D1<={2'b11,iData,1'b0};
                        i<=i+1'b1;
                        end
                        
                        1,2,3,4,5,6,7,8,9,10,11:
                        if(C1==B115K2-1)begin C1<=9'd0;i<=i+1'b1;end
                        else begin rTXD<=D1[i-1];C1<=C1+1'b1;end//为什么这里i-1不需要写成1'b1
                        
                        12:
                        begin isDone<=1'b1;i<=i+1'b1;end
                        
                        13:
                        begin isDone<=1'b0;i<=4'd0;end
                        

此帖出自FPGA/CPLD论坛
 
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

4
 
杭州康芯小马 发表于 2019-7-2 15:29           end         else if(iCall)     &n ...

谢谢!编译通过了,,但是我没看出来你改的哪?。。。尴尬

此帖出自FPGA/CPLD论坛

点评

1‘b1不是1b'1  详情 回复 发表于 2019-7-3 12:43
 
 
 

回复

122

帖子

0

TA的资源

版主

5
 
星星brisk 发表于 2019-7-2 18:03 谢谢!编译通过了,,但是我没看出来你改的哪?。。。尴尬

1‘b1不是1b'1

此帖出自FPGA/CPLD论坛
 
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

6
 

.。。。好的。。谢谢

此帖出自FPGA/CPLD论坛
 
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表