2012-10-01から1ヶ月間の記事一覧

円周率の計算 (15) -- BBP 公式による計算 (4)

ATtiny10 版のプログラムができました。 全てアセンブラ記述で、プログラム・サイズは 860 バイト (430 ワード) です。 思ったより小さくなりました。 SRAM の使用量はデータ 22 バイト、スタック 6 バイトの計 28 バイトで、まだ 4 バイト余っています。 内…

円周率の計算 (14) -- BBP 公式による計算 (3)

今回は PC (intel x86 プロセッサ) 用の C ソース・プログラムを示します。 前々回の「pi_BBP.pde」ファイルと、下の「pi_BBP.c」ファイルを同じフォルダに置き、「pi_BBP.c」をコンパイルするだけです。 整数演算だけなので、math ライブラリ (libm) をリン…

円周率の計算 (13) -- BBP 公式による計算 (2)

今回は AVRStudio で ATtiny13A 用にコンパイルするソースファイル一式を掲載します。 使用したのは AVRStudio 4.19 (build 730) gcc Version 4.5.1 (AVR_8bit_GNU_Toolchain_3.3.0_364) の組み合わせで、他の環境では試していません。 まず、AVRStudio で A…

円周率の計算 (12) -- BBP 公式による計算 (1)

フラッシュ ROM 2 K バイト、RAM 128 バイトの ATtiny2313 で円周率Πの値を BBP 公式 (後述) を使って UART 経由で 16 進数で 4000 桁出力するという記事 (ドイツ語のサイト) 4000 Stellen von Pi mit ATtiny2313 – Mikrocontroller.net があることを知り、…

LPC1114FN28/102 (7) -- 円周率の計算 (11)

LPC1114FN28/102 で Spigot アルゴリズムを使って円周率Πの値 500 桁を UART 経由でシリアル回線に出力するプログラムを作りました。 プログラムの大きさは、フラッシュに書き込むサイズとして 0x47c = 1148 バイトです。 ターミナル・ソフト (tt.exe) でキ…

LPC1114FN28/102 (6)

外付けディジタル・オーディオ DAC および内蔵タイマを PWM DAC として使って約 440 Hz の正弦波を発生させる前回のプログラムを、LPCXpresso IDE でビルドして動作させることができました。 トラ技 2012 年 10 月号付属の DVD-ROM に収録されている LPCXpre…

LPC1114FN28/102 (5)

LPC1114FN28 の内蔵タイマを利用した PWM DAC および外付けディジタル・オーディオ DAC でオーディオ信号を発生させるプログラムを作りました。 プログラムのソースは記事の最後で示します。 外付けディジタル・オーディオ DAC は、いつもの ROHM BU9480F で…

LPC1114FN28/102 (4)

Windows 用のターミナル・ソフトとしては、「TeraTerm」と、Windows XP までは標準でバンドルされていた「ハイパーターミナル」とが有名ですが、これらはいずれもシリアル回線が接続されると有無を言わせず DTR(Data Terminal Ready) をアサートします。 こ…