普通、C++のプログラムは#include文を頭にいっぱい書きます。 Arduinoのプログラム(スケッチ)の実体はC++ですが、#include文を書きません。 何もinlcudeしなくても各種関数が使えてしまいまうs。 では、どうやってPDEファイルをコンパイルしているのでしょう。 気になったので調べてみました。 適当なExampleをロードして、ビルドしてみました。 Arduinoの統合環境でShiftキーを押しながらビルドすると、コンパイル中のメッセージが見えます。 Arduino統合開発環境は、ソースコードの入っているフォルダには何も中間ファイルを残しません。 C:\Document and Settings・・・の中のTempにbuild数字.tmpというフォルダを作って、そこに中間ファイルを押し込めているようです。そして、その中に怪しげなCPPファイルが! 開いてみると、元の
組み込みマイコンのprintf出力先を、USBでつないだAndroidの画面にすることができるようになりました。 RXマイコン上で、printfとやると、Androidの画面に出てきます。 上の写真の画面表示の部分では、こんなプログラムを動かしています。 while(1){ ・・・ static int first = 1; if(first) { printf("=======================================\n"); printf("RX-Android bridge Version 0.93\n"); printf("(C)Copyright 2012 Tokushu Denshi Kairo Inc.\n"); printf("=======================================\n"); printf("Hello I'm
RXマイコンのUSBホスト機能ができてきました。 といっても、ディスクリプタを解析して表示するだけなのですが。。 とりあえず、究極のRX62Nボードに、Android携帯をつないでみました。 AndroidのUSB接続モードがデフォルト(外部メモリ転送モード)のときに、デスクリプタを取得したところ、InterfaceClass=8なので、USBメモリになっています。 AndroidのほうでUSB接続モードを「高速転送モード」に切り替えると、InterfaceClass=2になるので、通信クラスになります。 Device Desriptor: bLength = 18 bDescriptorType = 1 bcdUSB = 0x200 bDeviceClass = 0x0 bDeviceSubClass = 0x0 bDeviceProtocol = 0x0 bMaxPacketSize
Arduino互換のRXマイコンボードを設計しています。 スペックは、 ・RX62Nの100ピンを搭載 ・Arduinoと同じ形状、ピン配置互換 ・イーサネットコントローラ搭載 ・DC5V入力 ・USBファンクションのコネクタ ・JTAGコネクタ搭載 ・たくさんのI/O ・基板上にLED4個、スイッチ1個 ・オンボードでSPI ROM搭載 ・Micro SD/MMCソケット です。 裏面はこんな感じです。 パターンが引けることは確認できました。電源のコネクタは、DCジャックと、2ピンのピンヘッダ(型番未定)のどちらか一方を取り付けることができます。 MicroSDソケットは基板の裏面に付けました。 SPIをどこにつなぐかとか、まだ少し考えなければならないことは残っています。 明日の月曜日に基板出図して、来週中には2枚程度の実装まで完了させる予定です。 純正の普通のArduinoと比べるとC
これ何でしょう? 特電RX62Nボードに、秋月のにおいセンサー TGS2450 をつないでみました。 回路はデータシートの参考回路のままです。RX62Nにパルスを出力させ、においセンサーの出す出力をRX62N内蔵のADコンバータで取り込みました。 使うときは、こんなコンパクトな形になります。 計測した値をprintfしてシリアルポートから出力しました。RX62NはFPU内蔵なので、少しくらいは割り算とか浮動小数点をやらせないといけませんね。newlibとgccでやっているので、printfで浮動小数点を出すなんて朝飯前です。 これをパソコンにとりこんでExcelでグラフにしてみました。 エタノールはとてもよく反応しました。エタノールの瓶の蓋をセンサに近づけただけで、このとおり。 臭いを検出すると出力電圧が下がります。エタノールの場合は回復も早かったです。 それに対して、アロマ(エッセンシャ
SATA IPコアの物理層が動き出したので、今度はリンク層を作っています。 ハードディスクがX_RDYというプリミティブを送ってきたら、R_RDYというプリミティブを送り返します。 すると、SOFから始まる何らかのフレーム(FIS)が送られてくるのが確認できました。 これが最初に受信したパケットです。 解析してみたところ、SOF データの中身 EOF WTERM WTERM CONT ・・・ となっていました。 データの中身は、「B9 76 82 C3 69 B3 26 1F 6C 43 08 A5 55 D3 52 34 , 02 95 55 8A , 8E 9A 1F 67 」です。最後の4バイトはCRCなのはいいのですが、データにスクランブルがかけられているため、中身はさっぱりわかりません。 これを解読するには、デスクランブル回路を作らなければならなそうです。
国産RX62Nマイコンでフィジカルコンピューティングを実現する、 RXduino(アールエックスデュイーノ)のサンプルコード集を作っています。 昨日は、秋月で買ってきたジャイロと加速度センサの実験をしました。 コードはとても簡単で、 // RX62NのGCCサンプルプログラム // 圧電振動ジャイロサンプル // (C)Copyright 2011 特殊電子回路 #include <rxduino.h> #include <stdlib.h> void setup() { Serial.begin(38400); pinMode(PIN_SW,INPUT); pinMode(PIN_LED3,OUTPUT); } void loop() { int val1,val2; int analogPin1 = 1; //アナログ入力の1番ピン int analogPin2 = 2; //アナログ
秋葉原の某所でGM計数管が売られていたので、早速購入して、試してみました。 どうやら、型番はSI-3BG(CI-3BG)というもので、ウクライナ製です。 380~460Vをかけて使うようです。 高圧発生回路は、秋月の冷陰極管用インバータを使いました。 冷陰極管用インバータは交流出力で、出力にコンデンサが直列に入っているので、ダイオード2本とコンデンサ1個を外付けすれば、2倍の電圧が取り出せます。 入力電圧が2.13Vくらいのときに、出力が450Vくらいになりました。 その450Vを22MΩの抵抗に通して、GM管のアノードにつなぎ、コンデンサと抵抗で出力を取り出し、オシロで観察してみます。 常時何もおきません。 本当に、ごくたまに「何か」を検出します。1分間に1回もないくらい。 でも、たまにぶわーっと検出します。よくわからない。 電圧を上げていくと、ものすごい勢いでカウントされるのですが、こ
今日、人材派遣会社の方がお見えになりました。 あまりにもショッキングなやりとりだったので、忘れないうちに書いておきます。 話が前後していたり、わかりやすいように脚色されていますが、だいたいこんな内容でした。 -------------------------------------------------- 2~3日前に『人材派遣のご用命はございませんか?』という電話がありました。 「そうですね、いま、ホームページが作れる人が欲しいですね」と答えたら、 『はい、いい人材がいっぱいいますよ』という快い返事でした。 そこで、「うちは電気系というか、組み込みという分野なのですが、その内容がわかる人がいいです」と言ったら、急に声のトーンが暗くなって『両方できる人はちょっと・・』という感じでしたが、とりあえず金曜日に御社に伺ってお話をということになりました。 で、今日、その人材派遣会社の方がお見えに
Micron(現Aptina)社のMT9T031CというCMOSイメージセンサでUSBカメラを作ることにしました。MT9T031Cは300万画素のCMOSカメラです。 MT9T031Cの評価基板「MT9T031C12STCH ES」はDigikeyで約3万円で手に入れました。この評価基板を特電Spartan-6ボードにつなぎ、USBでキャプチャできるデジカメを作ることにしました。 作った装置はこのような外観です。大きなレンズがついていて、絞りとピントを調節できる本格的なものです。 背面には特電Spartan-6ボードがついています。 真ん中に1枚、万能基板を挟んでいます。 撮れた2048×1536サイズの画像をSpartan-6につながったDDR2 SDRAMに蓄え、それをUSBで読み出します。各画素は10bitデータですが、パソコンに取り込んでも10bitは表示できないので8bitに切り
LEDを光センサとして使ったLEDマトリクスが完成しました! 初めて当ブログをご覧になった方のために、何をやっているか簡単に説明します。 LEDは光を出す電子部品ですが、逆に、LEDに光を当てると微弱な電流が発生して光センサとなります。LEDをセンサとして使うだけならさほど難しくありませんが、マトリクスにして、電光掲示板のように光らせられるようにすると、急に難しくなります。 いろいろ工夫して、触って遊べる電光掲示板を作りました。 今回は3色フルカラーLEDを10×10のマトリクスに組んでみました。 LEDのパネルを指などで覆って影にすると、影にした暗さの度合いに応じて赤→緑→青→白と色が変わります。FPGAの中にΔΣADを30個入れて、赤・青・緑のLEDを8bit精度で階調コントロールして、微妙な色合いを出しています。 指を広げたりすると、ぼわーっとオーラのような、素敵な模様が出ます。指を
今日は、LEDを光センサとして使って、外から入射する光を検出できるようにしようと思いました。 ご存知のとおりLEDは電流を流すと発光する素子ですが、逆に、LEDに光を当てると光起電力を生じます。 この起電力を検出することで、タッチパネルみたいなことができるかと思ったわけです。 せっかくSpartan-6という最新のFPGAを使っているし、使っているのはフルカラーLEDなので、検出したレベルに応じて赤→緑→青と色調を変化させることにしました。そのためには、LEDをアナログ的な、滑らかな諧調で表示しなければなりません。 LEDのドライブは昨日はPWMでやっていましたが、今日はΔΣ DACを使いました。これで、個々のLEDをちらつかせずに26万色くらいの諧調で変化させられるようになったはずです。(・・確認はできませんが) ところで、人間の目の感度は明るさに対して直線的ではないので、LEDに出力す
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く