2551|3

2

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

求大神帮忙看看这个PWM控制LED输出的哪里出错误了啊 [复制链接]

就开关3能用--。其他都出不来

module pwm_top(
input clk,rst,
input sw1,sw2,sw3,sw4,sw5,
output pwm
    );
   
reg [15:0]cnt;
reg [5:0]duty;
reg [15:0]count;
reg clk_div;
reg pwm;
always@(posedge clk or posedge rst)
if(rst)begin
count<=0;clk_div<=0;
end
else if(count==50000)begin
clk_div<=~clk_div;count<=0;
end
else count<=count+1;

always@(posedge clk_div or posedge rst)   
if(rst)begin
pwm<=1;
duty<=0;
end

else begin

if(duty<=20)
duty<=0;
else
duty<=duty+1;

if(sw1)begin
if(duty<4)
pwm<=0;
else
pwm<=1;
end

else if(sw2)begin
if(duty<8)
pwm<=0;
else
pwm<=1;
end

else if(sw3)
pwm<=~pwm;

else if(sw4)begin
if(duty<16)
pwm<=0;
else
pwm<=1;
end

else if(sw5)
pwm<=0;

else
pwm<=1;

end


endmodule
此帖出自FPGA/CPLD论坛

最新回复

不要叫 “大神” 了吧, 大家都是人,时间都宝贵, 代码自己理清了,自己也好看,别人也好看。  详情 回复 发表于 2016-6-14 22:10
点赞 关注
 

回复
举报

1950

帖子

4

TA的资源

版主

沙发
 
至少花了10分钟才把你的代码,整理能看了.下次能把代码整理好了 附件贴上来吗。

按照你代码的意思,
sw1,2,3,4,5 是用来选择模式,那就直接用case 好了

恭喜你,找了了 提高点 clk_div 不可以当时钟用,
你这个代码里面,有且只有一个时钟 就是 clk
此帖出自FPGA/CPLD论坛
个人签名MicroPython中文社区https://micropython.org.cn/forum/  
 
 

回复

1950

帖子

4

TA的资源

版主

板凳
 
不要叫 “大神” 了吧, 大家都是人,时间都宝贵,
代码自己理清了,自己也好看,别人也好看。
此帖出自FPGA/CPLD论坛
个人签名MicroPython中文社区https://micropython.org.cn/forum/  
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

4
 
5525 发表于 2016-6-14 21:48
至少花了10分钟才把你的代码,整理能看了.下次能把代码整理好了 附件贴上来吗。

按照你代码的 ...

哦哦哦 我比较少接触论坛=.=下次会注意的
此帖出自FPGA/CPLD论坛
 
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表