goo blog サービス終了のお知らせ 

Sim's blog

電子工作はじめてみました

z80duino

2010-04-01 00:00:00 | その他
ある所で見かけたZ80搭載のArduinoです。

クロックを見ると4MHz動作のようです。
奥のICが東芝のZ80、手前のICがEEPROMです。プログラムはEEPROMに書くということなのでしょうか。ROMライターがないと使えませんね。
追記 ROMはブートローダとモニタが入っていてプログラムはRAM上にダウンロードして使うみたいです。

大きさ比較

Duemilanoveと同じサイズです。

電源と通信はSparkFunのArduino PRO用のFT232RLモジュールと接続するようです(スイッチサイエンスさんの販売ページ)。


ArduinoとかのマイコンブームにZ80世代を引き寄せるための秘密兵器でしょうか。

4/2 追記 エイプリルフールの冗談にお付き合いいただき、ありがとうございました。Arduino用の生シールドにZ80とか、EPROMをそれっぽく挿しただけでした。どうせなら、ちゃんと動くものをいつかは作ってみたいものです。


キーワードベスト20 その5

2010-03-31 21:41:35 | その他
キーワードベスト20 その4の続きになります。
gooあしあとでは、アクセス解析としてどんなキーワードを検索してこのブログに飛んできたかの統計をとっています。過去90日分なので90日毎にログを残しています。実は2月初旬くらいにgooあしあとをはじめて450日になっていて、そのときにログだけコピペして残していたのですが、ブログにもってくるのをすっかり忘れていました。
1  EZ430-CHRONOS                    689
2  LCDオシロスコープキット       515
3  ZY-FGD1442701V1                  360
4  sim's blog                       326
5  HT7733A                          234
6  mtm04                            230
7  TL431                            217
8  sg12864a                         213
9  RTC-8564NB                       201
10 プリント基板で作るPIC応用装置    192
11 pickit2 販売                     186
12 pickit3                          182
13 PIC18F2550                       167
14 lattice ダウンロードケーブル     165
15 FT2232                           132
16 de0                              131
17 プリント基板で作るPIC応用装置 128
18 LPC2388                          127
19 mbed                             124
20 aitendo                          114

1位は未だに入手できないEZ430-CHRONOSです。
プリント基板で作るPIC応用装置が全角と半角で2つランクインしています。

カウンタはコピペしておくのを忘れていたので今日のカウンタを残しておきます。
閲覧 851,589PV 訪問者 291,936IP

今日から4年目

2010-03-31 20:26:33 | その他
2007年3月31日に開始したこのブログも2010年3月30日で3年が経過しました。今日から四年目に突入です。ほぼ電子工作暦と同じ長さです。
すみません、最近はツイッターばかりしていてブログの更新してないです。そのせいか、長い文章が書けなくなっています。
今後ともよろしくお願いします。


最短迷路問題のJavaコード

2010-01-13 23:51:12 | その他
人材獲得作戦・4 試験問題ほか」という記事で取り上げられている迷路の最短経路を求める問題をJavaで解いてみました。
ファイル入出力以外は、ほとんどCで書いても変わらないようなコードです。
一応、検索しないで1時間くらいでした。
import java.io.File;
import java.util.Scanner;


public class Maze {

    public static void main(String[] args) throws Exception {
        new Maze().run();
    }

    final int MAXSIZE = 128 * 128;
    final int START = 0;
    final int WALL  = -1;
    final int BLANK = -2;
    final int GOAL  = -3;
    final int ROUTE = -4;

    final boolean AnswerType = true; // falseで全解出力

    int[] ban = new int[MAXSIZE];
    int[] answer = new int[MAXSIZE];
    int xsize;
    int ysize;
    int bansize;
    int startpos;
    int goalpos;

    void run() throws Exception{
        read("maze.txt");
        solve();
    }

    void read(String filename) throws Exception {
        Scanner scan = new Scanner(new File(filename));
        String s;
        int i, p;

        // 配列オーバーフローとかはチェックしない
        p = 0;
        for(ysize = 0; scan.hasNext(); ysize++){
            s = scan.nextLine();
            for(i = 0; i < s.length(); i++){
                switch(s.charAt(i)){
                case '*' : ban[p] = WALL;  break;
                case ' ' : ban[p] = BLANK; break;
                case 'S' : ban[p] = START; startpos = p; break;
                case 'G' : ban[p] = GOAL;  goalpos  = p; break;
                }
                p++;
            }
            xsize = i;
        }
        bansize = xsize * ysize;
    }

    void solve(){
        for(int i = 0; i < bansize; i++) answer[i] = ban[i];

        // mark
        int level = mark();

        // 戻り道を探す
        search(goalpos, level);
    }

    int mark(){
        int p;
        int level;
        for(level = 0; ; level++){
            for(p = 0; p < bansize; p++){
                if(ban[p] == level){
                    // 枠のチェックなし、というかここはキューに積む方がいい。
                    if(ban[p - 1] == BLANK) ban[p - 1] = level + 1;
                    if(ban[p + 1] == BLANK) ban[p + 1] = level + 1;
                    if(ban[p - xsize] == BLANK) ban[p - xsize] = level + 1;
                    if(ban[p + xsize] == BLANK) ban[p + xsize] = level + 1;
                    if(ban[p - 1] == GOAL || ban[p + 1] == GOAL || ban[p - xsize] == GOAL || ban[p + xsize] == GOAL){
                        return level;
                    }
                }
            }
        }
    }

    boolean check(int p, int level){
        if(ban[p] == level){
            answer[p] = ROUTE;
            if(search(p, level - 1)) return true;
            answer[p] = BLANK;
        }
        return false;
    }

    boolean search(int p, int level){
        if(level == 0){
            disp(answer);
            return AnswerType;
        }
        if(check(p - 1, level)) return true;
        if(check(p + 1, level)) return true;
        if(check(p - xsize, level)) return true;
        if(check(p + xsize, level)) return true;
        return false;
    }

    void disp(int[] ban){
        int x, y, p;
        p = 0;
        for(y = 0; y < ysize; y++){
            for(x = 0; x < xsize; x++){
                switch(ban[p]){
                case WALL  : System.out.printf("*"); break;
                case BLANK : System.out.printf(" "); break;
                case START : System.out.printf("S"); break;
                case GOAL  : System.out.printf("G"); break;
                default    : System.out.printf("$"); break;
                }
                p++;
            }
            System.out.printf("\n");
        }
    }
}


2009年を振り返って

2009-12-28 05:30:47 | その他
昨年に引き続き、今年も1年を振り返ってみます。

1月。Gainer miniのクローンで遊んでいました。

2月。LTC1172で昇圧してました。赤外線リピータを考えていました。カウンタをつけました。キーワードベスト20を始めました。

3月。2月に考えた赤外線リピータを作ろうとして、38KHzの発振に挑戦していますがうまくいっていません。m8という小型CPUを動かしていました。hamayanさんにATmarquinoを頂きました。Interface付録のLPC2388基板でLチカだけしてます。

4月。はじめてエイプリルフールのネタを出しました。DDT誌付録のLatticeXP基板で遊んでいました。UQ Wimaxのモニターに当たりました。ノートPCが壊れました。

5月。オリゲー・フェスタ☆68に行ってきました。Arduino目当てでオープンソースハードウェアセミナーに行ってきました。ESECに行きました。MTM03に行ってきました。

6月。Lattice用のダウンロードケーブルを作っています。LatticeXP2のFPGAボードを買っています。diceをVHDLからVerilogに移植しています。ICFPプログラムコンテスト2009に参加してました。というか、問題の意味が分かるまでに期間が過ぎてました。

7月。diceをSystemVerilogに移植しています。FT2232DモジュールにROMを載せようと四苦八苦してます。

8月。ノートPCが故障したのでデスクトップPCを買っています。NT首都圏に遊びに行きました。フィジカルコンピューティングデーに遊びに行きました。

9月。ATMega329PでQFPの初はんだしました。

10月。ATMega329Pで生LCDを動かしています。PSoC3 FirstTouchKitを買ってLチカしてます。ニコニコ技術部文化祭に遊びにいきました。Altera DE0ボードを衝動買いしてます。

11月。Altera DE0で遊んでいます。初めてNIOSを使いました。ET2009に遊びに行っています。MTM04に遊びに行っています。Coronとmbedを衝動買いしてます。

12月。mbedで遊んでいます。twitterの転送をはじめました。フィジコンデーに遊びに行っています。

こう見てみると、あいかわらず節操がないというか、光に寄っていく虫のようにあちこち手を出そうとしています。

最近はtwitterが楽というかブログが面倒になってきていて、まじめに更新していません。twilogというのを見つけてtwitterの転送を始めたので、ブログへの転送はどうしようかと考えはじめてます。

12/25にブログを始めて1000日が経過しました。色々お世話になっている皆様ありがとうございます。我ながら、よく続いています。

CQの雑誌付録マイコン/FPGA基板のまとめ

2009-12-11 21:04:26 | その他
昔の雑誌の付録基板(マイコンまたはCPLD/FPGA)にどんなものがあったかを調べてみました。
1  2003/10 DesignWave      Cyclone(EP1C3T100)
2  2004/4  トラ技          H8/3694F
3  2005/1  DesignWave      Spartan-3(XC3S50)
4  2005/4  トラ技          R8C/15
5  2006/3  DesignWave      ARM(ADuC7026)
6  2006/4  トラ技          MAX II 
7  2006/6  Interface       SH-2
8  2007/1  トラ技          MSP430
9  2007/5  Interface       V850
10 2007/7  DesignWave      Spartan-3E(XC3S250)
11 2007/8  トラ技          dsPIC
12 2008/5  Interface       FR60
13 2008/5  DesignWave      ARM(STM32F103)
14 2008/8  トラ技          78K0
15 2008/9  Interface       ColdFire
16 2008/9  エレキジャック  78K基板他
17 2009/4  DDT No.1        LatticeXP 1/19 追記
18 2009/5  Interface       ARM(LPC2388)

順番は雑誌の年月でソートしてあります。実際の発売日だと順番が変わる可能性があります。CQ出版のバックナンバーのページを目視で探したので、抜けているものがあるかもしれません。

1(2003年)→1(2004年)→2(2005年)→3(2006年)→4(2007年)→5(2008年)→1(2009年)と、2008年までは順調に伸びていましたが、2008年をピークに今年は1つになりました。実際にはマイコン基板以外の付録基板もあったので数はもっと増えます。

私が知っているのは8.のMSP430からです。はんだづけとかするきっかけになった思い出があります。一番遊んだのはたぶん9.のV850です。初めてまともに使ったマイコンということになると思います。その他のはサンプルを動かしたりLチカしたり程度であまり遊んでいません。一番便利に使っているのは14.の78K0基板です。今でもAVRライタとして使っています。

1/19 追記 DDT誌のLatticeXP基板が抜けてました。

コマンドプロンプトのカーソル制御

2009-12-08 23:30:33 | その他
メモがわりです。

その昔はエスケープシーケンスを使って、画面を消去したり、文字を表示する位置を指定したりできました。XPのコマンドプロンプトだと、エスケープシーケンスは使えません。
MSDNを調べて、コンソールAPIを見つけました。GetStdHandle()でハンドルをもらってSetConsoleCursorPosition()に渡してやると、文字を表示する位置を変えたりできます。
文字入力はconio.hをincludeしてからCランタイムの_kbhit()とか_getch()、_getche()なんかを使うみたいです。

MTM04に行ってきました

2009-11-22 22:06:56 | その他
Make: Tokyo Meeting 04(MTM04)に行ってきました。天気はあまりよくなかったですが、大勢の人で賑わっていました。

今回は展示もやたら多く、ほとんど写真を撮っていません。

入り口にあった看板


ニコニコ技術部


講演をする小林さん

2010年春に出版される「Prototyping Lab」のお話をされていました。Arduino中級編を目指すとのことで、色々なレシピの載った本になるそうです。楽しみです。

大人の科学から「Japanino」という8bit マイコンが出るそうです。

裏に日本地図があるんでしょうか。

某所にいたフリス犬


インフローさんの所で販売していたカレンダー基板とコースター基板



2010年は寅年のような気もします。

8x8x8のLEDキューブ

ということは512個も使ってるんですね。

二足歩行ロボットBESIMOです。


もあさんのリレーを使った楽器

もなかを使ってMIDIから制御できます。

拡大図

リレーの外側をはずして、さらにストッパーもはずして、鐘を直接打つようになっています。

別の拡大図


圧電スピーカを使った入力装置


測距離計を使ったエアギター

ここまで、もあさんのところです。

踊るタコルカ


YM2151シールド。YamahaのFM音源ICを使ったシールドです。

作られた方のブログです。まずはYM2151を入手するところからすごいです。

Arduinoというか、ATMega328を使って160x120くらいのNTSC出力をされています。

スケッチとかではなく、ごりごりのアセンブラだそうです。階調も16レベルあるそうです。タイミングを合わせるのがたいへんだったとか。ぜひともソース公開していただきたいものです。


Arduinoとしては全く使ってないとのことです。

O'Baka Projectの色々(Arduino Diecimila を使う)
ワンチップArduino




スケルトンArduino。完全に空中配線のみで作られています。

他にCNCで基板を削るデモもされてました。

ペーパークラフトのテオ・ヤンセン(Emerge+さんのページ)

紙なのに動くー

振るとなるグラス。中のボードはSunのロゴがありました。


なんでも作っちゃう、かも。さん

スタバカップスピーカーのワークショップをされていました。

LED Tile (詳しくはこちら)

裏側

マトリックスLEDの裏にぴったり回路を作っています。どうやってはんだづけしたのかは謎がいっぱいです。見えているICはPSoCだそうです。これをたくさんつなげることができます。


とまあ、これで10件くらいのご紹介です。全部で140件なので、とんでもない状況です。とても紹介しきれません。まだ、明日もやってます。

今回買ってきたもの

マイコンボードCoron ARM Corex-M3(STM32 72MHz)搭載だそうです。
Tokyo Hackerspace Portable Hackable Sign 8x8マトリックスLEDに流れるメッセージを出します
16x16マトリックスLED
FMラジオキットFK1

ET2009に行ってきました

2009-11-19 19:53:55 | その他
hamayanさんが既にレポートされてますが、私も行ってきました。明日が最終日です。

NXPのCortex M0の展示がありました。

富士通がCortex-M3のマイコンを出すそうです。国内では東芝に続いて2社目です。東芝は過去のマイコン(TXシリーズ)を止めるそうですが、富士通は過去のFR-60シリーズと共存させる形になるそうです。FRAMマイコンの展示もありましたが、他との差別化をする意味でもFRAM-ARMを出していただきたいものです。

今回はNECエレクトロニクスとしての最後の展示をしていました。これからはルネサスエレクトロニクスの展示になるのではないかと思います。

ルネサスはH8シリーズのコアをAlteraで使えるソリューションを提供していました。まだSOPC Readyではないみたいですが、ゆくゆくはSOPC Readyな形で提供していきたいとのことでした。現状ではFPGAにもよりますが、30MHz~60MHzくらいで動作するそうです。最低でも150MHz~になるNios IIに較べると微妙な感じです。そのあたりはASIC用のコアをそのまま提供しているとの話なので仕方のないところかもしれません。FPGAでプロトタイピングしたシステムをそのままASIC化できるというところまでは、まだできていないようです。

AlteraにはCoretex-M1がありました。ゆくゆくはSOPC Readyにするらしいです。

NEDエレクトロニクスでLED調光マイコンセミナーをしていました。マイコン搭載のLED蛍光灯をプログラミングするセミナーです。おみやげにセミナーで使ったLED蛍光灯をいただきました。

液晶部分には電力や電気代が表示されています。

さっそく開けてみました。

中には78k0マイコンが3ついるみたいです。
マウスで調光パターンを描くとマイコンを自動でプログラミングしてくれるソフトが、いい感じでした。NECのappliletはすごく便利なのでルネサスになっても残してほしいです。もしくはH8もR8もSH2も全部appliletで、できるようになってほしいです。

会場は撮影禁止だったのですが、お願いして撮らせてもらったものです。

でっかい、はちゅねがいました。

スタンプラリーがあったみたいなんですが、始点が分からず断念しました。

なぜか会場にいた、なまはげです。


会場の外なのでいいだろうと、撮ってきた看板です。


同じく会場とは関係のないクイーンズスクエアのクリスマスツリーです。


ETの2日目はETフェスタといって、アルコールや食べ物が振舞われます。私はなひたふさんのブースに行って電気ブランをごちそうになりました。これは、えーと、なんというか、ハミガキ粉みたいな味のやたら濃いお酒でした。あはは。かなり酔っ払いました。なひたふさん、ごちそうさまでした。

マイコンボードやFPGAボードに囲まれた幸せな一日でした。


おまけ

アットマークテクノさんでいただいたアルマジロのぬいぐるみ


コベリティさんでいただいたサソリの人形(最後の1個だったそうです)。足は磁石になっています。


サソリ対アルマジロ


CQ出版のブースで買った「すぐに使える液晶マイコン・モジュール


ディジインターナショナルさんは、今回も10000円販売をしていましたが、ジクビーは既に売り切れでした。初日の午後までもたなかったとのことです。うーん残念。

すみません、かんぺきに遊びにいってました。一応まじめにセミナーなんかにも参加してました。のりたんさんにもお会いできました。チッターぽいを見せていただきました。

会場のパシフィコ横浜のすぐ近くに「万葉倶楽部」というスパがあります。酔っ払ってたので行きませんでしたが、帰りがけに行くといいかもしれません。

トランジスタ破壊技術

2009-11-11 20:49:53 | その他
今月号のトラ技の特集は「完全理解!トランジスタ回路」です。トランジスタ技術だけあってトランジスタの特集とは、まんまです。p.79のコラムが「トランジスタ破壊技術!」ということで、ぱっくり割れた2SC1815の無残な写真が載っています。こうやったら、こう壊れるみたいな話はぜひともいっぱい載せてほしいものです。

来月号の特集ははUSBマイコンの製作集です。

トランジスタティーセットの2巻もゲットしてきました。

PSoCマイコン・スタートアップも店頭に並んでいました(川崎)。スタートアップというには、かなり濃い内容です。どちらかというと中上級者向けです。


PSoC基板の表側


裏側

グランドがメッシュになっています。

とりあえず、書き込み用の端子は実装されているのでLチカははんだづけなしでできます。


キーワードベスト20 その4

2009-11-10 23:34:44 | その他
キーワードベスト20 その3の続きになります。

gooのあしあと解析では過去90日分の検索キーワードのランキングが見れます。361日目なので4回目のランキングを見てみました。
1  LCDオシロスコープキット    706 (初登場)
2  SG12864A                      310 (前回6位)
3  PIC18F2550                    272 (前回3位)
4  HT7733A                       269 (前回1位)
5  sim's blog                    240 (前回2位)
6  pickit2 販売                  196 (前回10位)
7  LPC2388                       190 (前回4位)
8  pickit3                       167 (前回8位)
9  RTC-8564NB                    157 (前回7位)
10 psoc3                         150 (初登場)
11 lattice ダウンロードケーブル  147 (前回5位)
12 TL431                         140 (前回9位)
13 STM32 Primer2                 124 (前回15位)
14 HT7733A                124 (前回11位)
15 FT2232                        119 (前回13位)
16 MTM04                         117 (初登場)
17 ZY-FGD1442701V1               101 (初登場)
18 ltspice トランス               95 (前回20位)
19 led 電池                       92 (前回16位)
20 1.5v led                       87 (前回14位)

初登場のキーワードが4つで、LCDオシロスコープキットが初登場でぶっちぎりの一位でした。あいかわらず、部品とかマイコンとかキットが検索キーワードでひっかかっています。前回から消えたキーワードはPDS5022S、pickit3、lm73、無安定マルチバイブレータです。

最近は人気記事の集計をしなくなっているみたいです。

閲覧516,000PV、訪問者176,323IP

トランジスタティーセット2巻

2009-10-31 22:51:45 | その他
トランジスタティーセット ~電気街路図~の2巻が出るようです(amazonへのリンク)。11/11発売なので、まだ予約中みたいです。1巻がおもしろかったので2巻も楽しみです(1巻のときに書いた記事)。

1巻の表紙はすずちゃんでしたが2巻はみどりちゃんです。作者の里好さんのブログによるとドラマCDも出るそうです(記事)。

連載している雑誌を探してみました。まんがタイムきららフォワードでした。

ニコニコ技術文化祭に行ってきました

2009-10-24 22:18:46 | その他
10/24,25開催のニコニコ技術文化祭に行ってきました。東急大井町線の緑ヶ丘駅から、すぐそばです。

建物は2つで緑ヶ丘1号館と3号館です。順路は1号館からでした。

1号館の看板


3号館の看板


あの楽器がありました。



赤外線センサーを使っているそうです。赤外線センサーが並んでいて、どこで遮ったかで場所を読み取るそうです。

ATMega644Pで秋月の300円液晶を動かしています。

この方は、やたらと工作がきれいです。基板の裏側の写真を撮らせてもらいました。

FT232RLなんかもユニバーサル基板に手付けです。

同じ所にあった重力加速度センサつきPOVです。加速度センサを使うことで、振る速度に依存しない安定した表示ができるように工夫しているそうです。振っているところも写真に撮ってみたのですが、ぶれて駄目でした。

同じ所にあったもの


手回し型ネギ振り


丸いテーブルのような入力装置

透明の丸いのを置いた位置や傾き、動きなんかを読み取ることのできる入力装置です。フィードバックとして絵が出ています。透明の丸いのの裏にあるパターンを読み取っているそうです。一番左のは、MIDIのボリュームと連動していて上方向に動かす(すべらす)と音量が大きくなっていました。不思議な感じのする装置でした。

NT首都圏にもあったアクリル板とLEDのネギ振りです。

台の様子


paoさんのオシロスコープネギ振り



上の方からICはクロック発生(インバータ)、アドレス生成、コンテンツROMが2セットです。左側にラダー型のD/A変換用抵抗が並んでいます。なんといっても、このデータをよく作ったものです。
paoさんと、少しお話してきました。考えてみるとMTM03、NT首都圏と今回で3回機会があったのですが、妙にすれちがっていて、お話しできたのは今回がはじめてです。

MICRO TALKもいました。


タコルカさんのぬいぐるみを自作されてました。



自立してるのがすごいです。

NT首都圏にもいたスチームネギ振りです。

燃料切れとのことでデモはされてませんでした。空焚きしちゃった焦げ跡が痛々しかったです。

LEDが25x25並んだ大きな表示装置です。LEDは全て砲弾型の10mmφくらいのものです。




はるさんのXGAディスプレイ表示実験

左にいるのがなひたふさんのSpartan-6 FPGA評価ボードです。FPGAに1-7serdesコアを入れて直接LVDSで表示データを送り込んでいます。ゆくゆくは左下にあるbeagleboardからデータを送りたいとのことでした。はるさんとは、その昔Utchy砂肝さんがLVDSでXGA表示をしていた話をしてました(Utchy砂肝さんのXGAの記事)。

Spartan-6 FPGA評価ボードです。


自作ジェットエンジン


テスラコイル


レールガン

レールガンの電源装置?


スパイダーマウスというフィードバックつきのマウスです。周りにモーターがあって糸でつながっていて、PC上で何かしたフィードバックがマウスにきます。ぐいぐい引っ張られる感じでした。

糸がつながっている様子

パネル


不在通知Pことrerofumiさんの作品群が展示されていました。















焼いて取り出したPSoCのコアです。他にSpartan-3E、PIC16F876A、Z80、SRAM、CPLD(XC9536)も展示されてました。
一人で1コーナーできちゃうのがすごいです。


個人的には、はるさんのところでSpartan-6の評価ボードを見せてもらったのが印象深かったです。
みなさん、おもしろすぎです。
明日(25日)しかない展示もあるそうです。ぜひとも見に行かれてはいかがでしょうか。