COUNTER



新BLOG
 
新BBS
MN-BBS
旧BBS
CALENDAR
S M T W T F S
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31   
<<  2015 - 12  >>
 
LOGIN
現在モード: ゲストモード
USER ID:
PASS:
CATEGORIES
ARCHIVES
PROFILE
OTHERS
    処理時間 0.322339秒
POWERED BY
POWERED BY
ぶろぐん
DESIGN BY
ブログンサポート
          
<<前の10件 | 1 | 2 | 次の10件>>

---自作MPGワイヤレス化 (16)---
 道のりは、長いです。

 自作手パの無線化を進めてきましたが、一つ、疑問だったこ

 とが解決できそうですので、仕様?を変更してみたいと思い

 ます。

 今までの無線手パでは、A相B相の信号は、直接送っていま

 せんでした。A相とB相の信号から、CWの信号とCCWの信号

 に変換して、CWの信号とCCWの信号を送りました。

 受信側で、CWとCCWの信号に応じて、パルスを生成してい

 ました。

 このようにしてたのは、A相・B相の立ち上がりの検出はでき

 たのですが、立ち下がりの検出方法が分からなかったから

 です。

 NANDゲート等を使ってNOT・A相を作ればいいというアドバイ

 スをいただきました。下記のような回路で、試作してみようと

 思います。

 

 
 CWやCCWのの判定をするのに、立ち上がりでの外部

 割り込みを使いましたが、NOT・A相、NOT・B相を作ることで

 A相B相の立ち下がりを立ち上がりとして検出できそうですの

 で、状態変化割り込みでNOT・A相、NOT・B相の検出を追加す

 るだけですから、それほど大きな変更はしなくてすみ

 そうです。Webはくしゅ

| mabo52 | 13:59 | comments (6) | trackback (0) | DIY:: -MPGワイヤレス |
---柚とり---
 今日は、友人の依頼で、友人の細君の実家の柚を取りに

 行ってきました。

 柚取りといっても、柚の木の大幅剪定もあったので、ハシゴ

 を使った高所での作業です。

 かなり高いハシゴだったので、危険をなくすのに、ヘルメット

 装着、安全ベルト装着の完全装備で作業しました。

 

 皮の手袋をしてましたが、いたいのなんの。柚のとげは、

 2~3cm程度あるでしょうか、革の手袋や、長靴を突き破っ

 てきます。

 ちょっと肌寒い陽気でしたが、半日で汗をかきました。

 成果は、ビールのケース5ケースでした。Webはくしゅ

| mabo52 | 00:25 | comments (2) | trackback (0) | あれこれ |
---PICの罠(MCLR偏)---
 以前アドバイスいただいたことを試してみようと、下記のような

 実験回路を組みました。

 

 この回路で、

      while(1){
         PORTA=~PORTA
         WaitTime(20000);
      }

 初期設定はありますが、このプログラムを走らせました。

 すると、最初は、思った動作をしますが、

 

 途中で、止まってしまいます。プログラム的には、間違いは

 ありません。

 PICの足に触ると、動き出したり、止まったり、動作が安定し

 ません。

 

 通常は、○ドウインの基板を使ってテストしてますが、

 この基板で動いて、ブレッドボードで実行すると、回路は、

 間違ってないのに動かないという事象に遭遇しました。



 違いを考えると、○ドウインの回路は、リセットの回路が組まれ

 ていますが、ブレッドボードでは、組まれていません。

 NETで検索するとありました。MCLRと呼ばれるリセットに使わ

 れる端子を有効にしておくと、リセットの回路がない状態で

 は、不安定になるとありました。

 
 そこで、前述のプログラムのconfigの設定を、

     MCLREN→MCLRDIS

 にして、再度コンパイル、それで、動かしてみました。

 

  あっけなく動きました。


  アドバイスいただいた通りの動作でした。

  LEDの極性を反対にして、ポートにつなぐのが味噌です。

  プログラムでは、時間をおいて、HIGHとLOWを繰り返して

  るだけです。

  こうすることで、PICがHIGHになると吸い出し?でLEDが

  点灯し、LOWになると吸い込みでLEDがつきます。

  私には、目から鱗でした。

  PICのポートが少ない時は、応用ができ

  そうです。Webはくしゅ

| mabo52 | 21:12 | comments (0) | trackback (0) | DIY::  -pic |
---自作MPGワイヤレス化 (15)---
 自作手パ(MPG)をワイヤレス化するのにアダプターを作製

 し、後は、ケースに組む状態になってます。

 ただ、念のデータの取りこぼしを調べたら、パルスジェネレータ

 を早く回すと、約半分の取りこぼしがあったので、受信側の

 プログラムにリングバッファーをいれました。

 リングバッファーをいれることで、ほぼデーターの取りこぼし

 がなくなりました。

 
 
 多少、疑問が残ったので、送受信のデーターの取りこぼし

 を調べるのに、ローコストLCDシリアル通信モニター

 作製しました。

 これだけでは、ただデーターの表示をするだけなので、

 カウントしたデータを計測してターミナルに表示できるように

 基板とプログラムを作成しました。

 基板といっても、PICにバスコンとICSPの端子をつけ
 
 ただけのものです。

 

 比較的短時間で、ほぼ動くようになりましたが、二つほど

 ドツボにはまって、二日ほどもがくことになりました。

 
 一つは、リングバッファーの操作でした。「s」のキャラクター

 が入力された一つ前のデーターをカウントのキーにするのに、

 リングバッファーの読み取りのポインターを「s」の一つ前に

 もどせばいい、と思いこんでいました。これが、ドツボの始まり

 でした。

 いくら、やっても、思ったキーになりません。

 読み込んだデータを、デバッグ用に表示してみて、やっと

 分かりました。

 データを取り込んだ後、ポインターを次の読み込みにそ

 そなえて、一つ進めていたのです。

 本来なら、ポインターを二つもどさないとだめなわけでした。

 「-1」としていたところを「-2」にしてやっと解決です。


  もう一つは、久しぶりに使ったprintf( )のフォーマットの間

  違いでした。

 「int」の「%4d」としなければならないところを、「char」の

 「%c」としていました。当たり前に、表示されないので、

 あれこれいじって、やっとprintf( )のフォーマットにたどり

 つきました。

 昔、PC用に、Cであれこれやっていたころは、printf( )が

 大嫌いで、直接ビデオラムを操作して表示する関数等を作って

 使ってました。

 今回は、ターミナルへの表示位置を決めるのに、printf( )を

 つかって、エスケープシーケンスの使いまくりでした。

 

 とりあえずのプログラムです。

 main.c

 例によって、ゴミが沢山のこっています。表示をもうちょっと洗練

 させたいなと思ってますが、計測中の表示をやめて、計測終了

 後に表示させた方が、いいのかなと、思案中です。Webはくしゅ

| mabo52 | 11:11 | comments (4) | trackback (0) | DIY:: -MPGワイヤレス |

こんな物欲しいな
CLOCK
NEW ENTRIES
COMMENTS
    ---SPINDLEのPWM制御 (その2) (7)
  • TR >06.18
    ---番外編---
  • TR >06.02
    ---SPINDLEのPWM制御 (その2) (5)
  • mabo >05.30
保留中コメント:10件
LINKS
    相互リンクさせていただいてます。
  • The Rider
Search Box
名言集
メール
   
連絡は下記から
名前:

メールアドレス:

件名:

メッセージ(必須):


TOP PAGE