いろんな電子工作
私が作ったいろんな電子工作を紹介します。電池式ニキシー管時計は一例です。 単三形電池1本で動作させました。
ボイスチェンジャー機能追加
PCM録音/再生プログラムにボイスチェンジャー機能を追加しました。
設定でボイスチェンジャー機能を有効にすると再生時とピークレベル表示にボイスチェンジした音で再生します。
録音時のモニター出力は処理能力の都合でボイスチェンジしません。
ボイスチェンジャー処理は、1kHzの正弦波を掛け合わせる周波数シフトです。

回路図はこちら。
変更点
・ADC入力のバイアスを調整できるように半固定抵抗を追加しました。
〜 PCM録音/再生プログラム 2012/5/1版 〜
↑がプログラムです。
ボイスチェンジャー機能を使う場合は、ADC入力のバイアス調整が必要です。
バイアス調整方法は以下のとおりです。
・回路図のA-INをGNDに繋げて無音にする。
・ピークレベル表示モードにしてスタートする。
・画面に表示される「PCM Data」が128になるようにVR1を調整する。
この調整をせずにボイスチェンジャー機能を使うと無音時に1kHzの音がかすかに聞こえてしまいます。
ボイスチェンジャー機能の設定はMODEスイッチ(SW2)を押していって「Play Mode Setup」で行います。
「Play Mode Setup」でSW1を押す度にボイスチェンジャー機能がON/OFFします。
MODEスイッチ(SW2)を押して、ボイスチェンジャー機能の設定から抜けると設定値をEEPROMに保存します。
ボイスチェンジャー機能の設定値はEEPROMの情報を使うため電源OFF/ONしても設定は失われません。
設定でボイスチェンジャー機能を有効にすると再生時とピークレベル表示にボイスチェンジした音で再生します。
録音時のモニター出力は処理能力の都合でボイスチェンジしません。
ボイスチェンジャー処理は、1kHzの正弦波を掛け合わせる周波数シフトです。

回路図はこちら。
変更点
・ADC入力のバイアスを調整できるように半固定抵抗を追加しました。
〜 PCM録音/再生プログラム 2012/5/1版 〜
↑がプログラムです。
ボイスチェンジャー機能を使う場合は、ADC入力のバイアス調整が必要です。
バイアス調整方法は以下のとおりです。
・回路図のA-INをGNDに繋げて無音にする。
・ピークレベル表示モードにしてスタートする。
・画面に表示される「PCM Data」が128になるようにVR1を調整する。
この調整をせずにボイスチェンジャー機能を使うと無音時に1kHzの音がかすかに聞こえてしまいます。
ボイスチェンジャー機能の設定はMODEスイッチ(SW2)を押していって「Play Mode Setup」で行います。
「Play Mode Setup」でSW1を押す度にボイスチェンジャー機能がON/OFFします。
MODEスイッチ(SW2)を押して、ボイスチェンジャー機能の設定から抜けると設定値をEEPROMに保存します。
ボイスチェンジャー機能の設定値はEEPROMの情報を使うため電源OFF/ONしても設定は失われません。
ラダー抵抗DAC版 PCM録音/再生プログラム
ラダー抵抗DAC版のプログラムです。

ラダー抵抗DACの回路図はこちら。
ローパスフィルターは入っていませんので、必要に応じて入れてください。
PWMの場合は前回の回路図でOKです。
〜 PCM録音/再生プログラム 2012/4/21版 〜
↑がプログラムです。
変更点
・ラダー抵抗DACによる再生処理を追加しました。
コンパイルスイッチでPWMとラダー抵抗DACを切り替えられます。
main.hにあるPLAY_PWMを定義するとPWMによる再生になり、
PLAY_PWMをコメントアウトするとラダー抵抗DACによる再生になります。
・再生時のプチノイズ防止処理を見直しました。
・PWMでも録音をモニターできるようにしました。

ラダー抵抗DACの回路図はこちら。
ローパスフィルターは入っていませんので、必要に応じて入れてください。
PWMの場合は前回の回路図でOKです。
〜 PCM録音/再生プログラム 2012/4/21版 〜
↑がプログラムです。
変更点
・ラダー抵抗DACによる再生処理を追加しました。
コンパイルスイッチでPWMとラダー抵抗DACを切り替えられます。
main.hにあるPLAY_PWMを定義するとPWMによる再生になり、
PLAY_PWMをコメントアウトするとラダー抵抗DACによる再生になります。
・再生時のプチノイズ防止処理を見直しました。
・PWMでも録音をモニターできるようにしました。
PCM録音/再生プログラム
PWMによる再生処理を追加したプログラム が出来ました。

回路図はこちら。
変更点
・PD5(OC1A)をPWM出力にして、CRローパスフィルターを付けました。
〜 PCM録音/再生プログラム 2012/4/20版 〜
↑が再生処理を追加したプログラムです。
変更点
・PWMによる再生処理を追加しました。
・再生処理追加により、変数名を整理しました。
操作
・モード切替えスイッチ(SW2)を押す毎に、録音→再生→レベルチェック→録音を繰り返します。
・各モードでスタート/ストップスイッチ(SW1)を押すことで開始/停止します。
・モードの切替は停止後のみ可能です。
CRローパスフィルターのカットオフ周波数は約10kHzです。
CRローパスフィルターのせいか、完全な波形にはなりません。
PORTDを使ってラダー抵抗によるDACにするとPWMより波形がきれいになると思います。
フォントデータ、レベルメーターのバーデータについて
5X10RK.o : フォントデータ
bar_00.o〜bar_28.o : レベルバーデータ
level_00.o〜level_04.o : ピークレベルバーデータ
上記のファイルがフォントデータとレベルバーのデータファイルです。
これらのファイルはバイナリーファイルをavr-objcopyコマンドでオブジェクトファイルに変換したものです。
開発環境のバージョンによってはアーカイブファイルに含まれる上記のオブジェクトファイルがリンク出来ないことがあります。
そのため、今回のアーカイブファイルからそれらのオブジェクトファイルの元になったバイナリーファイルを含めました。
解凍した中に_fontと言うフォルダが出来ます。
その中にオブジェクトファイルの元になったバイナリーファイルが入っていますので、ご自身の開発環境のavr-objcopyコマンドでオブジェクトファイルに変換してください。

回路図はこちら。
変更点
・PD5(OC1A)をPWM出力にして、CRローパスフィルターを付けました。
〜 PCM録音/再生プログラム 2012/4/20版 〜
↑が再生処理を追加したプログラムです。
変更点
・PWMによる再生処理を追加しました。
・再生処理追加により、変数名を整理しました。
操作
・モード切替えスイッチ(SW2)を押す毎に、録音→再生→レベルチェック→録音を繰り返します。
・各モードでスタート/ストップスイッチ(SW1)を押すことで開始/停止します。
・モードの切替は停止後のみ可能です。
CRローパスフィルターのカットオフ周波数は約10kHzです。
CRローパスフィルターのせいか、完全な波形にはなりません。
PORTDを使ってラダー抵抗によるDACにするとPWMより波形がきれいになると思います。
フォントデータ、レベルメーターのバーデータについて
5X10RK.o : フォントデータ
bar_00.o〜bar_28.o : レベルバーデータ
level_00.o〜level_04.o : ピークレベルバーデータ
上記のファイルがフォントデータとレベルバーのデータファイルです。
これらのファイルはバイナリーファイルをavr-objcopyコマンドでオブジェクトファイルに変換したものです。
開発環境のバージョンによってはアーカイブファイルに含まれる上記のオブジェクトファイルがリンク出来ないことがあります。
そのため、今回のアーカイブファイルからそれらのオブジェクトファイルの元になったバイナリーファイルを含めました。
解凍した中に_fontと言うフォルダが出来ます。
その中にオブジェクトファイルの元になったバイナリーファイルが入っていますので、ご自身の開発環境のavr-objcopyコマンドでオブジェクトファイルに変換してください。
PCM録音プログラム 不具合修正 2012/4/18版
〜 PCM録音プログラム 不具合修正 2012/4/18版 〜
PCM録音プログラムに不具合があったので修正しました。
不具合内容
・WAVEファイルのヘッダに誤りがあり、再生ソフトによっては再生できないことがある。
修正内容
・WAVEヘッダデータとWAVEヘッダ生成処理を修正した。
PCM録音プログラムに不具合があったので修正しました。
不具合内容
・WAVEファイルのヘッダに誤りがあり、再生ソフトによっては再生できないことがある。
修正内容
・WAVEヘッダデータとWAVEヘッダ生成処理を修正した。
続・JCG12864A37-06の改造
〜 光栄堂 模型用塩ビ板 EB-04(セミクリアー) 160mm×115mm×0.5mm厚 〜
こちらはAmazonです。
〜 建築模型・建築模型材料・ジオラマ材料の光栄堂 〜
こちらはメーカーのホームページ
最寄りのTSUTAYAに行ったら↑の塩ビ板が売っていて、買って背景の代わりに入れたら良い感じになりました。
0.5mmと背景の代わりにするには厚い気もしますが、装着してみても不都合はないようです。

↑バックライト消灯時

↑バックライト点灯時

↑文字表示時
これでJCG12864A37-06が使えるようになりました。
こちらはAmazonです。
〜 建築模型・建築模型材料・ジオラマ材料の光栄堂 〜
こちらはメーカーのホームページ
最寄りのTSUTAYAに行ったら↑の塩ビ板が売っていて、買って背景の代わりに入れたら良い感じになりました。
0.5mmと背景の代わりにするには厚い気もしますが、装着してみても不都合はないようです。

↑バックライト消灯時

↑バックライト点灯時

↑文字表示時
これでJCG12864A37-06が使えるようになりました。



