STM8S

円周率の計算 (10)

アセンブリ言語による arctan 公式による円周率の計算プログラムを、8 ビット縛りで STM8S-Discovery 用に、16 ビット縛りで PC (x86 プロセッサ) 用に作成しました。 ソース・プログラムは、両者とも 500 行を超えるので、この blog 上には置かず、web サイ…

円周率の計算 (7)

STmicroelectronics 社の開発環境 ST Visual Develop (STVD) 用の spigot アルゴリズムのアセンブラ・ソースプログラムを下に示します。 STM8S Discovery 上で実行すると、PD5/UART2_TX 端子 (コネクタ CN4 の 10 番ピン) から 38.4 kbps シリアルでπの値を…

円周率の計算 (6)

「8 ビット縛り」の 8 ビット・マイコンとして、次は手持ちの STM8S Discovery (STmicroelectronics 製、STM8 コア) を選びました。 STM32F103 を使ったフラッシュ・ライタ/デバッグ・インターフェース部分と、切り離し可能な STM8S ターゲットボード部分と…

STM8S-Discovery (13)

これまで、DAC 出力にはフィルタを付けずに「裸」の特性を測定してきましたが、BU9480F では通過帯域内の「ハイ落ち」が目立つので、補正用のポストフィルタを設計してみました。 OP アンプを 1 個使用した 3 次 Sallen-Key 回路を使うことを念頭に、3 次ロ…

STM8S-Discovery (12)

前回の PCM1716E の通過帯域のゲインの話で、チップ内部に作りこまれた (バイパスできない) カットオフ周波数 100 kHz 程度のアナログ 1 次フィルタの存在を忘れていました。 信号周波数 10 kHz でのゲイン低下を計算すると 0.04 dB 程度になります。 アパー…

STM8S-Discovery (11)

今回からは、TSP (Time Stretched Pulse) 法による DAC 出力の周波数特性の測定を話題にしたいと思います。 今回は PCM1716E について測定します。 私が TSP 法を知ったのは、他の目的で検索をしていて、たどり着いた、一庵さんの Web サイト「http://homepa…

STM8S-Discovery (10)

3 月 16 日付けの記事で、「ジッタが乗ることもなく」と書きましたが、これは実際にジッタの量を定量的に測定してみた結果と言うわけではありません。 マイコン - DAC 間のシリアル・データ・インターフェース信号には大きなジッタが乗っているのに、オーデ…

STM8S-Discovery (9)

前回の BU9480F の結果は、高調波ひずみがちょっと多いかなという程度で、特に問題のないものでした。 PCM1716E は 8xオーバーサンプリング DAC なので高性能が期待されますが、下に示すように、USB の +5V 電源をそのまま DAC の Vcc に供給する構成では問…

STM8S-Discovery (8)

efu 氏作のフリー・ソフト、「WaveGene Ver 1.40」と「WaveSpectra Ver 1.40」を使って特性を測定してみました。 まずは 1 kHz の単一正弦波出力に対するスペクトラムを見ますが、後で述べる TSP (Time Stretched Pulse) による測定も含め、特記がない場合の…

STM8S-Discovery (7)

前回の記事で書き忘れましたが、PCM1716E のディジタル入力の電圧レベルは、いわゆる「TTL レベル」で、 スレシホールド電圧が約 1.4 V H レベル入力電圧 VIH の最小値が 2.0 V となっていますから、3.3 V CMOS 系の出力と直結して問題なくインターフェース…

STM8S-Discovery (6)

STM8S-Discovery にオーバーサンプリング DAC である「PCM1716E」(鈴商で単価 350 円)を接続し、出力にジッタが乗ることもなく、うまく動作しました。 試してみたのは PCM1716E だけですが、おそらく、他のオーバーサンプリング DAC でも同様に動作すると期…

STM8S-Discovery (5)

「STM8SDP」のバグふたつの修正および機能追加をした 3 月 5 日付けの新しい版で古い版を置き換え、(→こちら) に置きました。 一つ目のバグは、LRCK の各エッジで起動される割り込みサービスルーチン内での L/R 判定ロジックが反転していたために、出力の左…

STM8S-Discovery (4)

「STM8SDP」のアセンブラ記述部分を増やしてオーバーヘッドの減少を図り、48 kHz および 44.1 kHz サンプリングに対応しました。 3 月 2 日付けの新しい版で 2/28 の古い版を置き換え、(→こちら) に置いてあります。

STM8S-Discovery (3)

STmicro 社製の STM8S マイコン評価ボード「STM8S-Discovery」用のプログラム第二弾として、SD/MMC カード内の圧縮されていない .WAV ファイルを再生する、リニア PCM プレイヤープログラム「STM8SDP」を作りました。 暫定版の STM8SDP プログラムは (→こち…

STM8S-Discovery と「FMmelody」(2)

STmicro 社製の STM8S マイコン評価ボード「STM8S-Discovery」用のプログラム「FMmelody」に、ディジタル・オーディオ用 16 ビット・シリアル DAC のサポートを追加しました。 FMmelody プログラムは (→こちら) に置いてあります。 いつもの BU9480 (ROHM) …

STM8S-Discovery と「FMmelody」

STmicro 社製の STM8S マイコン評価ボード「STM8S-Discovery」用のプログラム「FMmelody」を作りました。 Arduino 用のスケッチ「FMmelody」と同じ機能のプログラムです。 16 MHz クロックの 8 ビット・マイコンで、1 命令当たりの平均所要クロック数が 2 と…