以前購入して、まだ未作成のまま放置状態にある、スイッチサイエンスのLCDシールドキットであるが、そろそろ作らなくてはと考え中。
組み立て方はこちら
2013年11月29日金曜日
2013年11月25日月曜日
PSoC 5LP
トランジスタ技術 増刊 「ARM PSoCで作るMyスペシャル・マイコン」が出ました。
フルスペック版!PSoC 5LP CY8C5868AXI-LP035 基板付きです。
やっと出ました。12月1日発行となってましたが、本日書店で発見しました。
即、購入です。みなさんも、お買い逃がしなく。
P44 : 第4章 PSoC 5LP コンポーネント図鑑
P112 : 第10章 USB UART通信の実験
P121 : 第11章 IIR フィルタで正弦波を発生させる
2013-12-08 追記: Win8.1(64bit)では,PSoC Creatorを標準インストールしても,DVK_Prog5のUSBデバイス・ドライバが動作しませんでした。
下記サイトを参照して,USBデバイス・ドライバを更新すればOKです。
http://japan.cypress.com/?id=4&rID=77018
フルスペック版!PSoC 5LP CY8C5868AXI-LP035 基板付きです。
やっと出ました。12月1日発行となってましたが、本日書店で発見しました。
即、購入です。みなさんも、お買い逃がしなく。
P44 : 第4章 PSoC 5LP コンポーネント図鑑
P112 : 第10章 USB UART通信の実験
P121 : 第11章 IIR フィルタで正弦波を発生させる
2013-12-08 追記: Win8.1(64bit)では,PSoC Creatorを標準インストールしても,DVK_Prog5のUSBデバイス・ドライバが動作しませんでした。
下記サイトを参照して,USBデバイス・ドライバを更新すればOKです。
http://japan.cypress.com/?id=4&rID=77018
2013年11月16日土曜日
プラモ作成ツール
私のプラモ作成ツールは以下のものです。
タミヤ ペイントブース : これを選んだ理由は、フィルタが使い捨てではなく何回か洗えば再利用できるところです。しかし、塗装するエリアが狭いのが少々難点といえば難点です。私にはこれがベストな選択でした。室内での塗装では必須アイテムだと思います。家族に塗装の飛沫で迷惑をかけることは出来ないからです。結構遠くまで塗装の飛沫は飛んでいきます。換気も大切です。必ず換気はしましょう。
エアプラシ : 写真のは、WAVEのスーパーエアブラシ・0305です。ノズルが0.3mmと0.5mmで交換可能です。ほとんどのプラモデルならこれでOKです。
この他には、プロコンBOYFWAダブルアクション0.2mmノズルも持ってます。こちらは、あまり使用する機会がありません。まだ、宝の持ち腐れ状態です。MAX塗りができるようになると面白くなると思います。
コンプレッサ : 最後にエアテックスのエアーパワーコンプレッサーAPC-006Nです。タンク容量が3.5リットル、最高圧力約0.55Mpa(5.5kgf・cm²)で長時間の使用でも安定してます。
2013年11月14日木曜日
プラモデルの思い出
自分が、小学校、中学校時代は、プラモデルの全盛期だったと思います。高校でファミコンが出てきてから、プラモデルは衰退の一途を辿ります。当時あった5軒ほどの近所のプラモ屋は現在一軒も残ってません。学校から帰ると、お金は無いのにプラモ屋へ行ってショーウインドーに飾ってある塗装完成したプラモデルを時間が経つのも忘れて見入っていたのを思い出します。
しかし、この頃のプラモデル作成は、ほとんど接着剤でくっつけて、ハイ完成が殆どでした。
塗装するのは、ガンプラが出てきたときからだと思います。今みたいに、エアブラシやコンプレッサを買えたら別ですが、当時エアボンベや塗料等、プラモ以外を購入するための十分なお金がなかったのですから、しょうがないですね。プラモデル作って、何が面白いんだと言われますが、やっぱり、モノ作りが好きなんでしょうね。作ってるときは、集中してますので、他のことは考えなくてすみます。そんな私の、プラモデル関係の蔵書です。越智信善さんの本です。ブログの更新もされていないようで、今はどのように活躍されているのでしょう。また、プラモつくろうの新番組が作られるのなら、是非とも出演して、素晴らしいお手前を拝見したいと思います。
しかし、この頃のプラモデル作成は、ほとんど接着剤でくっつけて、ハイ完成が殆どでした。
塗装するのは、ガンプラが出てきたときからだと思います。今みたいに、エアブラシやコンプレッサを買えたら別ですが、当時エアボンベや塗料等、プラモ以外を購入するための十分なお金がなかったのですから、しょうがないですね。プラモデル作って、何が面白いんだと言われますが、やっぱり、モノ作りが好きなんでしょうね。作ってるときは、集中してますので、他のことは考えなくてすみます。そんな私の、プラモデル関係の蔵書です。越智信善さんの本です。ブログの更新もされていないようで、今はどのように活躍されているのでしょう。また、プラモつくろうの新番組が作られるのなら、是非とも出演して、素晴らしいお手前を拝見したいと思います。
2013年11月13日水曜日
ガンプラ 旧ザク(その1)
今更ですが、ガンプラです。思い起こせば、中学校時代、近所のプラモ屋に買いに行っても、いつも売り切れてたんです。旧ザクです。メインのガンダムじゃありません。そしてやっと買って作っている最中で投げ出しました。当然、当時のは手元にありません。再度購入して、現在作成中です。
完成すればおよそ30年ぶりになるでしょう。そして、作成中です。
完成すればおよそ30年ぶりになるでしょう。そして、作成中です。
2013年11月9日土曜日
Raspberry PiでI2C LCD(その3)
ようやく、I2Cデバイス(LCD)にcでアクセスするプログラムを作成しました。
コンパイル後、実行するとI2C(LCD)デバイスであるMI2CLCD-01の液晶に「Hello I2C!」が
表示されるハズ。
<以下ソース>
#include
#include
#include
#define LCD_PORT (0x3e) // 液晶コントローラのI2Cアドレス
#define LCD_CMD (0x00) // 液晶コントローラのコマンドアドレス
#define LCD_DATA (0x40) // 液晶コントローラのデータアドレス
// グローバル変数
char currentMessage[17]; // 現在液晶に表示中のメッセージ
// 関数プロトタイプ宣言
int initMI2CLCD(void); // MI2CLCD-01の初期化
int writeLCD(int fd, char *message); // 液晶にメッセージを表示
int showMSG(int fd, char *temp); // 文字列を表示
int main(void){
int fdMI2CLCD; // MI2CLCD用ファイルディスクリプタ
char temp[17]; // 表示用文字列
currentMessage[0] = 0x00;
// MI2CLCD-01の初期化
if ((fdMI2CLCD = initMI2CLCD()) == -1){
printf("MI2CLCD-01の初期化に失敗");
return 1;
}
while(1){
strcpy(temp, "Hello I2C!");
showMSG(fdMI2CLCD, temp);
delay(1000);
}
return 0;
}
// MI2CLCD-01の初期化
// 引数:void
// 戻値:int ファイルデスクリプタ(初期化失敗時は-1を返す)
int initMI2CLCD(void){
int fd; // コントローラのファイルデスクリプタ
// 液晶コントローラを初期化し、コントローラにアクセスするための
// ファイルディスクリプタを取得。
// 初期化失敗時は-1を返して終了。
if((fd = wiringPiI2CSetup(LCD_PORT)) == -1) return fd;
// 初期化コマンドの送出。
// アドレス0x00に書き込むと、コマンドとして扱われる(コマンドモード)
// 0x00 は LCD_CMD として定義
// Function Set (機能設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00111000); // 8ビットモード、2行表 示
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00111001); // 命令テーブルを選択
// Internal OSC frequency (内部クロック周波数)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00010100); // 1/5バイアス,183Hz
// Contrast Set (low byte) (コントラスト設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b01111000); // 末尾4bitで指定
// Power/ ICON control/ Contrast Set
// パワー/アイコン制御/コントラスト設定
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b01011111); // アイコンの表示 on
// ブースター回路 on
// 内部フォロワ ・モードのコントラスト設定
// Follower Control (フォロワ回路制御)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b01101010); // フォロワ回路 on
delay(250); // 電圧安定まで待つ
// Display ON (表示ON/OFFコントロール)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00001111); // ディスプレイon
// カーソル表示 on
// ブリンク表示 on
// Clear Display (表示をクリア)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00000001);
delay(2);
// Entry Mode Set (エントリ・モード設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00000110); // カーソル右移動
return fd;
}
// 液晶2行目にメッセージを表示。既存メッセージを上スクロール
// 引数:int ファイルデスクリプタ
// :char* 表示メッセージ(最大16文字)
// 戻値:int 現時点では常に0
int writeLCD(int fd, char* message){
int i;
char buf[17];
// 2行目の表示内容を1行目にコピー
// 液晶の現在の表示状態は読み込めないため、
// グローバル変数 currentMessage を1行目に表示して代用
strcpy(buf, currentMessage);
// Set DDRAM Address (DDRAMアドレス設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b10000000); // 1行目を指定
for (i = 0; buf[i] != 0x00; i++){
// アドレス0x40に書き込むと表示データとなる
// 0x40 は LCD_DATA として定義
wiringPiI2CWriteReg8(fd, LCD_DATA, buf[i]);
}
// 2行目に新たなメッセージを表示させる
strcpy(buf, message);
// Set DDRAM Address (DDRAMアドレス設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b11000000); // 2行目を指定
for (i = 0; buf[i] != 0x00; i++){
wiringPiI2CWriteReg8(fd, LCD_DATA, buf[i]);
}
// 新たなメッセージをグローバル変数に代入
strcpy(currentMessage, message);
return 0;
}
// 液晶に文字を表示
// 引数:int ファイルデスクリプタ
// :char[] 表示させる文字列
// 戻値:int 現時点では常に0
int showMSG(int fd, char *temp){
char strMsg[17]; // 表示用文字列
// 液晶表示用の文字列生成
sprintf(strMsg, "%s\n", temp); // 表示用文字列作成
// 液晶に表示
writeLCD(fd, strMsg);
return 0;
}
コンパイル後、実行するとI2C(LCD)デバイスであるMI2CLCD-01の液晶に「Hello I2C!」が
表示されるハズ。
<以下ソース>
#include
#include
#include
#define LCD_PORT (0x3e) // 液晶コントローラのI2Cアドレス
#define LCD_CMD (0x00) // 液晶コントローラのコマンドアドレス
#define LCD_DATA (0x40) // 液晶コントローラのデータアドレス
// グローバル変数
char currentMessage[17]; // 現在液晶に表示中のメッセージ
// 関数プロトタイプ宣言
int initMI2CLCD(void); // MI2CLCD-01の初期化
int writeLCD(int fd, char *message); // 液晶にメッセージを表示
int showMSG(int fd, char *temp); // 文字列を表示
int main(void){
int fdMI2CLCD; // MI2CLCD用ファイルディスクリプタ
char temp[17]; // 表示用文字列
currentMessage[0] = 0x00;
// MI2CLCD-01の初期化
if ((fdMI2CLCD = initMI2CLCD()) == -1){
printf("MI2CLCD-01の初期化に失敗");
return 1;
}
while(1){
strcpy(temp, "Hello I2C!");
showMSG(fdMI2CLCD, temp);
delay(1000);
}
return 0;
}
// MI2CLCD-01の初期化
// 引数:void
// 戻値:int ファイルデスクリプタ(初期化失敗時は-1を返す)
int initMI2CLCD(void){
int fd; // コントローラのファイルデスクリプタ
// 液晶コントローラを初期化し、コントローラにアクセスするための
// ファイルディスクリプタを取得。
// 初期化失敗時は-1を返して終了。
if((fd = wiringPiI2CSetup(LCD_PORT)) == -1) return fd;
// 初期化コマンドの送出。
// アドレス0x00に書き込むと、コマンドとして扱われる(コマンドモード)
// 0x00 は LCD_CMD として定義
// Function Set (機能設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00111000); // 8ビットモード、2行表 示
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00111001); // 命令テーブルを選択
// Internal OSC frequency (内部クロック周波数)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00010100); // 1/5バイアス,183Hz
// Contrast Set (low byte) (コントラスト設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b01111000); // 末尾4bitで指定
// Power/ ICON control/ Contrast Set
// パワー/アイコン制御/コントラスト設定
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b01011111); // アイコンの表示 on
// ブースター回路 on
// 内部フォロワ ・モードのコントラスト設定
// Follower Control (フォロワ回路制御)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b01101010); // フォロワ回路 on
delay(250); // 電圧安定まで待つ
// Display ON (表示ON/OFFコントロール)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00001111); // ディスプレイon
// カーソル表示 on
// ブリンク表示 on
// Clear Display (表示をクリア)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00000001);
delay(2);
// Entry Mode Set (エントリ・モード設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b00000110); // カーソル右移動
return fd;
}
// 液晶2行目にメッセージを表示。既存メッセージを上スクロール
// 引数:int ファイルデスクリプタ
// :char* 表示メッセージ(最大16文字)
// 戻値:int 現時点では常に0
int writeLCD(int fd, char* message){
int i;
char buf[17];
// 2行目の表示内容を1行目にコピー
// 液晶の現在の表示状態は読み込めないため、
// グローバル変数 currentMessage を1行目に表示して代用
strcpy(buf, currentMessage);
// Set DDRAM Address (DDRAMアドレス設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b10000000); // 1行目を指定
for (i = 0; buf[i] != 0x00; i++){
// アドレス0x40に書き込むと表示データとなる
// 0x40 は LCD_DATA として定義
wiringPiI2CWriteReg8(fd, LCD_DATA, buf[i]);
}
// 2行目に新たなメッセージを表示させる
strcpy(buf, message);
// Set DDRAM Address (DDRAMアドレス設定)
wiringPiI2CWriteReg8(fd, LCD_CMD, 0b11000000); // 2行目を指定
for (i = 0; buf[i] != 0x00; i++){
wiringPiI2CWriteReg8(fd, LCD_DATA, buf[i]);
}
// 新たなメッセージをグローバル変数に代入
strcpy(currentMessage, message);
return 0;
}
// 液晶に文字を表示
// 引数:int ファイルデスクリプタ
// :char[] 表示させる文字列
// 戻値:int 現時点では常に0
int showMSG(int fd, char *temp){
char strMsg[17]; // 表示用文字列
// 液晶表示用の文字列生成
sprintf(strMsg, "%s\n", temp); // 表示用文字列作成
// 液晶に表示
writeLCD(fd, strMsg);
return 0;
}
2013年11月2日土曜日
I2C電流・電圧・電力計モジュール(INA226)
I2C電流・電圧・電力計モジュール(INA226)を購入しました。
太陽光の電力測定、自作電源の電力表示、バッテリーモニタなどI2Cによるモニタリングができそうです。
【仕様】
電流 測定範囲 : -20A〜+20A ※付属の端子台を用いた場合 10A程度まで
分解能 : 1.25mA
精度 : 1%以下
測定位置 : ハイサイド・ローサイドどちらでも測定可能
電圧 測定範囲 : 0V〜36V
分解能 : 1.25mV
電力 測定範囲 : -720W〜+720W
分解能 : 25mW
ICの電源電圧 : 3.0V〜5V
変換時間 : 140μs〜8.244msまで選択可能
アイソレート : I2C側とはアイソレート(絶縁)されない
電流測定用シャント抵抗 : 0.002Ω ±1% 50ppm/℃
サイズ : 約13x21mm
2014-2-27追記:ストロベリーLinuxさんはまだ在庫あるみたいです。
http://strawberry-linux.com/catalog/items?code=12031
太陽光の電力測定、自作電源の電力表示、バッテリーモニタなどI2Cによるモニタリングができそうです。
【仕様】
電流 測定範囲 : -20A〜+20A ※付属の端子台を用いた場合 10A程度まで
分解能 : 1.25mA
精度 : 1%以下
測定位置 : ハイサイド・ローサイドどちらでも測定可能
電圧 測定範囲 : 0V〜36V
分解能 : 1.25mV
電力 測定範囲 : -720W〜+720W
分解能 : 25mW
ICの電源電圧 : 3.0V〜5V
変換時間 : 140μs〜8.244msまで選択可能
アイソレート : I2C側とはアイソレート(絶縁)されない
電流測定用シャント抵抗 : 0.002Ω ±1% 50ppm/℃
サイズ : 約13x21mm
http://strawberry-linux.com/catalog/items?code=12031
I2Cモータードライバモジュール(DRV8830)
I2Cモータードライバモジュール(DRV8830)を購入しました。
ピンヘッダ、端子台はハンダしました。これでDCモータをI2Cでコントロールできます。
ピンヘッダ、端子台はハンダしました。これでDCモータをI2Cでコントロールできます。
【仕様】
モーターの種類 : ブラシ付きモーター(マブチモーター、ギアードモータなど)
動作電圧範囲 : DC3Vから6.8V ※インターフェース電圧とモータ電圧は共通
最大駆動電流 : 1A
駆動方式 : PWM ※効率80から95%程度
オン抵抗 : 最大0.45Ω
スリープ電流 : 0.3μA
アイソレート : 制御端子とモータ間はアイソレート(絶縁)されない
サイズ : 23x16mm
2013年11月1日金曜日
2013年10月28日月曜日
Raspberry PiでI2C LCD(その1)
やっと、Raspberry PiでI2C LCD(MI2CLCD-01:マルツパーツ館)にハローと表示してみました。GR-SAKURAとStellaris LaunchPadでは、まだ失敗しております。(泣)
/etc/mosulesのファイルの末尾に"i2c-dev"の1行を追加。
/etc/modprobe.d/raspi-blacklist.confのファイル中にある"blacklist i2c-bcm2708"という行をコメントアウト。そして、i2c-toolsというパッケージをインストールしました。
「i2c.sh」という簡単なシェルスクリプトを作成して実行
sudo i2cset -y 1 0x3e 0 0x38 0x39 0x14 0x78 0x5e 0x6c i
sleep 0.25
sudo i2cset -y 1 0x3e 0 0x0c 0x01 0x06 i
sleep 0.05
# 1行目の文字を出力 "ハロー"
sudo i2cset -y 1 0x3e 0 0x80 b
sudo i2cset -y 1 0x3e 0 0x40 0xCA 0xDB 0xB0 i
/etc/mosulesのファイルの末尾に"i2c-dev"の1行を追加。
/etc/modprobe.d/raspi-blacklist.confのファイル中にある"blacklist i2c-bcm2708"という行をコメントアウト。そして、i2c-toolsというパッケージをインストールしました。
「i2c.sh」という簡単なシェルスクリプトを作成して実行
sudo i2cset -y 1 0x3e 0 0x38 0x39 0x14 0x78 0x5e 0x6c i
sleep 0.25
sudo i2cset -y 1 0x3e 0 0x0c 0x01 0x06 i
sleep 0.05
# 1行目の文字を出力 "ハロー"
sudo i2cset -y 1 0x3e 0 0x80 b
sudo i2cset -y 1 0x3e 0 0x40 0xCA 0xDB 0xB0 i
2013年10月19日土曜日
デジタルマルチメーターが欲しい
マイコンやFPGAなどを触ってると。デジタルのテスターが欲しくなります。
今使っているのは、SANWAのSP−5という骨董品のアナログテスターです。
1958年製と書いてます。インターネットでは名機と書かれてました。
今、購入を考えているのは、秋月電子で扱っている「MAS-345」がいいなぁと思ってるんですが、あまりレビューが見つかりません。
アマゾンは扱いは多くないですね。
2013/11/16 追記 : みなさん、デジタルマルチメーターに興味があるのでしょうか?結構なアクセス数です。まだ、私は購入してません。悩んでいるのが、MAS-345が日本製でないこと、SANWAではないこと。オプションが分からないこと。オプションとはテスト棒の先にワニ口クリップ等を付けたいが、他のメーカーでも合うのかどうか?などをグズグズ悩んでいます。
2013/11/16 追記 : みなさん、デジタルマルチメーターに興味があるのでしょうか?結構なアクセス数です。まだ、私は購入してません。悩んでいるのが、MAS-345が日本製でないこと、SANWAではないこと。オプションが分からないこと。オプションとはテスト棒の先にワニ口クリップ等を付けたいが、他のメーカーでも合うのかどうか?などをグズグズ悩んでいます。
2013年10月16日水曜日
Lineレベルとは?
マイコンのアナログポートを使用してA-D変換を考えているのだが、そもそも入力できる電圧は3.3Vまたは5V以下でないとマイコンを壊してしまうことになる。(と思う...)
そこでつなぎ先で一番ポピュラーなのは、ライン端子ではないでしょうか?
じゃあ、ライン端子にはどれくらいの電圧が来てるの?を色々調べた結果を書いときます。
[Line Levelとは?]
単位には以下のような関係がある。
0.775V = 0dBu
1V = 0dBv
機器によってレベルが違う。
・業務用音響機器
ラインレベル
+4dBu = 1.23V
上記の値で0VU(VUメータゼロ)となる。
・一般家庭で用いられているCDプレーヤーなど
-10dBv = 0.32V
・一般家庭で用いられているビデオデッキやDVDデッキなど
-20dBu = 0.078V
そこでつなぎ先で一番ポピュラーなのは、ライン端子ではないでしょうか?
じゃあ、ライン端子にはどれくらいの電圧が来てるの?を色々調べた結果を書いときます。
[Line Levelとは?]
単位には以下のような関係がある。
0.775V = 0dBu
1V = 0dBv
機器によってレベルが違う。
・業務用音響機器
ラインレベル
+4dBu = 1.23V
上記の値で0VU(VUメータゼロ)となる。
・一般家庭で用いられているCDプレーヤーなど
-10dBv = 0.32V
・一般家庭で用いられているビデオデッキやDVDデッキなど
-20dBu = 0.078V
まぁ、大雑把にいって大体1.5V以下っちゅうことですな。
ラインレベルの端子を接続して壊れる恐れはなさそうってことですか?(自信なし)
Arduino MEGA ADK + Ethernet ShieldでMicroSDにアクセス
今回は、MicroSDにアクセスです。
Arduinoには簡単にシールドが利用できるように、サンプルスケッチが用意されていますのでこれを利用します。File→Example→SD→Cardinfo を選択し、IDEに取り込みます。
私の使用しているのはArduino MEGA ADKなので下記の箇所を修正します。
//pinMode(10, OUTPUT); // change this to 53 on a mega
pinMode(53, OUTPUT); // change this to 53 on a mega
スケッチ→ライブラリ使用→SDとしてSDライブラリを使用可にします。
そして、コンパイル。
もちろん、エラーは無いと思いますので、Arduinoに書き込み即実行。
シリアルモニタに下記のような情報が表示されれば正常に動作してます。
Initializing SD card...Wiring is correct and a card is present.
Card type: SD2
Volume type is FAT32
Volume size (bytes): 1963274240
Volume size (Kbytes): 1917260
Volume size (Mbytes): 1872
Files found on the card (name, date and size in bytes):
_~1.TRA 2013-10-16 13:14:30 4096
TRASHE~1/ 2013-10-16 13:14:30
SPOTLI~1/ 2013-10-16 13:14:32
STORE-V2/ 2013-10-16 13:14:32
A01A6F~1/ 2013-10-16 13:14:32
JOURNA~1.REP/ 2013-10-16 13:14:32
PSID.DB 2013-10-16 13:14:58 8192
TMP~1.SNO 2013-10-16 13:14:32 0
TMP~1.LIO 2013-10-16 13:14:32 0
LION~1.CRE 2013-10-16 13:14:32 0
INDEXS~1 2013-10-16 13:14:48 28
0~1.IND 2013-10-16 13:14:58 4096
0~2.IND 2013-10-16 13:14:58 32768
0~3.IND 2013-10-16 13:14:56 3277
0~4.IND 2013-10-16 13:14:32 4096
0~5.IND 2013-10-16 13:14:32 8192
0~6.IND 2013-10-16 13:14:32 4096
0~7.IND 2013-10-16 13:14:32 8192
0~8.IND 2013-10-16 13:14:32 8224
0~9.IND 2013-10-16 13:14:32 1024
0~10.IND 2013-10-16 13:14:32 65536
0~11.IND 2013-10-16 13:14:54 415
0~1.DIR 2013-10-16 13:14:56 65536
LIVE0~1.IND 2013-10-16 13:14:58 4096
LIVE0~2.IND 2013-10-16 13:14:58 32768
LIVE0~3.IND 2013-10-16 13:14:58 3277
LIVE0~4.IND 2013-10-16 13:14:32 4096
LIVE0~5.IND 2013-10-16 13:14:32 8192
LIVE0~6.IND 2013-10-16 13:14:32 4096
LIVE0~7.IND 2013-10-16 13:14:32 8192
LIVE0~8.IND 2013-10-16 13:14:32 8224
LIVE0~9.IND 2013-10-16 13:14:32 1024
LIVE0~10.IND 2013-10-16 13:14:32 65536
LIVE0~11.IND 2013-10-16 13:14:54 513
LIVE0~1.DIR 2013-10-16 13:14:56 65536
STORE.DB 2013-10-16 13:14:46 118784
STORE~1.DB 2013-10-16 13:14:58 118784
REVERS~1 2013-10-16 13:14:54 65536
SHUTDO~1 2013-10-16 13:14:58 4
JOURNA~1.LIV/ 2013-10-16 13:14:36
JOURNA~1 2013-10-16 13:14:36 0
JOURNA~1.SCA/ 2013-10-16 13:14:36
JOURNAL.1 2013-10-16 13:14:38 53
REVERS~1.SHA 2013-10-16 13:14:40 3136
0~1.SHA 2013-10-16 13:14:44 4096
0~2.SHA 2013-10-16 13:14:42 0
0~3.SHA 2013-10-16 13:14:42 0
0~4.SHA 2013-10-16 13:14:42 65536
0~5.SHA 2013-10-16 13:14:42 8
0~6.SHA 2013-10-16 13:14:42 2056
0DIREC~1.SHA 2013-10-16 13:14:44 1088
0~7.SHA 2013-10-16 13:14:44 1
LIVE0~1.SHA 2013-10-16 13:14:46 4096
LIVE0~2.SHA 2013-10-16 13:14:46 0
LIVE0~3.SHA 2013-10-16 13:14:46 0
LIVE0~4.SHA 2013-10-16 13:14:46 65536
LIVE0~5.SHA 2013-10-16 13:14:46 8
LIVE0~6.SHA 2013-10-16 13:14:46 2056
LIVE0D~1.SHA 2013-10-16 13:14:46 1088
LIVE0~7.SHA 2013-10-16 13:14:46 1
JOURNA~1.2 2013-10-16 13:14:54 140
STORE~1.UPD 2013-10-16 13:14:56 12
REVERS~1.UPD 2013-10-16 13:14:56 2
PERMST~1 2013-10-16 13:14:58 61
STORE-V1/ 2013-10-16 13:14:32
VOLUME~1.PLI 2013-10-16 13:14:32 348
VOLUME~1.PLI 2013-10-16 13:14:36 3184
FSEVEN~1/ 2013-10-16 13:14:32
FSEVEN~1 2013-10-16 13:14:54 36
000000~1 2013-10-16 13:14:54 77
000000~2 2013-10-16 13:14:54 70
2013年10月15日火曜日
Arduino MEGA ADK + Ethernet シールドでWeb serverを立ててみた
Arduinoには簡単にシールドが利用できるように、サンプルスケッチが用意されていますのでこれを利用します。
File→Example→Ethernet→WebServer を選択し、IDEに取り込みます。
client disonnected
new client
GET / HTTP/1.1
Host: 192.168.24.77
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/536.30.1 (KHTML, like Gecko) Version/6.0.5 Safari/536.30.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Cache-Control: max-age=0
Referer: http://192.168.24.77/
Accept-Language: ja-jp
Accept-Encoding: gzip, deflate
Connection: keep-alive
client disonnected
次回は、Micro SDにアクセスしてみたいと思います。
File→Example→Ethernet→WebServer を選択し、IDEに取り込みます。
MAC Adressとか、シールドに貼られている値に修正する方が良いのでしょうが、
LAN内なので、今回はそのまま修正せずに、IPアドレスだけ修正してコンパイル。
もちろん、エラーは無いと思いますので、Arduinoに書き込み即実行。
シリアルモニタには、下記のような情報が表示されます。
new client
GET / HTTP/1.1
Host: 192.168.24.77
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/536.30.1 (KHTML, like Gecko) Version/6.0.5 Safari/536.30.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Cache-Control: max-age=0
Referer: http://192.168.24.77/
Accept-Language: ja-jp
Accept-Encoding: gzip, deflate
Connection: keep-alive
client disonnected
次回は、Micro SDにアクセスしてみたいと思います。
2013年10月11日金曜日
PSoC 5LP搭載の付属基板
遅れてるのか?CQ出版 2013年7月号に紹介されてた、PSoC 5LP搭載の付属基板がついた別冊が10月中発売を目指していると書かれていたが、ホームベージにもほとんど情報が無い。早く出してください。
2013/11/21 : 追記
12/1に発売されるとCQ出版のホームページに載りましたよ!
定価¥3,990だそうです。予約しなくちゃ!
それと、付録で気になるのがもう一冊あるんです。
音楽之友社の2014年1月号です。「★新春特別付録 ラックスマン&ステレオ共同企画「オリジナルデジタルアンプLXA-OT3」 ―出力増大・音質対策版!―」とあります。
これは、特別定価3,700円、12月19日(木)発売だそうです。なんか、過去の付録がついたものは品薄だそうです。
2013/11/29 : 追記
P44 : PSoC 5LP コンポーネント図鑑
P54 : PSoC 5LP 開発環境"PSoC Creator"の概要
などを眺めてます。
2013/11/21 : 追記
12/1に発売されるとCQ出版のホームページに載りましたよ!
定価¥3,990だそうです。予約しなくちゃ!
それと、付録で気になるのがもう一冊あるんです。
音楽之友社の2014年1月号です。「★新春特別付録 ラックスマン&ステレオ共同企画「オリジナルデジタルアンプLXA-OT3」 ―出力増大・音質対策版!―」とあります。
これは、特別定価3,700円、12月19日(木)発売だそうです。なんか、過去の付録がついたものは品薄だそうです。
2013/11/29 : 追記
P44 : PSoC 5LP コンポーネント図鑑
P54 : PSoC 5LP 開発環境"PSoC Creator"の概要
などを眺めてます。
2013年10月10日木曜日
GR-SAKURAでアナログ入力
GR-SAKURAでアナログ入力し、入力値をXBeeでPCへシリアル出力しました。
#define INTERVAL 500
#define PIN_ANALOG_IN0 0
void setup()
{
// デバッグシリアルの初期化
Serial.begin(9600, SCI_SCI2B);
// XBeeの初期化
pinMode(51, OUTPUT);
analogReference(EXTERNAL); // 3.3Vを1023として取得したい場合
digitalWrite(51,0); // XBee Reset
delay(10);
digitalWrite(51,1); // XBee Reset解除
delay(10);
Serial.println("Hello!");
}
void loop()
{
unsigned int intValue = analogRead(PIN_ANALOG_IN0);
Serial.println(intValue);
delay(INTERVAL);
}
#define INTERVAL 500
#define PIN_ANALOG_IN0 0
void setup()
{
// デバッグシリアルの初期化
Serial.begin(9600, SCI_SCI2B);
// XBeeの初期化
pinMode(51, OUTPUT);
analogReference(EXTERNAL); // 3.3Vを1023として取得したい場合
digitalWrite(51,0); // XBee Reset
delay(10);
digitalWrite(51,1); // XBee Reset解除
delay(10);
Serial.println("Hello!");
}
void loop()
{
unsigned int intValue = analogRead(PIN_ANALOG_IN0);
Serial.println(intValue);
delay(INTERVAL);
}
2013年10月9日水曜日
FPGA DE0 User Manual
DE0 User Manualへは、こちらから→「http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=165&No=364&PartNo=4」
2013年10月6日日曜日
クラシックギターの手入れ
嫁さんのクラシックギターの手入れをしました。弦交換中に1から3弦までしか手持ちが無いのが分かり、現在3本しか張られてません。
換弦は、下記のを購入。
他には、イシバシ楽器 三宮店で下記の3品を購入。
・FERNANDES SCRATCH MENDER
・FERNANDES NATURAL LEMON OIL
・Finger-ease
換弦は、下記のを購入。
他には、イシバシ楽器 三宮店で下記の3品を購入。
・FERNANDES SCRATCH MENDER
・FERNANDES NATURAL LEMON OIL
・Finger-ease
2013年10月1日火曜日
FPGA DE0で7セグメント・デコーダ
FPGA DE0で7セグメント・デコーダを動かしてみました。
SW3 SW2 SW1 SW0
OFF OFF ON OFF
( 0 0 1 0) = 2
SW3 SW2 SW1 SW0
ON OFF OFF ON
( 1 0 0 1) =9
SW3 SW2 SW1 SW0
OFF OFF ON OFF
( 0 0 1 0) = 2
SW3 SW2 SW1 SW0
ON OFF OFF ON
( 1 0 0 1) =9
2013年9月26日木曜日
FM3マイコンとXBee
FM3マイコンとXBeeと接続するのを調べてみました。Interfaceの2013年4月号のP158からの「FM3マイコン&XBeeで作る混雑度センサ」の回路図とInterfaceの2013年5月号のP150からの「赤外線センサx JPEGカメラでカシャツ!防犯カメラの制作」の回路図より必要な結線を参考にしました。
FM3 XBee S2
CN2 11(RxD) ---> 2(DOUT)
CN2 19(CTS) ---> 11(AD4/DIO4) ? 12(CTS/DIO7) ? どっち?
CN2 14(TxD) ---> 3(DIN)
CN2 20(INITX) ---> 5(RESET)
XBee側のCTS信号をFM3が見てXBeeが受信可能であれば送信するプログラムなので、XBeeの12番ピンに結線するのではないかと思うのですが?図では11のように見えます。
ここで、思考停止。
FM3 XBee S2
CN2 11(RxD) ---> 2(DOUT)
CN2 19(CTS) ---> 11(AD4/DIO4) ? 12(CTS/DIO7) ? どっち?
CN2 14(TxD) ---> 3(DIN)
CN2 20(INITX) ---> 5(RESET)
XBee側のCTS信号をFM3が見てXBeeが受信可能であれば送信するプログラムなので、XBeeの12番ピンに結線するのではないかと思うのですが?図では11のように見えます。
ここで、思考停止。
2013年9月25日水曜日
LaunchPadでLCD(I2C)
LaunchPadでLCD(I2C)に表示するために、Interface 2013年9月号P155~P163を読みながら、プログラム入力中。
記事ではTiva CシリーズTM4C123G LaunchPad用であるが、自分のでもいけるんじゃネェ?と思ってます。
使用するLDCモジュールは、I2C接続タイプのMI2CLCD-01(マルツパーツ館) 、後はどこか変更しないとけない箇所が無いか確認してま~す。
2013-10-04 追記:エラーが4つ解消できませ~ん。
「lcd_i2c.c 」
エラー[Pe020]: identifier "GPIO_PD0_I2C3SCL" is undefined C:\StellarisWare\boards\lcd_i2c\lcd_i2c.c 31
エラー[Pe020]: identifier "GPIO_PD1_I2C3SDA" is undefined C:\StellarisWare\boards\lcd_i2c\lcd_i2c.c 33
「main.c」
エラー[Pe020]: identifier "GPIO_PIN3" is undefined C:\StellarisWare\boards\lcd_i2c\main.c 31
エラー[Pe020]: identifier "GPIO_PIN3" is undefined C:\StellarisWare\boards\lcd_i2c\main.c 70
記事ではTiva CシリーズTM4C123G LaunchPad用であるが、自分のでもいけるんじゃネェ?と思ってます。
使用するLDCモジュールは、I2C接続タイプのMI2CLCD-01(マルツパーツ館) 、後はどこか変更しないとけない箇所が無いか確認してま~す。
2013-10-04 追記:エラーが4つ解消できませ~ん。
「lcd_i2c.c 」
エラー[Pe020]: identifier "GPIO_PD0_I2C3SCL" is undefined C:\StellarisWare\boards\lcd_i2c\lcd_i2c.c 31
エラー[Pe020]: identifier "GPIO_PD1_I2C3SDA" is undefined C:\StellarisWare\boards\lcd_i2c\lcd_i2c.c 33
「main.c」
エラー[Pe020]: identifier "GPIO_PIN3" is undefined C:\StellarisWare\boards\lcd_i2c\main.c 31
エラー[Pe020]: identifier "GPIO_PIN3" is undefined C:\StellarisWare\boards\lcd_i2c\main.c 70
2013年9月23日月曜日
Arduino MEGA ADK R3でアナログ入力
Arduino MEGA ADK R3で太陽電池からの電圧をアナログ入力して、シリアルモニタに数値を出力してみました。
【使用物品】
Arduino MEGA ADK R3
ブレッドボード
太陽電池
ジャンパーワイヤー
【接続】
太陽電池のプラス端子とArduino MEGA ADK R3のA0、マイナス端子とGNDを接続。
【プログラム】
下記のスケッチをArduinoにUploadして、シリアルモニタを表示。
太陽電池からの電圧を事前にアナログテスタで計測、大体MAX1.5Vほどだ、A0端子は0Vから5Vまでを0から1023で読み取れる。 以上、アバウトな確認でした。
【使用物品】
Arduino MEGA ADK R3
ブレッドボード
太陽電池
ジャンパーワイヤー
【接続】
太陽電池のプラス端子とArduino MEGA ADK R3のA0、マイナス端子とGNDを接続。
【プログラム】
下記のスケッチをArduinoにUploadして、シリアルモニタを表示。
太陽電池からの電圧を事前にアナログテスタで計測、大体MAX1.5Vほどだ、A0端子は0Vから5Vまでを0から1023で読み取れる。 以上、アバウトな確認でした。
電子ブロックとLEGO MINDSTORM NXT
電子ブロックは、小学生のころお年玉をためて買ったが、阪神大震災で消失してしまったので、学研 大人の科学を再購入。今でもアマゾンで手に入るみたい。でも、マイキットは高いよ。
あと、衝動買いしたLEGOのMINDSTORM NXTだがファームをノーマルからCでプログラムできるものに書き換えております。もう、新しいのが発売されてるのかな?
手持ちのは、第2世代にあたるもので、トイザラスで2万円台で購入した記憶が...
なんで、こんな高いんだろ?
2013年9月22日日曜日
arduinoでLチカ
今更ですが、Arduino MEGA ADK R3によるLチカをやってみました。
LEDはアノードをArduinoの13番に、カソードをGNDに挿します。
スケッチは、下記のとおり
=== ここから =====
int led = 13;
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
delay(1000);
}
=== ここまで =====
そして、実行中の写真
そうそう、なぜ、抵抗をつなげてないかって?それは13番とGND間には表面実装しているLEDと抵抗がもともとあるので、今回は省けたというのが正解。
LEDはアノードをArduinoの13番に、カソードをGNDに挿します。
スケッチは、下記のとおり
=== ここから =====
int led = 13;
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
delay(1000);
}
=== ここまで =====
そして、実行中の写真
2013年9月20日金曜日
GR-SAKURA XBeeによるPCとのシリアル通信
GR-SAKURAにXBeeを搭載しました。このXBeeとPCにXBeeモジュール用USBインターフェース基板をUSB接続したものとの間でシリアル通信してみました。
GR-SAKURAのプログラムは、以下のとおり。
/*GR-SAKURA Sketch Template Version: V1.06*/
#include <rxduino.h>
void setup()
{
// デバッグシリアルの初期化
Serial.begin(9600, SCI_SCI2B);
// XBeeの初期化
pinMode(51, OUTPUT);
digitalWrite(51,0); // XBee Reset
delay(10);
digitalWrite(51,1); // XBee Reset解除
delay(10);
Serial.println("Hello!");
}
void loop()
{
}
↑ここまで
PCにXBeeを挿したAE-XBEE-USBをUSB接続して、teratermで待ち受けておいて、GR-SAKURAを電源ONでteraterm上に「Hello!」の文字が表示された。
【使用機材】
GR-SAKURA x 1
AE-XBEE-USB x 1
XBee 802.15.4(Series 1) x 2
PC(Macbook Pro) x 1
次買うならXBee Proがいいかな?
GR-SAKURAのプログラムは、以下のとおり。
/*GR-SAKURA Sketch Template Version: V1.06*/
#include <rxduino.h>
void setup()
{
// デバッグシリアルの初期化
Serial.begin(9600, SCI_SCI2B);
// XBeeの初期化
pinMode(51, OUTPUT);
digitalWrite(51,0); // XBee Reset
delay(10);
digitalWrite(51,1); // XBee Reset解除
delay(10);
Serial.println("Hello!");
}
void loop()
{
}
↑ここまで
PCにXBeeを挿したAE-XBEE-USBをUSB接続して、teratermで待ち受けておいて、GR-SAKURAを電源ONでteraterm上に「Hello!」の文字が表示された。
2013年9月14日土曜日
2013年9月9日月曜日
所有してるマイコンたち
これが、私の所有しているマイコンたちです。左上からArduino MEGA ADK、
右上はGR-SAKURA、左下はJapanino、中央下はLaunchPadです。
他にも、ColdFireや78K0 USBマイコンなどがあります。
2013年9月8日日曜日
これまでに所有したPC
なんとなく、自分が最初に買ったPCを思い出していたら、全部を思い出すことに...
最初はPCかな?マイコンていってた、松下電気のJR-200、
次は、富士通のFM-new7、カシオのPB-400、富士通のFM-77L4、EPSONのPC-286 model0、
EPSONのPC-386 note A、Macintosh Plus、富士通のFM-Towns20F、自作タワー型DOS/V機、
Apple Macbook、Apple Macbook Pro
この他にも、拾ってきたものや、譲ってもらったものなど沢山ありますが、思い入れがあるものは最初のJR-200と、Macintosh Plusですね。
Macintosh Plusは中古を譲ってもらったものですが、手に入れた時は、うれしくて...
この時、日本のPCはNEC98全盛期で、ウィンドウベースのMacはとてもおしゃれで、暖かみのあるものに思えたからだと思います。ゲロッとフロッピを吐き出すところや、しゃべりまくるゲームなど...
後に続く、ジョブズの製品は、このワクワク感とかが共通してますよね?
最初はPCかな?マイコンていってた、松下電気のJR-200、
次は、富士通のFM-new7、カシオのPB-400、富士通のFM-77L4、EPSONのPC-286 model0、
EPSONのPC-386 note A、Macintosh Plus、富士通のFM-Towns20F、自作タワー型DOS/V機、
Apple Macbook、Apple Macbook Pro
この他にも、拾ってきたものや、譲ってもらったものなど沢山ありますが、思い入れがあるものは最初のJR-200と、Macintosh Plusですね。
Macintosh Plusは中古を譲ってもらったものですが、手に入れた時は、うれしくて...
この時、日本のPCはNEC98全盛期で、ウィンドウベースのMacはとてもおしゃれで、暖かみのあるものに思えたからだと思います。ゲロッとフロッピを吐き出すところや、しゃべりまくるゲームなど...
後に続く、ジョブズの製品は、このワクワク感とかが共通してますよね?
2013年5月14日火曜日
FPGA 学習ボード ALTERA CycloneⅢ DE0
共立エレショップでFPGA 学習ボード ALTERA CycloneⅢ DE0を購入。
何するもんかって? それは、これから調べるんです。
何するもんかって? それは、これから調べるんです。
2013年2月24日日曜日
登録:
投稿 (Atom)





















