集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1094|回复: 2

电网周期分12等份实现疑惑

[复制链接]
zhoulinzhang 发表于 2012-9-19 12:56:23 | 显示全部楼层 |阅读模式
always @(posedge SYS_CLK )
begin
    clk1<=Sync_CLK;
    clk2<=clk1;
    clk3<=clk2;
    if((clk3&clk2&(~clk1))==0)  //周期下降沿检测
    begin
    SyncPoint=SyncPoint+1;    //电网周期记数
  end
  else                                    //周期下降沿检测,周期到
  begin
    SyncPeriodVal=SyncPoint;   //存储周期值
     alfa_0Deg=0;      //0
      alfa_180Deg=SyncPeriodVal>>1;  //计算180度
      alfa_90Deg=SyncPeriodVal>>2;  //90
      alfa_30Deg=alfa_90Deg/3;   //30
      alfa_60Deg=alfa_30Deg<<1;   //60
      alfa_120Deg=alfa_60Deg<<1;   //120
      alfa_150Deg=alfa_30Deg+alfa_120Deg;   //150       
      alfa_210Deg=alfa_180Deg+alfa_30Deg;  //210
      alfa_240Deg=alfa_120Deg<<1;   //240
      alfa_270Deg=alfa_240Deg+alfa_30Deg;   //270
      alfa_300Deg=alfa_270Deg+alfa_30Deg;   //300
      alfa_330Deg=alfa_300Deg+alfa_30Deg;   //330
     SyncPoint=0;  //电网周期记数清0

  end

程序是想电网下降沿计算出周期,30度,60度等,非下降沿电网周期+1;疑问有1.这种不停赋值计算移位或者除是否可行,2.周期计算是否正确.3.周期下降沿检测是否正确?
希望各位高手赐教.谢谢
 楼主| zhoulinzhang 发表于 2012-9-19 13:28:11 | 显示全部楼层
欢迎大家回帖啊
 楼主| zhoulinzhang 发表于 2012-9-20 08:51:43 | 显示全部楼层
欢迎大家指点
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

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

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-6-26 11:23 , Processed in 0.067857 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表