Follow-up from "Draft: Resolve "霹靂燈 Perak Light""
The following discussion from !28 (merged) should be addressed:
-
@timmy61109 started a discussion: (+1 comment) 這次有同學提醒,如果給定的位元不足時,會有機會造成溢位,而讓七段顯示器亂跳,會造成錯誤的產生。
即使電路設計上是正確的,但 vivado 編譯下都會讓結果出現錯誤。
但經過我測試,將
data
變數轉為方式 8 bits 仍然沒有解決問題,因此可能是電路的問題,但剛剛看同學輸入後跑得結果沒有問題。那位同學有提到一個,就是通過將產生錯的地方數值,改為隨便期中一個數字,來取代
0 - 11
,也是11
的方式,類似於加三碼的方式將數值不連貫。但主要問題還是為何電路並未依照預想的方式,除頻的數值每秒一下的頻率變化,都無法正常的顯示與依照頻率產生變化。
另外發現除頻上一個要注意的事情,就是設定除頻計算範圍時,要記得給足除頻計數的位元寬度,不然會造成溢位狀況而產生無法計數。