低級言語で遊んでみたいと思っています。
そこで、PICマイコンをはじめる予定だったのですが、
電子工作の知識も手先の器用さも自身がない上、
電気系の資格も何も無いのでとても敷居が高く感じました。

PC上でPICマイコンをグラフィカルにシミュレートして、
アセンブラ等でプログラミングできるソフトがあれば紹介してください。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

GNUPICに一通り揃っています。



参考URL:http://www.gnupic.org/
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

参考URL・・英語ですね。苦手です(汗
そのサイトを解説している日本語のページを探してみます。

お礼日時:2005/04/12 18:41

半導体各社でスタータキットを出していますので、それを使うのが良いでしょう。


ルネサスのホームページ、見た?
    • good
    • 0
この回答へのお礼

ルネサス・・・知りませんでした。
情報ありがとうございます。

お礼日時:2005/04/27 08:08

半田付けしないPICをしても「遊べない」と思います。


それならば、古いDOSマシン(80486程度)でも手に
入れて86xのアセンブラをするというのはいかが
でしょう? DOSなら直接I/Oを触れますから、
例えばパラレルポートに値を書くことで、LEDを
光らせるなり、リレーをON/OFFしたりもできます。

「電気系の資格も何もない」って、そんなもの
必要ないですよ。電気工事するわけではないの
ですから。PCが壊れるかもしれませんが。でも
古いPCは数千円で手に入るのですから、それほど
惜しくはないでしょう。
    • good
    • 0

下記の参考URL(ITmedia)でPICの入門講座が始まるようです。

シミュレートソフトについても触れているので、目を通してみてはいかがでしょうか?

参考URL:http://www.itmedia.co.jp/pcupdate/articles/0504/ …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

URLを拝見させていただきます。

お礼日時:2005/04/12 05:51

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qマイコン制御

DCモータをマイコンで制御したいのですが、どのようなマイコンを使えばよいのですか。
モーターの回転数の制御が目的です。
マイコンについては全くの初心者です。
よろしくお願いします。

Aベストアンサー

まあ何でもいいですが、よくあるPICマイコンなんかでいいんではないでしょうか。
http://www.picfun.com/

ただし、普通のマイコンは、モーターを直接駆動することはできないので、外付けでトランジスタ(&ダイオード)、もしくは制御用のICなんかが必要です。
探せば、モーターを直接駆動できるマイコンもあるかもしれません。

QPICマイコンをアセンブラでAD変換をした時に、、

現在PICマイコンの16f88を用いてアセンブラでAD変換の勉強をしています。とりあえずいろいろなサイトやデータシートを見てAD変換した結果をPORTBに出力させるテスト用のプログラムを完成させたのですが、AD変換の結果を格納するADRESLのデータをうまく読み込むことができませんでした。その時のプログラムは(結果は左詰め,X_Lは自分で定義した変数)
BSF STATUS,RP0
MOVF ADRESL,W
MOVWF X_L ;ADRESLの結果をX_Lに保存
BCF STATUS,RP0
MOVF X_L,W
MOVWF PORTB
こんな感じです。わざわざADRESLの結果をX_Lに保存しなくても直接出力することもできるんですが気にしないで下さい。で、このプログラムだとPORTBにつないだ全てのLEDが点灯します。
ところがプログラムを以下の様に書き変えたら見事にADRESLレジスタの中身が出力できました。何が起きたのでしょうか?バンクの切り替えの前にWレジスタをX_Lレジスタに書き込むのと、バンクを切り替えてからWレジスタをX_Lレジスタに書き込むのとでは結果が同じになると思うのですが、、、。
BSF STATUS,RP0
MOVF ADRESL,W
BCF STATUS,RP0
MOVWF X_L
MOVF X_L,W
MOVWF PORTB

現在PICマイコンの16f88を用いてアセンブラでAD変換の勉強をしています。とりあえずいろいろなサイトやデータシートを見てAD変換した結果をPORTBに出力させるテスト用のプログラムを完成させたのですが、AD変換の結果を格納するADRESLのデータをうまく読み込むことができませんでした。その時のプログラムは(結果は左詰め,X_Lは自分で定義した変数)
BSF STATUS,RP0
MOVF ADRESL,W
MOVWF X_L ;ADRESLの結果をX_Lに保存
BCF STATUS,RP0
MOVF X_L,W
MOVWF PORTB
こんな感じです。わざわざADRESLの結果をX_Lに...続きを読む

Aベストアンサー

> 結果が同じになると思うのですが、、、。
書き込み先と読み込み元が別の場所を指していますので, 結果は同じとなりません.

※以下, RP1は0と仮定
上段のプログラムではRP0をセットしたままMOVしてますので,
Bank1のGPR(H'A0~H'FF)のどこかに保存されています.
RP0をクリアするとBank0のGPR(H'20~H'7F)がアクセス可能となります.

PIC16F88のRAM構成(Register File Map)については
データシートの2.2.1章(参考URLのp.15)にて図解されています.

X_LをH'70~H'7Fの範囲に確保すれば全バンクから参照可能です.

参考URL:http://ww1.microchip.com/downloads/en/DeviceDoc/30487c.pdf

Qマイコンによるモータ制御の電源と回路

マイコンとHブリッジ回路によるモータ制御の本を読みました。
その本はモータの動作電圧がマイコンの出力電圧で動作するものでマイコンからの出力で動かしていました。(マイコンの動作電圧5V、マイコンの出力電圧0~5V、モータの動作電圧3V)

そこで、
・マイコンの出力電圧ではモータが動作しない(モータ動作の動作電圧が7.2V~)
・7.2V~のバッテリー一本でマイコンとモータの電源としたい

場合、どのような回路を組めばいいのでしょうか?

Aベストアンサー

3端子レギュレータなどで7.2→5v変換してマイコン用電圧をつくります
マイコン出力の5vを使ってHブリッジドライバーを動作させるために
レベルシフトします

Hブリッジドライバーは7.2v動作のものを選択します

QPICマイコンのアセンブラについて

PICマイコンのアセンブラルーチンについて

PICマイコンのアセンブラについて教えていただきたく投稿しました。

http://orange.zero.jp/electronics/pic/pic.html
上記のサイトについてです。

『●「整数演算」』の
『◇8×8=16ビットの乗算』についてです。

つまり、下記リンクの演算ルーチンについて、大まかな流れだけでいいので解説していただけないでしょうか。
http://orange.zero.jp/electronics/pic/mul816.txt

よろしくお願い致します。

Aベストアンサー

1234×4567 の計算(ただし、10進数)

まず、筆算で、1234×4567 の計算をしてみてください。
乗数(4567)の下の方の桁から、ひとつずつ掛けて、しかも、その結果を、一桁ずつずらして書きますよね。
それは、実は、以下のような計算をしていることになります。

1)4567 最下位を見る → 7
2) 1234 と 7 を掛ける 1234×7 = 8638
3) この答えを保持しておく s ← 8638

4) 被乗数(1234)を、一桁左側にシフトする(つまり、10倍する)12340
5) 乗数(4567)を、一桁右にシフトする(つまり、10で割る) 456
6)新しくできた、乗数と(被乗数の最下位)を掛ける 12340×6 = 74040
7) この結果を s に足し込む s = s + 74040 = 82678
8) 4) にかえって繰り返す

以上は、10進数のお話です。
これを、2進数でやろうと思うと、
・そもそも、数字は 0 か 1 しかない。つまり、2) とか 6) は、実際にはかけ算をする必要はなく、「何も足さない」か、「そのまま(1をかけたもの)足す」かどちらかしかない。
・一桁のシフトは、文字通りシフトで実現できる。

ということになります。
2進数でも、筆算でかけ算をすることができますから、やってみると事情が飲み込めると思います。
おおざっぱには、こういう計算をやっています。

1234×4567 の計算(ただし、10進数)

まず、筆算で、1234×4567 の計算をしてみてください。
乗数(4567)の下の方の桁から、ひとつずつ掛けて、しかも、その結果を、一桁ずつずらして書きますよね。
それは、実は、以下のような計算をしていることになります。

1)4567 最下位を見る → 7
2) 1234 と 7 を掛ける 1234×7 = 8638
3) この答えを保持しておく s ← 8638

4) 被乗数(1234)を、一桁左側にシフトする(つまり、10倍する)12340
5) 乗数(4567)を、一桁右にシフトする(つまり、10で割る) 456
6)新し...続きを読む

Qマイコン制御

マイコン制御の仕事がしたく、今マイコンを勉強しています。そこでいろいろな疑問が出てきました。
1、求人によく8、16、32ビットマイコンなどとありますが、それはやはり処理量をさしているのでしょうか?私はPICとH8を勉強しているのですがPICは命令長でH8はバス幅でクラス分けをしていますよね!?ちなみに処理量だとしたらPICは8ビット、H8は32ビットと言うことになるのでしょうか?
2、組み込み関係の求人がすごく多いけれど、派遣や請負いばかりが目につくのですが。実際、組み込み関係のお仕事をしている方はどんな感じなのでしょうか。
3、私は求人によくあるカーナビや携帯のソフトなどではなく、もっとハードよりな感じのロボットやFAの制御などがしたいと思っています。地元で中小企業でとなるとPLCが多い気がするのですがマイコンでそのような仕事はやはりむりですかね・・・。有限会社とかだと結構あったりするのですが・・・、だれかOEMとかでもいいので中小で物作り実感してマイコン制御してる方いらっしゃいますか?
4、リアルタイムOSを使うのはロボット制御などではなくカーナビや携帯などのようなアプリケーションよりな感じなのでしょうか?
よろしくお願いします。

マイコン制御の仕事がしたく、今マイコンを勉強しています。そこでいろいろな疑問が出てきました。
1、求人によく8、16、32ビットマイコンなどとありますが、それはやはり処理量をさしているのでしょうか?私はPICとH8を勉強しているのですがPICは命令長でH8はバス幅でクラス分けをしていますよね!?ちなみに処理量だとしたらPICは8ビット、H8は32ビットと言うことになるのでしょうか?
2、組み込み関係の求人がすごく多いけれど、派遣や請負いばかりが目につくのですが。実際、組み込...続きを読む

Aベストアンサー

1.処理量
処理量は、単位時間当たりの命令実行数で決めるのではありませんか?
従って、バス幅やレジスタサイズ等はあまり関係無いと思いますが。
また、マイコンを選択する場合は、好みや慣れているといった場合が多いように見受けられます。
そのマイコンを使い慣れているわけですから、速いからと言った理由だけでは、新しいマイコンに移ることは余りありません。それで無ければ制御できない場合に重い腰をあげるようですね。(わたしも含めて)

2.仕事の請け方
私の場合は下請けがほとんどです。
知り合いの会社では、自社開発してネット販売しています。

3.分野
これに関しては、ほぼ#1さんと同意見です。
全く可能性が無いとは言いません。

4.リアルタイムOS
これを使う理由は、ライブラリが揃っている事や、OSを載せることでハードウェアの違いが吸収できる事等があげられます。
なので、おっしゃるとおりアプリよりになるでしょう。

私はマイコンで色々と仕事をしていますが、簡単な制御は、#1さんのおっしゃる通りシーケンサにはかないません。
マイコンを利用する主な理由は、マイコンでなければ制御できない場合や、サイズが小さくなる等のマイコンでなければ意味の無い分野だけです。
シーケンサやマイコンどちらでもできる仕事は、まずシーケンサになってしまい、私のところへはやってきませんね。

FAの試験装置を主に仕事にしていますが、数年前まではほとんどマイコン(H8)で組んでいましたが、最近ではPCで設計しています。しかもWindows。
昔に比べるとPCが非常に高速になり、リアルタイムOSで無くてもそこそこの性能が得られること、またAD変換やDA変換等の拡張ボードも充実しており、マイコンより高速で処理できること、デバッグ環境がビジュアルで整っている事・・・等、マイコンのメリットも薄れてきています。
マイコンだけで仕事するのは難しいと思います。
今の世の中、ネット接続はほぼ必須になってきていますし、印刷やデータ保存など有りますので、マイコンだけって言うのは・・・。
合わせてPCやシーケンサ等の勉強も行い、総合的に活躍できる知識を身に着けることをお勧めします。

1.処理量
処理量は、単位時間当たりの命令実行数で決めるのではありませんか?
従って、バス幅やレジスタサイズ等はあまり関係無いと思いますが。
また、マイコンを選択する場合は、好みや慣れているといった場合が多いように見受けられます。
そのマイコンを使い慣れているわけですから、速いからと言った理由だけでは、新しいマイコンに移ることは余りありません。それで無ければ制御できない場合に重い腰をあげるようですね。(わたしも含めて)

2.仕事の請け方
私の場合は下請けがほとんどです。
...続きを読む

QPICマイコン(PIC16F73B)書込みについて

PIC16F73BにCコンパイラで作ったプログラムを書き込もうとしますがエラーが出て書き込みできません。理由と対処方法を教えてください。
 ちなみに
(1)プログラマーはMPLAB PM3
(2)使用マイコンはPIC16F73B
(3)書き込みを行ったときのエラーは
  PM3 is unable to read device - Current operation is aborted.
 が表示されます。
(4)Read及びVerifyを実施すると以前書き込みができていたため、
  Read successfully.
  Verify Succeeded.
 が表示されます。
なぜ、ReadやVerifyができてWritwができないか不明。
PIC16F73BのBは何か特殊で書き込み等できないのでしょうか?
以上、ご教授、よろしくお願いします。

Aベストアンサー

コードプロテクトがかかっているものと思われます。

プロテクトの外し方はマイコン、プログラマーのマニュアルを参照。

Bはパッケージの種別です。

Qマイコン制御とPCとシーケンサー

今とても迷っているのですが
http://oshiete.goo.ne.jp/qa/1068705.html
のNo2さんの答えで
「マイコンだけで仕事するのは難しいと思います。
今の世の中、ネット接続はほぼ必須になってきていますし、印刷やデータ保存など有りますので、マイコンだけって言うのは・・・。
合わせてPCやシーケンサ等の勉強も行い、総合的に活躍できる知識を身に着けることをお勧めします。」

私もそう思います。

シーケンサー
マイコン制御
PC制御(VBかVC++あたりか)
ネットワーク
電子回路

総合的に出来る人いますか?
どの制御の場合どれが適当かは理解できるのですが、やればやるほど追いかけ切れません。
Majiで覚える前に寿命が尽きてしまう5秒前です。

現在失業中なのですが、有効求人倍率0.35で中小企業でも求人票もここぞとばかりに
無茶な要求が入っています。

ちなみに私は工高卒である意味中途半端なんです。求人も大卒が多いです。
みなさんどこにフォーカスしてどのように生き残っていますか?
アドバイスがあればお願いします。

Aベストアンサー

>みなさんどこにフォーカスしてどのように生き残っていますか?
本質問はどんな業界にフォーカスしてますか?

工場の生産設備系(FA系、PA系)
 当然の事ながらPLCかNC装置がメイン
 10年以上昔はワンボードマイコンも生存できたが
 現在ではよほど特殊な装置以外では見かけない
 所謂生産管理システム、生産ラインモニタ用パソコンも最近は増えた
 昔は専用オフコンが主ではあったが

工場の非生産設備系
 空調、給排水設備、乗用エレベータ等
 PLCとマイコン半々かな?
 これにも総合管理用パソコンも最近は増えた

商業ビルの設備系
 すいませんよく判りません
 恐らく工場の非生産設備系と同じではないかとは思うPLCを使う事例は少ない

民生機器 
  当然の事ながら組み込み用マイコン100%
  PLCは存在しない


因みに私はFA屋なので当然の如くPLC

Q【PICマイコン】一般製品にPICシリーズが使われてるって本当ですか?

最近PICをはじめて大分アセンブラもなれてきて楽しめるようになってきました。
それで教えてGOOで色々見てるときにPICシリーズのマイコンは一般製品の中にも組み込まれているって書いてあったんですが本当ですか?
僕の中でPICやAVR等はそれなりにコアな趣味を持つ人たちのおもちゃ的な物だと思ってました。
もし本当に入ってるんだったら具体的にどんな製品にどのマイコン(例PIC16F877A等)が使われてるのか教えてください。凄く興味があります。

また、何処のサイトだったか忘れましたが「これからマイコンをはじめるならAVR!PICをやるメリットなし!」ぐらいの勢いで書いてあったんですがその通りなんでしょうか?

もひとつ、、PICの勉強をはじめるときにアセンブラかCかで迷ったんですがアセンブラではじめた方がCPUの構造をより理解しやすいとの事でアセンブラで進めてきたんですが、いまいちその実感がわきません。具体的にどういう所でCPUの構造を理解しやすいのでしょうか?
それっぽいなぁと思うのはクロックでタイミングを与え、そのタイミング毎に命令を実行しレジスタのBITで条件判断をしたり計算をしたりしてポートに出力する的な部分でしょうか?そもそもCPUの構造ってどういう事なんでしょうか?何て言うか例えて言うならエクセルは仕事で使うから詳しいけどWindowsの設定は全然解りませんみたいな感じです。

よろしくお願いしますm(_)m

最近PICをはじめて大分アセンブラもなれてきて楽しめるようになってきました。
それで教えてGOOで色々見てるときにPICシリーズのマイコンは一般製品の中にも組み込まれているって書いてあったんですが本当ですか?
僕の中でPICやAVR等はそれなりにコアな趣味を持つ人たちのおもちゃ的な物だと思ってました。
もし本当に入ってるんだったら具体的にどんな製品にどのマイコン(例PIC16F877A等)が使われてるのか教えてください。凄く興味があります。

また、何処のサイトだったか忘れましたが「これからマイコン...続きを読む

Aベストアンサー

こんにちは。
私はご質問に対するズバリな回答は持っていないのですが、ご参考までに。。。

◆PICが使われている製品について
どの製品に使われているかは知らないのですが、間違いなく様々な家電製品に入っていると思います。
近頃のハイテク家電(若干死語)を開けて見てみたら、おそらく必ず一つや二つは入っているのではないでしょうか。
私は、FA機器の開発を行っていますが、「少し複雑な動きをするIC」という感覚でしょっちゅう使います。
専用のICより安かったりもしますし。

◆マイコンはじめるならXXX!というご意見について
一昔前のMAC信者を見ているようです。(MACファンの方すみません)
質問者様もお気づきの通り、PICはちょっと「コア」な感じがありますので、敬遠する人も多いかもしれません。(実は私もできればあまり使いたくありません)
少ないメモリにマニアックな命令で立ち向かうと言いますか。
目的の動作を最高の効率で行わせる、というあたりに喜びを見出す事ができれば、もうそれがメリットというものではないでしょうか。
ですので、そのご意見に反論するなら、「AVR?ヌルいもん使ってんなぁ」みたいな感じでしょうかね。
でも、個人的に他者の否定からは何も産まれないと思います。

◆Cかアセンブラかについて
これは超個人的意見ですが、アセンブラで大正解だと思います。
上記で述べたような楽しみ方をするには、アセンブラでなければなりません。
Cを使うのであれば、PICでなくてもそれこそAVRでも何でもいいのです。
また、Cコンパイラから吐き出されたアセンブラソースを見たら、ちょっと実用には耐えないかなという感じです。(コンパイラ開発者には深く敬意を表しますが)

◆CPUの構造について
お考えでだいたい合っています。
それ以上でもそれ以下でもありません。
エクセルをそのまま使い続けていれば、いつの間にかWindowsにも詳しくなっていると思います。

こんにちは。
私はご質問に対するズバリな回答は持っていないのですが、ご参考までに。。。

◆PICが使われている製品について
どの製品に使われているかは知らないのですが、間違いなく様々な家電製品に入っていると思います。
近頃のハイテク家電(若干死語)を開けて見てみたら、おそらく必ず一つや二つは入っているのではないでしょうか。
私は、FA機器の開発を行っていますが、「少し複雑な動きをするIC」という感覚でしょっちゅう使います。
専用のICより安かったりもしますし。

◆マイコンはじめるな...続きを読む

Q地デジテレビのマイコン制御について

地デジテレビのマイコン制御について

朝の某番組では、全国のお天気情報データから、テレビに設定した郵便番号を元に
地元の天気予報を表示しています。

炊飯器などのマイコンは、決まったプログラムなのでチップに埋め込まれていますが、
上記のような表示を実現するには、

・1セグメントからプログラムをダウンロード
・1セグメントからデータをダウンロード
・該当データを抽出&編集
・放送画面に上書き表示

など、複雑なプログラムを実行していると思われます。

そこで、質問ですが

1.OSや言語などの仕組みをご存知でしたら教えてください。

2.今後どのようなサービスが考えられるでしょうか。

3.地デジテレビ用のマイコンの規格は日本独自のものでしょうか。

4.地デジテレビ用のマイコンの値段はどのくらいでしょうか。

よろしくお願いいたします。

Aベストアンサー

地デジのデータ放送は、BMLなる規格・仕組みを使っているそうです。詳細は以下のリンクから。

http://ja.wikipedia.org/wiki/Broadcast_Markup_Language

> 1.OSや言語などの仕組みをご存知でしたら教えてください。
言語やOSですが、これは決まった物はないのでは?メーカーにとって、最もコストがかからない物、国産のトロンかlinuxで、その上で動かせる開発言語になるでしょう。あるいは特定OSを持たず、そのプログラムだけが動いているという可能性もあり得ます。

> 2.今後どのようなサービスが考えられるでしょうか。
放送波に間借りしている以上は、あまり大容量のものは送れませんので、派手な物を作るのは無理でしょう。これで広告を出す方法もありだとは思いますが、誰がそれを積極的に見たがるかという問題はありそうです。うまいサービスを見つけられれば、それは立派に商売の種になりますね。

> 3.地デジテレビ用のマイコンの規格は日本独自のものでしょうか。
それはメーカーが公開していないので何とも。組み込み系の定番、ARMかも知れないし(この流れをくむ携帯電話CPUも多い)、国産のSH系かも知れないし、蓋を開けてみなければ解らないでしょう。ただ、仮に蓋を開けても解らない気がします。(理由は下記)

> 4.地デジテレビ用のマイコンの値段はどのくらいでしょうか。
組み込み用のCPUはそれ単体としては存在せず、CPUコアを他の回路とまとめて集積されてしまっている可能性も大いにあります(蓋を開けても解らないのはこのため)。だとすると、単体の値段は計算できません。もともと組み込み用CPUは、PC用よりもはるかに安価(数円~数100円のレベル)な事は多いですが。

地デジのデータ放送は、BMLなる規格・仕組みを使っているそうです。詳細は以下のリンクから。

http://ja.wikipedia.org/wiki/Broadcast_Markup_Language

> 1.OSや言語などの仕組みをご存知でしたら教えてください。
言語やOSですが、これは決まった物はないのでは?メーカーにとって、最もコストがかからない物、国産のトロンかlinuxで、その上で動かせる開発言語になるでしょう。あるいは特定OSを持たず、そのプログラムだけが動いているという可能性もあり得ます。

> 2.今後どのようなサービスが考えら...続きを読む

QPICアセンブラで悩んでます・・・。

PIC16F84を使ってアセンブラでプログラムしているのですが、どうしてもアセンブルが成功しません。

エラーを中心にプログラムを削りまくったところ、ADDWF命令とRETLW命令でコケているようです。(テーブル処理)
以下のプログラムで、ADDWFの位置で「ラベル(ADDWF)の位置が変です」というエラーが出てしまいます・・・。

 LIST P=PIC16F84;
 INCLUDE "P16f84.inc"

 ORG 0
START
 ADDWF PC,W
 END

どういうことなんでしょうか?(T-T
(タブはスペースに置換済みです)

Aベストアンサー

PICは使ったことがないですが、これまでのアセンブリ言語の経験では、
たいていラベル名の後に : (コロン)が必要だったと思います。
START:
のように付加する必要があるというのでもありませんか?


人気Q&Aランキング

おすすめ情報