過 去 ロ グ
USB & MCU
[945]PIC16F877 + USB のお勉強は凍結 - 投稿者:ryosuke
2004年11月28日(日) 12時6分
PIC16F877 + USB
のお勉強をしかけていましたが・・・、
これについては、やる必然性が無くなったので凍結します
m(_ _)m
[590]PIC16F877 で USB の勉強 - 投稿者:ryosuke 2004年8月18日(水)
23時24分
すみません(ってこともないのでしょうけど)PIC
の話題が続いています。
USBインターフェースの計測ロガーユニット
http://www.picfun.com/usbframe.html
を参考にして PIC16F876 (28pin) ではなく PIC16F877 (40pin)
で実験を
しています。
すでに書籍に付属の CD-ROM にある *.HEX
ファイルをパラレル式の
PIC プログラマで 16F877
に書き込み、それをターゲットボードに挿して
動かすところまでは動作確認ができています。
次に
> PIC16F876 のプログラムが MPLAB ICD
を使うようにはできていないので
> 少し変更してなんとか MPLAB ICD
を使いながら開発〜デバッグをやって
> いこうと思います。
と考えて下記の変更を行いました。
ハード的な変更
●MCLR/VPP 端子を +13V 対応にする。具体的には 47kΩで
+5V に
プルアップするだけにした。
●LCD の4ビットデータ線を RB4-7 から RD4-7
に移動して、RB6,7 を
MPLAB-ICD のために開放した。RB3
はもともと不使用なのでそのまま。
●ターゲットボードに6極の ICSP
用コネクタを新設した。
●MPLAB-ICD モジュールに6芯の ICSP
用ケーブルをハンダ付けした。
●MPLAB-ICD
モジュールのファームウェアを更新した。(2.04.00
から
2.31.00
に変更した。)これで正常に動作するようになった。
ソフト的な変更
●プログラムの0番地に NOP を置いた。
●MPLAB の Project の設定はもともと 16F877
にしてあったのでそのまま。
●ソースファイル usblog1.asm の 18, 19 行目 876 を
877 に変更。
●同じく 82 行目に MOVLF 0x0F, TRISD ;RD4-7 = OUT
を追加。
●ソースファイル lcd_lib6.asm の 13, 14
行目をそれぞれ PORTD と
TRISD に変更。なお 11 行目は PORTB
のままで良い。
以上で MPLAB-ICD をターゲットボードに直結(ICSP)
して開発〜書き込み
〜デバッグできるようになりました。
しかし! もっと早く気付けば良かった・・・
プログラムサイズが約2Kワードもあります。ということは、1Kワードの
制限がある「PICC Lite Compiler」無料版が使えないじゃないですか!
せっかく 16F84 だけではなく 16F877
も使えると思って喜んだのに。
あ〜、仕方がないのでアセンブラで引き続きお勉強します。
アセンブラのプログラムを勉強するというより、USBデバイスの使い方を
勉強するので、まぁいいか、と思っています。
私にとって大変なのはむしろパソコン側のソフトです・・・。
[583]Re: USBを使えるようになりたくて -
投稿者:ryosuke 2004年8月16日(月) 20時27分
お盆休みが終わりました。
>
次はパソコン側のプログラムをなんとかしなくてはならないので、しばし
> 中断します。
後閑さんの本で紹介されているパソコン側のプログラムは
Visual Basic 6 で
書かれていますが、私が個人で持っているのは
Visual Basic 2.0 なので
しばらく中断していました。
今日の昼休みから早速、会社のパソコンに入っているVB6で実験を再開して
います。本の通りに付録CDのソースのままで動かそうとしたら認識して
くれなかったのですが、VBのソースを追いかけてみてプロダクトIDを
0x40 から 0x42
に変更したらちゃんと動いてくれたので一安心です。
PIC16F876 のプログラムが MPLAB ICD
を使うようにはできていないので
少し変更してなんとか MPLAB ICD
を使いながら開発〜デバッグをやって
いこうと思います。
[530]Re: USBを使えるようになりたくて -
投稿者:ryosuke 2004年8月7日(土) 14時46分
>
「デバイス」はキーボードやマウス側、「コントローラ」はパソコン側
> のことですよね。
あれあれ、すみません。パソコン側は「ホスト」でした。
だからホストコントローラ、デバイスコントローラという呼び方は問題
ありませんでした。
まだ全然身に付いていません。
次はパソコン側のプログラムをなんとかしなくてはならないので、しばし
中断します。
[529]Re: USBを使えるようになりたくて -
投稿者:大西 2004年8月7日(土) 14時35分
川野さん、こんにちは。
>
USBを使えるようになりたくて、何日か前から勉強し始めました。
下のフラッシュROMライタもUSBかなと思ってます。UVEPROMならシリアルでしたが。
(オマエにそんな容量は不要というつっこみは無しね。)
http://homepage2.nifty.com/~maid/usbwriter.html
ここでもUSBです。ただし、沖製なんて手に入らないから
USBN9603 か4になるのでしょうね。無謀な野望です。
●リンクURL : http://www.page.sannet.ne.jp/je3nqy/
[527]Re: USBを使えるようになりたくて -
投稿者:ryosuke 2004年8月7日(土) 11時54分
ああ、しまった。「USBデバイスコントローラ」という表記は少し
紛らわしかったです。
「デバイス」はキーボードやマウス側、「コントローラ」はパソコン側
のことですよね。
私が取り組もうとしているのは「デバイス」の方です。
[526]Re: USBを使えるようになりたくて -
投稿者:ryosuke 2004年8月7日(土) 9時29分
そうそう、HC908JB8 は USB1.1 対応です。
決して新しい製品ではなくて、米国ではかなり流通していると想像
しています。
HC908JB16 という製品がそれより新しくて USB2.0
対応です。
入手性の面と私の求めているレベルから考えて
HC908JB8 を使って
みたいと考えています。
[525]Re: USBを使えるようになりたくて -
投稿者:ryosuke 2004年8月7日(土) 8時24分
> そのうち 68HC908JB8 の 20ピンDIP版を使ってみたいなぁ。
> (USBデバイスコントローラ内蔵)
私が使ってみたいと思っている HC908JB8
の日本語紹介がこちらに
ありました。
http://www.mot.co.jp/SPS/html/lit/pdf/68HC908JB8PBJ.pdf
いいなぁ、うん! 使えるようになりたいなぁ!!
気になるお値段は、Digi-Key で1個から買えて \626
です。
USBデバイスコントローラ+マイコンだから安いですよね。
しかも DIP 20pin
がそそられます! ピン数やパッケージの
バリエーションもいくつか用意されています。
開発ツールがどうなのか、ちょっと心配。M68ICS08JB-ND
が絶対に
必要なのか?? \37,863
は少し高い。でもエミュレータと書いて
あるから安いのかも。これ使わなくても書き込みできるのがベスト
なんだけどなぁ。
[524]Re: USBを使えるようになりたくて -
投稿者:ryosuke 2004年8月7日(土) 4時15分
> 本と違うところは、PIC16F876(28pin) ではなく PIC16F877(40pin)
を
> 使ったことだけ。あとは丸写しです。USBデバイスコントローラは
> 有名な USBN9603 です。
他にも違いがありました。アナログ入力の回路を簡素化しています。
[523]USBを使えるようになりたくて -
投稿者:ryosuke 2004年8月7日(土) 4時11分
USBを使えるようになりたくて、何日か前から勉強し始めました。
こういうときは何も解らなくてもとにかく動かしてから考えると
近道になる・・・場合もありますよね。
資料が揃っているという理由で、後閑さんの著書「PIC応用ガイド
ブック」を参考にして、とにかく作ってみました。
作ったもの自体が動いていることと、パソコンに組み込んだUSB
デバイスドライバがブツを認識できていることを確認しました。
電子工作のページの表紙に置いてあります。
本と違うところは、PIC16F876(28pin) ではなく PIC16F877(40pin)
を
使ったことだけ。あとは丸写しです。USBデバイスコントローラは
有名な USBN9603 です。
慣れてきたら他のマイコンも使ってみたいですね。
そのうち 68HC908JB8 の 20ピンDIP版を使ってみたいなぁ。
(USBデバイスコントローラ内蔵)