; Copyright 2005 Yasuhiro Kanzaki ; リスト13-6 ; f877A1302.asm COMPAATOR VOLTAGE REFERENCE テストプログラム list p=16f877A ; list ディレクティブよるPICの型番の定義部 #include ; 変数を定義したファイルの読み込みを指定 __CONFIG _CP_OFF & _WDT_OFF & _HS_OSC & _LVP_OFF & _CPD_OFF ORG 0000h ; リセット時の開始位置 ;タイマ1初期化 movlw 0Bh ;プリスケーラ1:1 32.768kHz ,外部クロック,同期 movwf T1CON ; タイマ1構成セット及びタイマ1オン bsf STATUS,RP0 ; バンク1を選択 bcf OPTION_REG,NOT_RBPU;ポートBプルアップ clrf TRISD ; ポートDは出力 bcf STATUS,RP0 ; バンク0 rep movf PORTB,w ; ポートBを読み取る andlw 00Fh ; 下位4ビットのみ残す iorlw 0C0h ; 0C0hはオフセットあり,0E0hでオフセット無し bsf STATUS,RP0 ; バンク1 movwf CVRCON ; ここで設定を変更する bcf STATUS,RP0 ; バンク0 movwf PORTD ; 確認のためCVRCONに書き込んだデータを表示 ; 表示のインターバルを取るため タイマ1による時間待ち処理 movlw 0C0h ;   movwf TMR1H ; bcf PIR1,TMR1IF ; rtt btfss PIR1,TMR1IF ; goto rtt ; 時間待ち完了 goto rep ; 繰り返す END