• 締切済み

PIC 初級プログラミング

waewaの回答

  • waewa
  • ベストアンサー率25% (1/4)
回答No.2

差し支えなければ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; と入力した部分です。(プログラムの全容はサイトに記載されています) この部分をごっそり消すと別のエラーが出ます。 わかる方どうか力を貸してください。 ご回答よろしくお願いします。

  • 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 何日も堂々巡りをしてまして埒があかないので質問させていただきました。 どこが間違えているのでしょうか???? よろしくお願いいたします。

  • 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に詳しい方、よろしくお願いいたします。