- 締切済み
PIC 初級プログラミング
waewaの回答
- waewa
- ベストアンサー率25% (1/4)
差し支えなければ100h前後のプログラムを教えてもらえませんか? MOVF xxx,W ADDWF PCL,F RETLW D'10' RETLW D'20' RETLW D'30' RETLW D'40' RETLW D'50' RETLW D'60' このようなプログラムが100hをまたいでいませんか?
関連するQ&A
- PICマイコンPIC12F509について
これからPICを勉強しようとしているPIC未経験者です。 とりあえず使用するPICはPIC12F509を考えています。ネットの情報量からすると本当はPIC12F683の方が良いのかも知れませんが価格面からPIC12F509を検討しています。 PICはこれから購入しますが一番最初に触るPICマイコンとしてPIC12F509を選択しても大丈夫でしょうか? 一応言語はアセンブラを勉強しようと考えています。また、最初の目標として入力1に5Vがかかった時に出力1から何ミリ秒か遅れて5Vが出力され、入力1の加わる5Vが不定期に素早くON-OFFを繰り返えしてもPICの電源をOFFするまでずっと繰り返し動作する程度の物を組みたいと思っています。 現在の開発環境はPCにMPLAB X IDE v3.26等のソフトをインストール、PICkit3を入手程度です。 先日、MPLAB IPE v3.26を使用しHEXファイルをPIC18F2550に書込みを初めてしてみました。これが初めてのPICとのふれあいです。 以上、PIC知識人の皆さまご教示を宜しくお願い申し上げます。
- ベストアンサー
- 電気・電子工学
- PICのプログラミングについてです
PICのプログラムについて質問です。 PIC初心者なのですが下のアドレスの永久回転こまを作ろうと取り組んでいます。 http://homepage3.nifty.com/mitt/pic/pic6_10.html 「磁気センサからの入力でコマの位置と回転速度」と書いてあるのですが PICにはどのような入力が入って位置や速度を判別するのでしょうか? 入力はアナログ入力でしょうか? またこのサイトではPIC16F648Aで作成したらしいのですが 今手元に16F876(Aはついてません)しかありませんでした。 ためしにMPLABでコンパイルしてみたら(16F876と設定して) undefined identifier "CMCON" とでてきました。スペルミスでもないですし、このPICには コンパレータを制御する機能はないのでしょうか? ちなみにエラーの文章はPICの初期設定の部分で コンパレータ未使用にするため CMCON = 0x07; と入力した部分です。(プログラムの全容はサイトに記載されています) この部分をごっそり消すと別のエラーが出ます。 わかる方どうか力を貸してください。 ご回答よろしくお願いします。
- ベストアンサー
- C・C++・C#
- PICの逆アセンブル?について
お世話になります PIC初心者です 誤ってPICのプログラムをパソコンから消してしまいました 幸いプログラムを書き込んだPICはあります PICのプログラムを読み込んで エディタで修正したいのですが方法がわかりません 書き込みソフトでHEXファイルまではできるのです ここからアセンブラ言語のASMファイル?にする方法を教えてください 環境は MPLABがVer.4 書き込みは秋月のプログラマVer.4 です よろしくお願いいたします
- ベストアンサー
- その他(プログラミング・開発)
- PIC 簡単なプログラミングで行き詰まりました
PIC初心者です。よろしくお願いします。 PIC16F84Aを使って 「ポートA 0bIt 」 に入力があったとき(1になったとき) ラベルの「OPEN」に飛びポートBのLEDが一秒点灯。 「ポートA 1bit 」に入力があったとき ラベルの「CLOSE」に飛びポートBのLEDが一秒点灯。 これだけのプログラムなのですが MPLAB IDE v8.63で Debug all すると ;の記述のところで表記のエラーが出ます。 プログラムはこちらです。 list P=pic16f84a include "p16f84a.inc" __CONFIG _HS_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF CNT1 EQU 0CH CNT2 EQU 0DH CNT3 EQU 0EH ORG 0 GOTO MAIN MAIN BSF STATUS,RP0 MOVWF TRISA CLRF TRISB BCF STATUS,RP0 CLRF PORTB CLRW LOOP BTFSC PORTA,0 GOTO OPEN BTFSC PORTA,1 GOTO CLOSE ;ここで「Symbol not previously defined (CLOSE)」 のエラー GOTO LOOP OPEN MOVLW 010H MOVWF PORTB CALL TIMER3 ;ここでSymbol not previously defined (TIMER3)エラー CLRF PORTB END CLOSE MOVLW 020H MOVWF PORTB CALL TIMER3 CLRF PORTB END TIMER1 MOVLW D'62' MOVWF CNT1 LOOP1 NOP DECFSZ CNT1,1 LOOP1 RETURN TIMER2 MOVLW D'100' MOVWF CNT2 LOOP2 NOP CALL TIMER1 DECFSZ CNT2,1 goto LOOP2 RETURN TIMER3 MOVLW D'100' MOVWF CNT3 LOOP3 NOP CALL TIMER2 DECFSZ CNT3,1 goto LOOP3 RETURN END 何日も堂々巡りをしてまして埒があかないので質問させていただきました。 どこが間違えているのでしょうか???? よろしくお願いいたします。
- ベストアンサー
- その他(インターネット・Webサービス)
- PIC12F629の発振
PIC12F629を外部に某社のセラロックを使って XTモードで4MHzで発振しています。 (今回は内部発振は精度上使えません。) しかしCLKOUTの出力スィングは01.7V しかありません。 ただしプログラムは正常に動作しています。 同様のことをPIC16F84Aでやると CLKOUTの出力スィングは04Vあります。 CLKOUTの出力スィングが小さいことは 問題ないのでしょうか。 ただPIC12F629をHSモードにするとスィングは 05VありますがCLKOUTの波形の 歪は大きくなります。 プログラムは正常に動作しているといっても試作の 3セットだけなので量産したときのことを かんがえるとやや不安です。 どう考えたらよいかアドバイスください。
- ベストアンサー
- 電子部品・基板部品
- PICで静電容量方式タッチセンサの使い方
PIC初心者ですm(_ _)m MPLAB IDE v8.80で、C言語でプログラムして、 PICkit3を使ってPIC12F615に書き込んでいます。 PIC12F1822を使って、タッチセンサを作成してみたいのですが、 いろいろ調べたのですが、レジスタの設定等、検出手順など全く分かりません(T_T) よろしくお願いしますm(_ _)m
- 締切済み
- その他(プログラミング・開発)
- PIC16F84AにAE-PICPGM USB1で書き込みをしたのです
PIC16F84AにAE-PICPGM USB1で書き込みをしたのですが・・・ 先日、秋月電子通商でPIC書き込みボード「AE-PICPGM USB1」を購入し、PIC16F84Aに書き込みをしたのですが、ブレッドボード上で動作しません。 開発環境は以下のとおりです。 開発ソフト:MPLAB IDE ver.8.56 書き込みボード:AE-PICPGM USB1(秋月) プログラマ:PICkit2 programmer コンパイラ:HI-TECH C compiler ver.9.71a OS:windows 7 Home premium (64bit) MPLAB上ではコンパイルでき、hexファイルも生成されます。 プログラマ上でhexをインポートすると「No configuration ・・・」と表示されますが、MPLAB側で「Export file」で出力してやると、問題なくインポートできます。 書き込み、ベリファイチェックともに特にエラーメッセージも出ません。 コンパイラを見てもわかるように、プログラムはC言語で記述しています。 内容はLEDを点灯させる(出力ポート:1)だけの単純なものです。 この1週間格闘しましたが、動作する気配もなくモンモンとする毎日です。 どなたかこの現象について知見のある方、ご教示ください。
- ベストアンサー
- その他([技術者向] コンピューター)
- PICのデバックに関して
PICのデバックモードで悩んでいます。 デバック環境 ●MPLAB Ver.8.53 ●ICD2 及び PicKit3 で評価 ●CPU PIC18F452、PIC18F45k20、PIC16F688、PIC16F690 のそれぞれのCPUで評価 回路仕様 ●1個のLEDをCPUのポートに接続し、ON/OFFさせるテスト基板を用いて、 それそれのCPUで、テストしました(CPUだけ変えてその他の回路は変更無し)。 ●PIC16F、PIC18Fとも内部クロックを使用しています。 ●CPUの電源は、ICD2 または PicKit3から供給しています。 PIC18Fシリーズでは、C言語やアセンブラで書いたプログラムは、MPLABを用いて、実機デバッグテストが可能なのですが、 同じ内容のプログラム(CONFIG記述のみ変更)で、PIC16F688 またはPIC16F690 を実機デバッグテストすると、 (1)ICD2の場合:ICD0083: Debug: Unable to enter debug mode. Please double click this message for more information. (2)PicKit3の場合:pk3err0040: the target device is not ready for debugging. といったエラーが表示され、デバックモードに入ることが出来ません。 本エラーは、コンフィグの設定、配線の間違い、クロックが入っていない場合等に起こるエラーとありましたが、これではないと考えています。 <確かめたこと> (1)Programモードで、コンパイル、リンクは問題なく実行でき、CPUにプログラムを書き込むことも出来ます。 シュミレーションモードに入ることも出来ます。この点では16Fも18Fも問題がありません。 しかし、実機デバッグモードに入ろうとすると、16F(PIC16F688、PIC16F690)では、入ることができません。 実機デバッグモードでは、コンパイル、リンクはエラー無く実行可能です。「RUN」でスタートを掛けると上記(1)、(2)のエラーメッセージが表示されます。 (2)MPLABのCPUの選択は、各々間違ってはいません。 (3)配線も間違っていませんでした。回路自体にも問題があるとは思えません。 (4)PIC16Fでは、CコンパイラはCCS または Hi-TECHを使用しましたが、結果は同じでした。 CCSでは、 #INCLUDE <16F690.h> #DEVICE ICD=TRUE ;ICD2を使用する場合に、NOP命令を入れる様に記載がありましたが、だめです。 また、 アセンブラで、 #INCLUDE <p16F690.inc> __CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOR_OFF & _IESO_OFF & _FCMEN_OFF ORG 0 nop と入れましたが、だめでした。 コンパイラには無関係(Cやアセンプラの言語に関係がない)で起きているようです。 MPLABの設定で、デバイスの選択以外に、16Fと18Fで設定が異なる部分があるのでしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- PIC初心者です。 PIC16F88のLED制御で以下のプログラムを実
PIC初心者です。 PIC16F88のLED制御で以下のプログラムを実行すると点滅を繰り返します。 意図としては1度だけ光って消えてほしいのですが… CONFIG部分がおかしいのでしょうか? 環境として、PCはVista、MPLABとPICkit2を使用しています お分かりになる方、お願いいたします。 以下ソースです LIST P=PIC16F88 INCLUDE "P16F88.INC" __CONFIG _CONFIG1, _INTRC_IO & _CP_OFF & _CCP1_RB0 & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_OFF & _PWRTE_ON & _WDT_OFF __CONFIG _CONFIG2, _IESO_OFF & _FCMEN_ON BSF STATUS,RP0 CLRF TRISB BCF STATUS,RP0 BCF STATUS,0 CLRF PORTB MAIN BSF PORTB,0 NOP NOP NOP (以下、NOPが100個ほど) NOP BCF PORTB,0 END
- ベストアンサー
- その他(プログラミング・開発)
- PICを3.3Vで動作させるには?
PIC初心者です。PIC16F873AというPICを3.3Vで動作させたいのですがうまくいきません。同じ回路で電源電圧を5Vにし、動作することを確認しているので回路やプログラムには問題ないと思われます。 データシートでは2.0V~で動作するようになっていると思うのですが、電源電圧5Vで動作させるときとどこか変更しなければならない個所があるのでしょうか?それとも3.3Vでは動作しないのでしょうか? ちなみにクロックは外部クロック10MHzを使用しています。 PICに詳しい方、よろしくお願いいたします。
- ベストアンサー
- 科学