フォト
無料ブログはココログ

« 2012年6月 | トップページ | 2012年8月 »

2012年7月

2012年7月30日 (月)

バウンダリスキャンでRAMを読む

 若い人たちに、バウンダリスキャンでRAMを読む解説をすることがあるのだが、説明が悪いのか聞いてる人たちはあまりピンときてないようなので、LCMXO2280C-B-EVN+UrJTAGを使ってデモ環境を作ってみた。

「NORFlashやSRAMは、NANDFlashと違ってアドレスを入力してOE,CEをLにすればデータが出てくるので簡単に読める。」
という説明をしたいのである。

  • アドレス、OE、CE制御→データ出力
  • バウンダリスキャンでアドレス、OE、CE出力可能
  • バウンダリスキャンでデータ入力可能

簡単でしょ! というわけだ。
ベテランの人にこの話をしたら、
「そもそも、NORFlashやSRAMのアクセス方法を知らない人には、イメージできないのでは?」
という意見をもらった。
ならばと、アドレス、データに接続したスイッチをパチパチやって、データのアクセスが簡単っていうことが体験できるように、アドレス用8bit、データ用8bitのDipSWとOE、WEのスイッチを載せてみた。
Memtestboard

アドレス、データ入力スイッチはトグル・スイッチを使いたいところだけれど、安さに負けてDIPスイッチにした。

こんな↓回路にしてみた。

Memtestboard

バウンダリスキャンでRAMにアクセスしなければならないので、RAM(HM628256:256Kx8 SRAM)の端子、SWは個別にCPLDに入力し、バッファを経由してSWとRAMを接続している。

ここからが本題 バウンダリスキャンでRAMを読む
UrJTAGでFlashにアクセスするためにはBUSを定義するのが簡単である。デバイスがCPUであればすでに定義されていて、

jtag> help initbus
Usage: initbus BUSNAME
Initialize new bus driver for active part.

BUSNAME       Name of the bus

List of available buses:
au1500     AU1500 BUS Driver via BSR
avr32      Atmel AVR32 multi-mode bus driver, requires <mode> parameter
           valid <mode> parameters:
               x8:   8 bit bus for the uncached HSB area, via OCD registers
               x16:  16 bit bus for the uncached HSB area, via OCD registers
               x32:  32 bit bus for the uncached HSB area, via OCD registers
               OCD : 32 bit bus for the OCD registers
               HSBC: 32 bit bus for the cached HSB area, via SAB
               HSBU: 32 bit bus for the uncached HSB area, via SAB
                               (
                                )
prototype  Configurable prototype bus driver via BSR, requires parameters:
           amsb=<addr> alsb=<addr> dmsb=<data> dlsb=<data>
           ncs=<cs#>|cs=<cs> noe=<oe#>|oe=<oe> nwe=<we#>|we=<we>
      [amode=auto|x8|x16|x32]                                (                                 )

で一覧が表示される。
このデモ環境ではCPLDを使用しているので、prototypeバスを使って自分でBUSを定義する必要がある。

jtag> initbus prototype amsb=A14 alsb=A0 dmsb=D7 dlsb=D0 ncs=nCS noe=nOE nwe=nWE amode=x8

のように指定すると、信号名D7、D6、D5、D3、D2、D1、D0を自動的に探してくれる。同様に信号名A14からA0を自動的に探してくれるので隣り合ったピンに配置していなくてもよい。
問題はA14~A0、D7~D0のように、プレフィックス'A'や'D'が同じで、サフィックス'14'~'0'が連続していなければならないことである。
LCMO2280では信号名はPT2D、PT2Cのような名づけ規則なので

jtag> initbus prototype amsb=PT2C alsb=PT6C ・・・・

のように指定してもうまく探してくれない。

エイリアス機能があって、PT2C→A14、PT6C→A0のエイリアスを指定してやればよさそうだ。エイリアス機能 saliasのヘルプを表示させると

jtag> help salias
Usage: signal ALIAS SIGNAL
Define new signal ALIAS as alias for existing SIGNAL.

ALIAS         New signal alias name
SIGNAL        Existing signal name

signalコマンドのヘルプが表示される。
aliasコマンドではなくてsignalコマンドを使えと言うことかと、signalでnOEを指定し、nOEに’0’を出力してみた。

jtag> signal nOE PT7A
jtag> print signals
Signals:
nOE PT7A
PL2A    input=PL2A      output=PL2A
         (
         省略
          )
jtag> set signal nOE out 0
signal 'nOE' cannot be set as output

ところが、nOEは出力に設定できないとおっしゃる。
ユーザマニュアルには saliasコマンドがちゃんと記載されているので、saliasコマンドでやってみると、

jtag> salias nOE PT7A
jtag> set signal nOE out 0

ちゃんと指定できるではないか。
ということで、SRAMの全ピンのエイリアスを設定するスクリプトを書いて実行すると、A14~A0、D7~D0、nCE、nOE、nWEが使えるようになった。

メモリ・アドレス0000hのデータを読むには、

  1. 外部テストモードに設定
  2. BSRのA14~A0にアドレス(0000h)、nCE、nOEに'0、nWEに'1'をセット
  3. BSR出力
  4. BSR入力
  5. データ表示

jtag> instruction EXTEST
jtag> shift ir
jtag> set signal A14 out 0 
jtag> set signal A13 out 0
jtag> set signal A12 out 0
           (
            )
jtag> set signal A2 out 0
jtag> set signal A1 out 0
jtag> set signal A0 out 0
jtag> set signal nCE out 0
jtag> set signal nOE out 0
jtag> set signal nWE out 1

jtag> shift dr
jtag> shfit dr
jtag> get signal D7
D7 = 1
jtag> get signal D6
D6 = 1
         (
          )
jtag> get signal D1
D1 = 1
jtag> get signal D0
D0 = 0

メモリ・アドレス0000hにデータA5hを書くには、

  1. 外部テストモードに設定
  2. BSRのA14~A0にアドレス(0000h)、D7~D0にデータ(A5h)、nCE、nOWに'0、nOEに'1'をセット
  3. BSR出力
  4. BSRのnOEに'1'をセット
  5. BSR出力
jtag> instruction EXTEST
jtag> shift ir
jtag> set signal A14 out 0 
jtag> set signal A13 out 0
jtag> set signal A12 out 0
           (
            )
jtag> set signal A2 out 0
jtag> set signal A1 out 0
jtag> set signal A0 out 0


jtag> set signal D7 out 1
jtag> set signal D6 out 0
jtag> set signal D5 out 1
jtag> set signal D4 out 0
jtag> set signal D3 out 0
jtag> set signal D2 out 1
jtag> set signal D1 out 0
jtag> set signal D0 out 1

jtag> set signal nCE out 0
jtag> set signal nOE out 1
jtag> set signal nWE out 0

jtag> shift dr

jtag> set signal nWE out 1
jtag> shfit dr

 基本的にはこれで読み書きできるのだが、この操作をアドレスを変えて何回も繰り返すのは大変だ。
ということでこれらの操作を自動的に行うメモリアクセス系のコマンド、peek、poke、writemem、readmemがある。

 アドレス0000hにA5hを書いて、それを読みだすには peek、pokeを使うととっても簡単である。

jtag> script D:\Users\Yoshi\Documents\JTAG\alias.txt 
Please use the 'include' command instead of 'script'
jtag> initbus prototype amsb=A14 alsb=A0 dmsb=D7 dlsb=D0 ncs=nCE
   nwe=nWE noe=nOE amode=x8
jtag> poke 0x0000 0xA5
jtag> peek 0x0000
bus_read(0x00000000) = 0xA5 (165)

めでたし、めでたし。
( 修正2012/8/26: nitbus→initbus)

 最も大きな問題は、このデモでNORFlash、SRAMはバウンダリスキャンで簡単に読めるということが分かってもらえるどうかなのだが


「自分の常識他人の非常識」にはいつも気を付けているつもりなのだが、見事にハマってしまった。

2012年7月26日 (木)

やっぱりソニーの話題に反応してしまう

 日経Tech-Onの谷島宣之の「さよなら技術馬鹿」というコラムに「みんなでソニーを考えよう」という記事があった。2005/5/25なのでずいぶん前に書かれたものだ。

 その中で気になる文を見つけた。

かつては技術者が現場で面白いものを勝手に作り、経営が『何かないか』といったときに『これはどうでしょう』と出せる余裕があった。ポケットの中にいつも 何か入れていたわけです。ところがカンパニー制を取り入れ、事業ごとの収支を厳密に管理するようになり、『今後は勝手に開発するな。会社が優先順位を付け るからポケットに入っているものを全部出すように』と言って、おもちゃを取り上げてしまった。

  --中略--

 創業者が築いた、技術者がやる気を出す社風をどう維持し、しかも複雑多岐に渡った事業をどう管理していくか。かつて優良と言われた企業の経営者たちが苦しんでいる問題と言える。

身近にある光景だ。

 最近身近で机上の空論が多く聞かれるようになった。机上の空論に正論をまぶしてあるので始末が悪い。
正論を吐くなら覚悟を決めて吐けばよいものを、後ろに逃げ道が見え隠れしている。

 

2012年7月25日 (水)

理科系の作文技術

理科系の作文技術 中公新書 木下是雄

Photo

 以前、文章の書き方に関する本を片っ端から読んでいたことがある。
(最初に読んだ本には「本を読んでも文章は上手にならないので、自分で文章を書きなさい」と書いてあったのだが)
行きつけの書店にある「文章の書き方」本をすべて読み、次に読む本は今まで読んだ本の巻末の参考文献に挙げられている書籍から読むことにした。そのときに気が付いたことは「理科系の作文技術」はどの書籍にも参考文献として挙げられていることである。

 「文章の書き方」本は数多く出版されており、文法について詳しく書かれた書籍もあるし、小説やエッセイの書き方のように読者に感情を伝える手法について書かれた本もある。

 この本は、
広い意味で理科系の、若い研究者・技術者、学生を対象に、
他人に読んでもらうことを前提として、理科系の人が仕事で書く文書
「理科系の仕事の文書」
の書き方について述べた本である。
この本で読むべきは

6章 はっきり言い切る姿勢
7章 事実と意見

である。

6章 はっきり言い切る姿勢
 明言を避ける心理は日本の文化に根差すものであり、日本の言語習であって日本人的教養の一つである。
しかし、「理科系の仕事の文書」に必要なことは

  •  心理的要素を含まない
  •  政治的考慮とも無縁である
  •  明解を旨とする

である。
 木下是雄先生は、明快な日本語を<日本語ではない>日本語と言い、「理科系の仕事の文書に関する限り、あえて<日本語ではない>日本語、明解な日本語を使うことにしようではないか」と書かれている。

 どのような場面でもやみくもに明解な日本語の使用するのではなく、明言を避ける日本語を日本の文化として尊重したうえで、「理科系の仕事の文書」に限って明解な日本語を使用するべきという主張である。

 <はっきり言い切る>覚悟をせよ、とも書かれている。
まず、普通の日本人であれば自然にぼかし言葉を使ってしまうということを自覚した上で、使わないという覚悟をしなければ、誘惑に負けてついつい、ぼかし言葉を使ってしまうからである。また、知らず知らずのうちに、ぼかし言葉を使ってしまうこともあるから相当の覚悟が必要である。

7章 事実と意見
 事実と意見を分けて書くことの重要性は、多くの「文章の書き方」本が指摘している。
この本は指摘だけでなく、事実と意見の定義から初まって、米国の教科書から引用した例文を示して事実か否かを判断する演習が含まれている。
 例えば

  •  ジョージ・ワシントンは米国で最も偉大な大統領であった。  
  •  私たちは、殺人犯人スニードハートが出納係を射つのを目撃した。

は事実かという問いである。
前者が事実ではないことは容易に判るが、後者については事実と判断の区別が明快でなく、判断を含む可能性がある。「目撃した」は事実だが「殺人犯人」は判断の可能性があるからである。

 ぼかし言葉と同様に、日本語は事実か意見かについても明確にしないことが多い。
事実を記述する際には

  •  ぼかし表現を使用しない
  •  できるだけ名詞と動詞で書く
  •  主観に依存した修飾語を混入させない

意見を記述する際には

  •  (私は)...(と考える)を省略しない

と具体的な注意点が書かれている。

経験的には
 「理科系の仕事の文書」を書いた経験から言えば、気を付けているつもりでも、事実に意見が混入することがあり、その判断が曖昧な場合には書いている当人は気づかないことが多い。中には意図的に事実の羅列に意見を混入させる確信犯と思しき輩もいる。

 他人が書いた文書を読んだときに、その内容を理解していない場合には比較的容易に混在に気が付くのだが、内容を理解している場合には混在に気が付かないことが多いので困る。

現場では
 若い人達の前で喋るときには必ずこの本を読むように薦めている。学生時代にこの本を読んだことがあるかを尋ねてみると(皆理工系出身なのだが)読んだことがある人が意外に少ない。
 これまで受けた国語の授業を思い出してみても、6章、7章に書かれていることは教えてもらった記憶がなく、ぼかし言葉を使わない文書の書き方や事実と意見の判定方法の訓練をしていないのだから、いきなり「理科系の仕事の文章」が書けないのは仕方がないことである。
 娘が学校から指定された「論文の書き方」本を読んでみた。かなり売れている本のようだが、「理科系の作文技術」とは違って、その内容は体裁などのHowTo本だった。

 「理科系の作文技術」の初版は1981年であり、現在も書店に新品が並んでいる。
大袈裟かもしれないが日本中の「理科系の仕事の文書」を書く必要がある職場のおじさん達が薦めている結果ではないだろうか。

ところで
 上の写真に何故2冊写っているかというと、(実は職場の机の引き出しにも3冊あるのだが)
若い人の文書を添削することがあり、初めて添削する際には「理科系の作文技術」を読んだことがあるかを尋ねることにしている。読んだことがない人には「読め」というのだが、「読め」と言われてすぐに本屋に行かない人もいるので、この本を渡して「読め」と言うようにしている。「読みました」と言われたら「返さなくてもいいから持ってたら」と言うことにしているので何冊も必要となる。

若いときには
 この本が出版されていなかった頃、書いた文書を上司に添削してもらうと確かに良くなったと感じるときと、「好き嫌いの問題じゃネ、直せというなら直すヨ」と思うときがあった。
当時添削してくれる上司になぜ修正しなければならないかまで説明してくれる人はいなかったからだ。
 恥ずかしいことだが、他人の文書を添削する立場になってから、切羽詰って「文書の書き方」のお勉強を始めたので、文書の書き方についてはハッキリ言って付け焼刃だ。
 しかし、添削する際に「理科系の作文技術」を基準として示すことで、添削される側も諒解しやすいのではないかと思っている。


理科系の作文技術(2) (2013/12/20)

2012年7月23日 (月)

シュリンクソケット

1.77mmピッチの秋月C基板を買ってきた
Shrink_socket
当然だけどちゃんと載る。

シュリンクDIPには幅が異なるパッケージがあることに気が付いた
幅:0.77in (HD63B03YP)
Hd63b03yp_socket

幅:0.63in (↑より2列狭い) (MB8431)
Mb8431_socket

2012年7月21日 (土)

FRISK レーザーポインタ

Youtubeなどで良く見かけるFRISKレーザーポインタを作ってみた。

プレゼンすることがあるので、いつもかばんに入れている。
Frisklaserpointer

内部はシンプル。 レーザーモジュールと電池とSW
Frisklaserpointer1
 FRISKケース工作で1番の問題は電源である。
乾電池駆動しようとすると、単3はもちろん入らない。単4も単5も入らないが、単6ならば入る。
 単6は単体で売っていなかったので006Pを分解して調達した。昔の006Pの内部は本当に積層だったが、今時の006Pは単6電池が6本入っているものがある。(このサイトで知った)

 単6を単体で売ってないと思ったらEnergizerという会社が売っていて、Amazoneやヨドバシでも買えるらしい。電池ホルダも製品があるらしく、Digikeyで買えるらしい。

 電源SWが工夫のしどころである。
千石で売ってる小型のマイクロスイッチを使った。(安直だ)
Frisklaserpointerusw Frisklaserpointerusw1
ふたを閉じるとレバーが押されて、SW OFF
ふたを開けると SW ON
Friskserial3

プレゼンで使うと、時々反応してくれる人がいて、ちょっとうれしい。

2012年7月18日 (水)

ソニーのふり見て、我がふり直せ。

ソニーのふり見て、我がふり直せ。 山口誠志 河野透 ソル・メディア
Photo_2

最近よくある「ソニーがダメになってしまった」本かと思いスルーしていたのだが、
内容はブランドの構築・保守について書かれた本であると、雑誌の書評にあったので読んでみた。
ブランドの目的・確立・保守については、理屈だけではなく現場での泥臭い話が参考になる。(インタビュー形式にしたところがミソか)

 ブランドは、ユーザに付加価値として認めなければ、ブランド分の金額を払ってはもらえない。 σ^^)のSONYに対するブランドイメージは、「先進的」、「高性能」、「カッコいい」であった。もっと言えば「まねしたのモルモット?上等じゃねえか」というところであった。
ブランドはメーカとユーザが共に作り維持するもので、この感覚が「ぼくらのソニー」感であろう。

 いつの頃からかSONYはエレキだけでなくエンタメ事業を始めたが、エンタメにおいてSONYブランドはコンテンツを鑑賞する理由にはなりえないので、エンタメ事業には「ぼくらのソニー」感はない。例えば、SPE/コロンビア(ブランド)の映画ではなく「スパイダーマン」(コンテンツ)が観たいのである。ゲームも基本的にはコンテンツが主でありハードウェアは従である。

 ソニーのエレキ製品にブランド価値を認めているのはおじさん世代だろう、娘にソニー製品に対するイメージを聞いてみると、ソニーといえば「ソニー・タイマー」だそうだ。
この本の中で河野氏が言っているように、エレキSONYのブランドを棄損し、エンタメSONYのブランドを確立できなかったようだ。

挿絵は毒が強い
Img_5744

 もう「ぼくらのソニー」感は措いて、大企業病に侵されて自らの強みを発揮できなくなった企業として、学ぶことが必要かもしれない。

2012年7月15日 (日)

OpenOCD ST-Link + STM32LVDiscovery

STM32vlDiscoveryのRAMで動くプログラムをEcripseで作ってOpenOCD-STLinkでデバッグするときのメモ


  1. 概要
    STM32vlDiscoveryは開発環境(IDE)として

    ● Atollic, TrueSTUDIO® (including the free LiteTrueSTUDIO®)
    ● IAR, Embedded Workbench® for ARM
    ● Keil, MDK-ARMTM

    が使える

     評価ボードや雑誌のオマケ基板をで遊んでいると開発環境が増えてくるのだが、大抵はLチカが動くと2度と使わない。ということで既にインストールしてあるEclipse+gcc+OpenOCD-STLinkでやってみることにした。
    更に、ちょっとしたプログラムをいちいちFlashに書くのは面倒なのでRAMで動くプログラムを作ることにする。

  2. Eclipse+CDT
     EclipseのインストールはNetを探すと見つかる。CDTもインストールしておく。
    ZylinCDT(組み込み用CDT)もインストールする。
    Eclipseの[ヘルプ]→[新規ソフトウェアのインストール]→[追加]で

    名前(N): Zylin embeddedCDT
    ロケーション(L): http://opensource.zylin.com/zylincdt
    Eclipsezylincdt_2



    を追加すると、中ほどのリストボックスに Zylin embeddedCDT が表示されるのでこれをインストールする。

  3. サンプルソース
     サンプルはSTのSTM32VLDiscoveryのページの[Design Support]タブにSTM32VLDISCOVERY firmware package (AN3268)が公開されている。
     このサンプルはARM-based 32-bit MCU STM32F10xxx standard peripheral libraryが使用されていている。ソースは参考になるのだが、このサンプルではRAMに収まらない。
  4. ここのサンプルはSTのライブラリを使っていないのでRAMに収まる。ヘッダファイルはSTM32F10x standard peripheral librayのものを使う。

  5. スタートアップルーチン
     スタートアップルーチンはSTM32VLDISCOVERY firmware packageを展開してできる、

    ~\an3268\stm32vldiscovery_package\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\TrueSTUDIO\startup_stm32f10x_ld_vl.s
    の拡張子を"S"(大文字)にして使う。

  6. リンカスクリプト
     RAMで動作させるためのリンカスクリプトはSTM32VLDISCOVERY firmware packageを展開してできる、
    ~an3268\stm32vldiscovery_package\Project\Master Workspace\TrueSTUDIO\stm32_flash.ld 
    の「>FLASH」を「>RAM」に編集して使う。
    (スタートアップルーチンで.dataセグメントをROMからRAMへのコピーが不要になるのだが、ここは手抜きということで ^^;)

  7. コンパイル
    Lesson1
    のソースをコンパイルしてみた。
    Lchika_src

  8. デバッグ
    デバッグの構成で左ペインの Zylin embedded debuger(C++アプリは不可)を選択し、コマンドタブに以下のコマンドを入力する。
    Lchika_dbg
    target remote localhost:3333
    monitor reset halt
    thbreak main
    mon mww 0xE000ED08 0x20000000
    set $sp=0x20002000
    set $pc=Reset_Handler
    info reg
    mon reg
    load
    c
    

    gdbのコマンドの意味は

    target remote localhost:3333 #OopenOCDのgdbポート
    monitor reset halt #CPUをリセットして停止する
    thbreak main #main() にブレークポイント設定
    mon mww 0xE000ED08 0x20000000 #割り込みベクタをRAMの先頭に設定
    set $sp=0x20002000 #スタックポインタをRAMの末尾に設定
    set $pc=Reset_Handler #プログラムカウンタをReset_Hanlerに設定
    info reg #レジスタ表示
    #mon reg #こちらの方が詳しい      
    load #バイナリをRAMにロードする
    c #実行

    OpenOCDを起動しておくとソースレベルデバッグが可能になる。
    (メニューバーの[実行]→[外部ツール]→[外部ツールの構成]でOpenOCDを起動するように設定しておくと外部ツールアイコンで起動できる)
    Lchika_off

  9. 実行
    実行するとこんな感じ
    Mvi_5837thm←リンク先に動画

    プログラムで点滅しているのは右上の青LED


そのうちもっと丁寧に書こう

2012年7月13日 (金)

Raspberry Pi

 Raspberry PiというARM11のシングルボードコンピュータが英国で売られていて、RSオンラインから購入できる。

このSBCのスペックは

CPU:700MHz/ARM1176JZF-S
メモリ:256MB
USB2.0
Video:コンポジット、HDMI
Audio:HDMI
ストレージ:SD
ネットワーク:10/100Mb/s
GPIOx8、UART、I2C、SPI

で$35とかなりのお買い得である。

 このボードの存在に気が付いた時にはもう売り切れで入荷待ちになっていて、登録順に購入可能になっていたので一応順番待ちの列に並んでおいた。先日購入可能の案内メールが来たので注文したところ、なんとリードタイム12週だそうだ。

 最近ぱんだも動いてないよなと思いつつ、またコレクションが増えてしまった。

2012年7月11日 (水)

ワタシの夫は理系クン

私の夫は「理系」クン 渡辺由美子 NTT出版
Photo_2

※「オタク」という表現を使いますがネガティブな意識はありません。むしろ親しみを感じています。

 この本に登場する夫妻は共にオタクなので、非理系オタクvs理系オタクについて書かれている。

Photo_3
オレンジの部分vs濃い青の部分である。

 この本のエピソードのほとんどは、性格的(オタク的)要素が多く「理系」であることに起因する問題ははそんなに多くないように思う。 

 結論は、価値観が異なる人間が共同生活するためには、相互理解と譲歩が必要であるということである。

 娘がこの本をパラパラと読んで、「おとうさんに話しかけると黙ることがあるよね、脳内会議やってるの」という。確かに質問に即答できないことがあることは自覚しているのだが、会議というほど大げさなものではなく、もう一人の自分を相手に詰将棋をしているような感じだ。2人とも自分なのでなかなか最善手が見つからず、質問に対する回答が遅れてしまう。
難しい質問をされて2、3日考えた後に回答すると、たいてい「何の話?」と言われる。話しかけた側は深い意図がないことが多いことは知っているのだけれど。

 我が家は、理系男性1名、非理系女性3名、非理系猫1匹である。
妻と娘の会話を何気なく聞いているととても疲れる。一応交互に発言しているが(妻は無理やり割り込むことがある)、会話の主題が発言ごとに変わっていく。
この事実を発見した時にはちょっとしたショックを感じた。なんと、互いの主題、趣旨が異なったまま会話が続いているのである。会話として成立していない(ように聞こえる)2人の発言を一連の会話として理解しようとするので精神的に苦痛である。
 最近は慣れてきた。似たような話題の放送を2CH分一度に聞いていると思うと結構楽に分離できるようになってきた。分離した内容は他愛のないもののことが多く、精神的な苦痛もなくなった。

 この例はおそらく理系vs非理系ではなく、男性vs女性かもしれない。
何かの問題の原因を全て「理系だから」といってはいけない!

「これだから理系はね...洒落が通じないんだよね」という声が聞こえてきそうだが...

2012年7月 9日 (月)

SDR+パケット通信

 みのむしクリップダイポールでは限界があるので、もう少しまともで広帯域のアンテナはないかと考えたところ、テレビの室内アンテナが使えるのではと考えた。
デジタル放送のアンテナはUHFなので50MHz帯や144MHz帯、エアーバンドには使えない可能性が高い。
ヨドバシに行くとアナログ放送用の室内アンテナをまだ売っていたので買ってきた。(だれがアナログ放送用の室内アンテナを買うのだろうか)

Tv_ant ←布団干しの上に置いた

 ワンセグチューナ+SDRでアマチュアバンドを聞いているとパケットらしい音が聞こえてくる。デコードできないかと思い探すと、ソフトでデコードするソフトがあることが分かった。
 SV2AGWのサイトのダウンロードページからAGWPE.zipとAGWMonitor.zipをダウンロードしてインストールする。(インストール方法はAWGPEでぐぐるとたくさん見つかる。)
AWGPEのインストール方法を解説したページのほとんどは、無線機の音声出力をサウンドカードに入力することを前提に説明しているが、AGWPEのサウンドカードの設定でサウンドミキサーを選択するとSDRソフトの音声出力をデコードできる。
 使っているパソコンにはサウンドミキサーがなかったので、仮想サウンドミキサーを使った。


2012年7月 7日 (土)

OpenOCD ST-Link

買ってあったSTM32 Value line discoveryをOpenOCDで使ってみる。
Stm32vldiscovery

 STM32VLDiscoveryにはST-Link(左側)とターゲットCPU(右側)としてSTM32F100RBT6B(ARM Cortex-M3)が搭載されている。 まっとうな使い方はネットにたくさん解説がある。 例えばエレキジャック

ST-LinkはSTmicroのSTM8、STM32プロセッサ用のIn-Circuit-Debuger・プログラマでSTM32(ARM)ではSWD/JTAGが使用される。
SWD(Serial Wire Debugg)はクロックとデータ(双方向)の2本の信号を利用して、ARMのJTAGデバッグ機能とテスト機能とシステム メモリへのリアルタイム アクセス機能を実行するインタフェースである。

 これまでARMのデバッグはJTAGkeyそっくりさん(FT2232)+OpenOCDでやっていたのだが、OpenOCDがST-Linkに対応したらしく、このボードだけでOpenOCDで遊べそうだ。

OpenOCDを作る
 ねむいさんのぶぐを参考にST-Link対応OpenOCDを作る。
ねむいさん、Simonguianさんありがとうございます。偉大な先達に感謝。

STM32VLDiscoveryのドライバを入れ替える
 STM32VLDiscoveryはマスストレージとして認識されているので、OpenOCDから操作できるようにドライバをlibusbに変える。
jujurouさんの電子工作マスターへの歩みを参考にする。偉大な先達に感謝。

OpenOCDを起動する
 ビルドしたOpenOCDのtcl/boardディレクトリにあるSTM32LVDiscovery用のコンフィグを使ってopenocd.exeを実行する。
Stm32vldiscovery1
openocdが起動したら、Telnetでlocalhost:4444に接続すると使える。

 内蔵フラッシュ(0x0800 0000)を読んだところ。
Stm32vldiscovery_mdw

まずは、内蔵RAMで動くテストプログラムを作ってみよう。


STM32vlDiscoveryのRAMで動くプログラムをEcripseで作ってOpenOCD-STLinkでデバッグするときのメモ (OpenOCD ST-Link + STM32LVDiscovery)

2012年7月 5日 (木)

中野四季の都市(セントラルパーク イースト)(2)

中野四季の都市セントラルパーク イースト1Fに薬局が入っている。
Photo

この薬局は良く知らなかったのだが調剤薬局、ドラッグストアの全国チェーンらしい。
これを連想するのはσ^^)だけ?

2012年7月 3日 (火)

日本人にしかできない「気づかい」の習慣

日本人にしかできない「気づかい」の習慣 上田比呂志 インプレス
Photo_3

 友人に著者の講演に誘われたので、予習がてら読んだ。

 「気づかい」がテーマだが内容はもっと根源的な内容且つどこかで聞いたことのあるような内容である。昔の日本人なら誰でも知っていた(心がけていた)ことがないがしろにされている現代だから売れるのかもしれない。

 疑問は、米ディズニーでは日本人的「気づかい」をどうやって客観的に評価していたかである。欧米の企業において評価は客観的に行われていると思われるのだが、「気づかい」を客観的に評価する手法が思いつかない。

 閑話休題

 最近、欧米の成果主義は行き詰った(崩壊した)。今こそ日本の文化を見直し世界に発信すべきだ。の如き主張を見かけることが多くなったような気がする。

 日本人の「気づかい」は、日本にあり、日本人により受け継がれている日本の文化である。日本の文化を取り入れたいという人たちを拒むわけではないが、積極的に他所に持ち出すようなものではないと思う。
 我々が欧米の成果主義、市場主義を取り入れようとしても拭いきれない違和感を抱くのと同じ結果になるだろう。

 外国人に日本人のような「気づかい」ができないことを承知して外国人にそれを求めないことは必要であるが、日本人が持つ「気づかい」を意識的に商売に繋げようとすることには違和感があるなあ。
 日本人としては、外国特に欧米とは異なる「気ずかい」文化に誇りを持つくらいがちょうどよいのではないかと思う。

2012年7月 2日 (月)

日本人はなぜ議論が下手なのか?

6/18「マイケルサンデル特別講義」で日本人は議論ができない民族だと書いた。
日本人の議論下手について考えていたら、ふと思い出した。

↓は16年前にNiftyServeのとある会議室に投稿されたもので、この投稿に対して「ずっと保存してとっておきます。」とResしたことを思い出す。(本当に取ってある)
----------------- 以下引用 ----------------------------------------------

  とむとむ         日本人は議論が下手なのか?
(14)   96/11/06 00:01

以前、私は日本人はディスカッションが下手な国民であるとこの会議室で述べたことがあります。しかし、その理由については言及しませんでした。
今回はその点について少し触れてみたいと思います。

我々は、

◎自分の主張=プライドになってしまう
自分が正しいと一度思い込んだものを自分のプライドにかけて守ろうとしてしまう。真のプライドは正しい事を正しいと認識できることにあるのに。
また、相手を認めることを美点と思えなくなってしまう。

◎真の論点が何だかわからなくなってしまう
当初議論していた動機が、議論をしているうちに自分でもわからなくなり、反論するためだけの反論になりがちである。本当は自分が何を目的としていたか見失ってしまいやすい。

◎感情的になり自らの意見の矛盾に無関心になる
自分が主張すべき点と一般的に正論である点を混同し、双方を交えて議論するうちに意見が矛盾してしまう。さらにそれを自らは冷静に分析できななり、相手の矛盾のみに固執してしまいやすい。

◎相手の意見を聞けなくなる
自分の言いたい事がなによりも重要に感じてしまい、相手の意見には耳を貸せなくなる。相手の発言を遮ってでも自分の発言を通したくなる。
相手と対等であるという感覚を自分では維持できなくなる。=相手を尊重する意識を失いやすい。

◎相手の意見が全て自分に対する批判に思えてくる
相手が自分の意見に対して譲歩しているのに、それに気づく精神的余裕を失ってしまう。または相手の譲歩を素直に受け入れられなくなる。
(何か裏があるのではないかと疑ってしまう。)

◎他人に同意を求めたくなる
他人がどう思おうと正しいことは正しいのに、他人にもそれを同意してもらわないと不安になりやすい。強いては自分の意見を周りの他人に強要してしまう。また、他人からの意見で自分のものに似た意見に対し、過剰に反応し、それに乗じようとしてしまう。自分の意見を自分で立証、維持できない。
(それだけの行動力がない。)


これはある特定の人達を指したものではけっしてありません。むしろ私自身の心の中の客観を表現したものとも言えます。私自身がこのような日本人であると言っても過言ではありません。しかし、私自身この会議室を通して、ディスカッションの難しさと、パソコン通信(フォーラム)への失望を味わった事をここに記したいと思います。人々の心に善意というものがあらんことを祈ります。

                           ◆QYZ02666 くらぶ もばNo.11 とむとむ(^-^)/ ◆
                                      --- with TOSHIBA SS-R575
                                               CASIO RX-10
                                               NEC MC-K1     etc...

----------------- 引用終り------------------------------------------------

あえて署名は残しました。NiftyServeがあったころ著者には転載の了解は取ったのですが。
何か問題があったら連絡ください >> とむとむ さん

2012年7月 1日 (日)

MC68901(MFP) & MC68HC000

MC68901(Multi-Function Peripheral)を見つけた。
あるところにはあるもんだ。

MC68901(Multi-Function Peripheral)
Mc68901p

タイマ ×4、SIO、UART×1、8bitGPIO、割り込みコントローラが入っている。

MC68HC000P8も見つけた。
ラジオデパート2Fのサンエレクトロや光南電気には置いてあるのだが千円超なので眺めるだけにしていた。
Mc68hc000p8

この二つを並べると
Mc68hc000mc68901

MC68901もDIP48だから十分大きいのだけれど、さすがにDIP64は大きい。

よく使ってるユニバーサル基板ICB-293Uには載りそうにないので、大きめの基板IC-701-74(タカス)を千石の現品処分で買ってきた。
ところが
Mc68hc000p8_ic701
この基板にも載らない。
もう少し大きい基板が必要だ。

« 2012年6月 | トップページ | 2012年8月 »