ArduinoでAD9834DDSをコントロールし、希望の周波数を発生させることができるようになりましたが、周波数とSTEPの表示が気になります。
周波数は、左づめの表示なので、これを右づめで表示で来るようにし、STEPも右側に表示できるように改良しました。
周波数の右づめ表示については、Arduinoの数字を文字列に変換する関数sprintf()を使いました。
ただ、Arduino UNOでは、int(正数)を文字列に変換することしかできません。つまり、32767までの数字までなら文字列に変換できます。
そこで、周波数データ(8桁)を上位4桁と下位4桁にわけて表示させることにしました。
しかし、2つの問題点が出てきました。
例えば、「300」の場合、「0 300」と表示されます。そこで、上位4桁が0の場合は、" "を表示させることにして、いわゆる0消しをしました。
それから、「7000000」の場合、下位4桁が「0」と表示されるため「700 0」と表示されます。そこで、下位では、スペース' 'を逆に'0'に変換しています。
スケッチです。