ECLの備忘録
 
1 | 2 | 3 | 4 | 5 | 最初次のページへ >>
2018-08-15 22:32:04

FPGAボードで学ぶ組込みシステム開発入門(ALTERA編)で、つまづいた所

テーマ:デバッグ

2-4 HDLによる回路設計

で、アップダウンカウンタを書籍の通りコーディングしたつもりが、verilogに慣れていないばかりに

ミスタイプを犯し、カウントが勝手に進むという誤動作をした。

 

具体的にはbtn_in.vの41行目で本来

wire [2:0] temp = ~ff1 & ff2 & {3{en40hz}};
とすべき所を

wire [2:0] temp = -ff1 & ff2 & {3{en40hz}};

としてしまっていた。

ff1の手前をチルダとすべき所をマイナスとしてしまっていた。

言い訳だが、Quartus2のエディタでは両者は非常に見分けづらい。

 

でもこの文脈では算術演算子はやはり変か?

うーーん。言語設計のリハビリが必要だな。

 

Quartus2のWarningを精査すれば見つけられたかな?

でもWarningではなくErrorにしてくれないものか?

それとも、このような局面で算術演算子を使う場面があるから

Errorにはできないのかな?

 

 

 

 

 

はーーーっ。まだまだ修行が足りないな。

 

2018-04-14 22:57:15

Volumio2でNASがマウントできない件

テーマ:PC

表題の件の備忘録

 

1.Ver2.348 (23-12-2017)がpi1でUPDATE出来なかったので、
  pi3にSDカードを挿して
Ver2.389 (26-03-2018)にUPDATEしたところ
  NASがマウント出来なくなった。
2.調べてオプションに",sec=ntlm"を加えるもダメ。
3.",vers=1.0"も加えたところOK。
4.結局",sec=ntlm,vers=1.0"が正解の様。
5.但しCUEが保存されない。リブートが利かない問題あり。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2018-01-01 18:16:18

arduinoで遊んでみた(その3)

テーマ:デバッグ

オライリー・ジャパン発行の「Arduinoをはじめよう 第3版」の第7章のProcessingのコーディングで嵌った話の続き。

 
まだLEDの光り方がおかしい。Arduinoのスケッチに「delay(100)」が入っている。これを減らすと誤動作の頻度が多くなる。
 
processingからArduinoへのserialデータ(色情報)のバッファがオーバーフローかアンダーフローを起こしていると見た。(実行環境に依存するかも。あくまでも自分の場合)
 
delay(100)は、0.1秒の待ちの意味だが、0.1秒の根拠が不明。そもそも待ちの根拠も不明。こう言うのを「マジックナンバー」と言って、バグの温床になる。
 
delay(100)を消してもいいように
 
  while(Serial.available() > 6) {
    inByte = Serial.read();
    if ('#' == inByte) {
  以下略
 
みたいなことをやって、バッファに#を含めて7文字たまるのを待ってから、LEDの輝度計算を行うようにした。
今度こそ良さそうだ。
 
 
 
 
 
 
 
 
 
 
 
 
1 | 2 | 3 | 4 | 5 | 最初次のページへ >>

Ameba人気のブログ

Amebaトピックス