當前位置:首頁 » 自動清洗 » 精工tsq39怎樣調時間
擴展閱讀
水晶涼鞋臟了怎樣清洗 2025-06-25 21:07:40
cad怎樣畫雨傘三維 2025-06-25 21:01:33

精工tsq39怎樣調時間

發布時間: 2022-09-08 17:41:51

① cpld輸出固定值電平就對( dout <=8'b01010101),輸出變數值電平就不對( dout <=tsq[7:0]; )

萬用表測的么,看樣子可能你輸出的是方波,你用示波器看看,1.7不正好是3.3的一般左右么,呵呵

② 基於FPGA的方波占空比調節

建議你先將BZQ,TSQ設成常數,再試試。
看了你的代碼,覺得除了設計之外,有幾個問題。
1.verilog不是C語言。實現乘除法時,直接寫運算符雖然可以綜合,但邏輯很深,時序會很差。例如:if(cnt<(BZQ/TSQ)&&cnt>=(BZQ/TSQ)*ty/100),這樣的邏輯深度是可怕的,估計只能跑到幾MHz。你所遇到的問題不排除是時序問題(timing issue)。
2.第一個always塊很不規范,而且不是同步電路。更好的實現方法是:
always @(posedge BCLK)
begin
if(~START)
begin
start<=1;
end
end
3.系統沒有復位信號。所有的數字系統應當有系統復位。always塊應當用這樣的模板:
always @(posedge mclk or posedge mrst)
begin
if(mrst)
begin
reg1 <= 0;
end
else
begin
if (...)
begin
reg1<=input1;
end
else
begin
reg1 <= input2;
end
end
end
4.信號或寄存器名稱不能靠大小寫區分。雖然verilog大小寫是敏感的,但沒有公司會允許大小寫混用,一般都規定統一大寫或小寫,更何況是一樣的名稱,僅靠大小寫區分。如START,可以改成,start_in。