日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] INCLUDE ;MCUPIC16F877DIP40LIST P=PIC16F877;__CONFIG _CP_OFF&_DEBUG_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC&_LVP_OFF ;PIC16F877;__IDLOCS0x7206errorlevel -302 errorlevel -203CBLOCK 20HCOUNTERHC

INCLUDE ;MCUPIC16F877DIP40

LIST P=PIC16F877

;__CONFIG _CP_OFF&_DEBUG_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC&_LVP_OFF ;PIC16F877

;__IDLOCS0x7206


errorlevel -302
errorlevel -203

CBLOCK 20H
COUNTERH
COUNTERL
COUNTER
TEMP1
TEMP2
TEMP3
TEMP4
TEMP_A
TEMP_B
TEMP_C
DADR
CNT
EE_DADR
ENDC


#DEFINESTART_KEYPORTB,1
#DEFINEBELL PORTD,0

ORG00H
NOP
GOTOSTART
ORG04H
GOTO_INT

;ORG0100H
;********************************************
;查問(wèn)題回答1字符表(共25個(gè)字符)

TABLE1
ADDWFPCL,F
DT"nr-MynameisP16F877.nnr"
;n換行
;r回車

;查問(wèn)題回答2字符表(共22個(gè)字符)

TABLE2
ADDWFPCL,F
DT"nr-I’m3yearsold.nnr"



;查問(wèn)題回答3字符表(共27個(gè)字符)

TABLE3
ADDWFPCL,F
DT"nr-I’mborninShangHai.nnr"



;查問(wèn)題回答4字符表(共34個(gè)字符)

TABLE4
ADDWFPCL,F
DT"nr-Yes,Ilikesportsverymuch.nnr"



;查問(wèn)題回答5字符表(共28個(gè)字符)

TABLE5
ADDWFPCL,F
DT"nr-Thedateis2007-2-15.nnr"

;*******************************************
;初始化和提示信息字符表(共74個(gè)字符)

TABLE
ADDWFPCL,F
DT"nHello!nr"
DT"I’myournewfriend,Nicetomeetyou."
DT"Whatdoyouwanttoknow?nnr"
;********************************************

ORG0100H
;********************************************
;問(wèn)題5字符表(共22個(gè)字符)

TAB5
ADDWFPCL,F
DT"What’sthedatetoday?"


;問(wèn)題4字符表(共19個(gè)字符)

TAB4
ADDWFPCL,F
DT"Doyoulikesports?"


;問(wèn)題3字符表(共20個(gè)字符)

TAB3
ADDWFPCL,F
DT"Wherewereyouborn?"


;問(wèn)題2字符表(共16個(gè)字符)

TAB2
ADDWFPCL,F
DT"Howoldareyou?"


;問(wèn)題1字符表(共17個(gè)字符)

TAB1
ADDWFPCL,F
DT"What’syourname?"

;********************************************
;錯(cuò)誤提示1字符表(共64個(gè)字符)

TABLE6
ADDWFPCL,F
DT"nr-Sorry.ICANnotanswerthequestion."
DT"Pleaseaskanotherone.nnr"


;錯(cuò)誤提示2字符表(共48個(gè)字符)

TABLE7
ADDWFPCL,F
DT"nr-Whatyourenteriswrong.Pleasetryagain.nnr"
;********************************************

ORG0200H
_INT
NOP
NOP
RETFIE

START
NOP
BSF STATUS,RP0;定義RA口,RC口全部為輸出
MOV LW 06H ;
MOV WF ADCON1 ;設(shè)置RA口全部為普通數(shù)字IO口
MOV LW B’00110000’;
MOV WF TRISA

MOV LW B’11011000’;設(shè)置SCL為輸入,SDA為輸入
MOV WF TRISC
MOV LW 00H
MOV WF TRISD ;
MOV LW0FFH
MOV WFTRISB
BCFOPTION_REG,7
BCF STATUS,RP0

;********** IIC初始化設(shè)置 ************
MOV LW08H ;初始化SSPCON,
MOV WFSSPCON ;IIC主控模式
BCFPIR1,SSPIF

BSFSTATUS,RP0
MOV LW80H ;初始化SSPSTAT寄存器,
MOV WFSSPSTAT ;傳送速率為標(biāo)準(zhǔn)模式100KHz
MOV LW09H
MOV WFSSPADD ;設(shè)定IIC時(shí)鐘頻率
CLRFSSPCON2 ;初始化SSPCON2
BSFPIE1,SSPIE ;SSP中斷允許
CLRFINTCON
BSFINTCON,PEIE ;開(kāi)中斷
BSFINTCON,GIE
BCFSTATUS,RP0
BSFSSPCON,SSPEN ;SSP模塊使能

;********** IIC初始化設(shè)置結(jié)束 ************


;********** USART初始化設(shè)置開(kāi)始 ************

STBSFSTATUS,RP0
MOV LWB’00100100’
MOV WFTXSTA ;異步方式,高波特率,發(fā)送使能
MOV LW.25
MOV WFSPBRG ;設(shè)置波特率9600,F(xiàn)osc=4MHz
BCFSTATUS,RP0

MOV LWB’10010000’;設(shè)置連續(xù)接收數(shù)據(jù)
MOV WFRCSTA

;CLRFINTCON
BSFSTATUS,RP0
CLRFPIE1
BCFSTATUS,RP0

;********** USART初始化設(shè)置結(jié)束 ************

CLRF PORTA
; CLRF PORTB
CLRF PORTD
CALLCLR_RAM


BEGIN

;ReadTestCounterValuefromEEPROM***********************
MOV LW20H ;readcounterlcounterhfromeeprom
MOV WFDADR
MOV LW.2
MOV WFCNT
MOV LW00H
MOV WFEE_DADR
CALLEE_READ
;ReadTestCounterValuefromEEPROM***********************

;CompareTestCounterValueiszero?************************
CLRZ
MOV FCOUNTERH,F
BTFSSSTATUS,Z
GOTOPRESS_START_KEY
CLRZ
MOV FCOUNTERL,F
BTFSSSTATUS,Z
GOTOPRESS_START_KEY
CALL_ERROR_BELL
GOTOBEGIN
;CompareTestCounterValueiszero?************************


PRESS_START_KEY
BTFSC START_KEY ;按開(kāi)始鍵開(kāi)始測(cè)試
GOTO $-1
CALL DELAY20MS
BTFSC START_KEY
GOTO $-4
BTFSS START_KEY
GOTO $-1
CALL DELAY20MS
BTFSS START_KEY
GOTO $-4


;TestCounterdecrease1****************************
MOV LW.1 ;conterdecrease1
SUBWFCOUNTERL,F
BTFSSSTATUS,C
DECFCOUNTERH,F
CALLRAM_TO_EE;writecounterlcounterhtoeeprom
;TestCounterdecrease1****************************






;GOTOBEGIN








;輸出問(wèn)候語(yǔ)

CSH
MOV FCOUNTER,W
;BSFPCLATH,0
CALLTABLE
;BCFPCLATH,0
CALLFASONG
CALLDELAY3
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.74
BTFSSSTATUS,Z
GOTOCSH

;********************************************

;開(kāi)始檢測(cè)并儲(chǔ)存外界輸入

LOOP
CLRFPIR1 ;清RCIF
CLRFCOUNTER
MOV LW30H
MOV WFFSR
BCFPIR1,RCIF
JIESHUNOP
LRCBTFSSPIR1,RCIF
GOTOLRC
MOV FRCREG,W
SUBLW"r" ;與Enter對(duì)應(yīng)的ASCII碼比較
BTFSCSTATUS,Z
GOTOWTPD ;按了回車鍵,轉(zhuǎn)判斷子程序
MOV FRCREG,W
SUBLW"b" ;與退格鍵BacksPACe對(duì)應(yīng)的ASCII碼比較
BTFSCSTATUS,Z
GOTOTUIGE ;按了退格鍵,轉(zhuǎn)退格處理
MOV FRCREG,W
CALLFASONG
MOV WFINDF
INCFFSR
GOTOLRC

;********************************************

;退格處理子程序
TUIGE
MOV FRCREG,W
CALLFASONG
DECFFSR
GOTOLRC

;********************************************

;問(wèn)題判斷子程序

WTPD
MOV FRCREG,W
MOV WFINDF

;********************************************
;和第一個(gè)問(wèn)題進(jìn)行比較

PD1
CLRFCOUNTER
MOV LW30H
MOV WFFSR
LP1
MOV FCOUNTER,W
;BSFPCLATH,1
BSFPCLATH,0
CALLTAB1
BCFPCLATH,0
;BCFPCLATH,1
SUBWFINDF,W ;查表所得的數(shù)據(jù)與INDF的內(nèi)容相減,結(jié)果送W
BTFSSSTATUS,Z
GOTOPD2 ;內(nèi)容不符,轉(zhuǎn)PD2判斷
INCFFSR ;內(nèi)容相符,數(shù)據(jù)存儲(chǔ)地址加一
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.17 ;判斷是否已到第一個(gè)問(wèn)題的17個(gè)字符數(shù)
BTFSSSTATUS,Z
GOTOLP1 ;沒(méi)到,繼續(xù)第一個(gè)問(wèn)題的判斷
MOV LW"r" ;Enter??
SUBWFINDF,W
BTFSSSTATUS,Z
GOTOCUOWU2 ;不相等,后面還有內(nèi)容,轉(zhuǎn)到錯(cuò)誤提示2
CLRFCOUNTER
GOTOHD1 ;轉(zhuǎn)到回答1

;********************************************
;和第二個(gè)問(wèn)題進(jìn)行比較

PD2
CLRFCOUNTER
MOV LW30H
MOV WFFSR
LP2
MOV FCOUNTER,W
;BSFPCLATH,1
BSFPCLATH,0
CALLTAB2
BCFPCLATH,0
;BCFPCLATH,1
SUBWFINDF,W ;查表所得的數(shù)據(jù)與INDF的內(nèi)容相減,結(jié)果送W
BTFSSSTATUS,Z
GOTOPD3 ;內(nèi)容不符,轉(zhuǎn)PD3判斷
INCFFSR ;內(nèi)容相符,數(shù)據(jù)存儲(chǔ)地址加一
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.16 ;判斷是否已到第一個(gè)問(wèn)題的16個(gè)字符數(shù)
BTFSSSTATUS,Z
GOTOLP2 ;沒(méi)到,繼續(xù)第一個(gè)問(wèn)題的判斷
MOV LW"r" ;Enter??
SUBWFINDF,W
BTFSSSTATUS,Z
GOTOCUOWU2 ;不相等,后面還有內(nèi)容,轉(zhuǎn)到錯(cuò)誤提示2
CLRFCOUNTER
GOTOHD2 ;轉(zhuǎn)到回答2

;********************************************
;和第三個(gè)問(wèn)題進(jìn)行比較

PD3
CLRFCOUNTER
MOV LW30H
MOV WFFSR
LP3
MOV FCOUNTER,W
;BSFPCLATH,1
BSFPCLATH,0
CALLTAB3
BCFPCLATH,0
;BCFPCLATH,1
SUBWFINDF,W ;查表所得的數(shù)據(jù)與INDF的內(nèi)容相減,結(jié)果送W
BTFSSSTATUS,Z
GOTOPD4 ;內(nèi)容不符,轉(zhuǎn)PD4判斷
INCFFSR ;內(nèi)容相符,數(shù)據(jù)存儲(chǔ)地址加一
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.20 ;判斷是否已到第一個(gè)問(wèn)題的20個(gè)字符數(shù)
BTFSSSTATUS,Z
GOTOLP3 ;沒(méi)到,繼續(xù)第一個(gè)問(wèn)題的判斷
MOV LW"r" ;Enter??
SUBWFINDF,W
BTFSSSTATUS,Z
GOTOCUOWU2 ;不相等,后面還有內(nèi)容,轉(zhuǎn)到錯(cuò)誤提示2
CLRFCOUNTER
GOTOHD3 ;轉(zhuǎn)到回答3

;********************************************
;和第四個(gè)問(wèn)題進(jìn)行比較

PD4
CLRFCOUNTER
MOV LW30H
MOV WFFSR
LP4
MOV FCOUNTER,W
;BSFPCLATH,1
BSFPCLATH,0
CALLTAB4
BCFPCLATH,0
;BCFPCLATH,1
SUBWFINDF,W ;查表所得的數(shù)據(jù)與INDF的內(nèi)容相減,結(jié)果送W
BTFSSSTATUS,Z
GOTOPD5 ;內(nèi)容不符,轉(zhuǎn)PD5判斷
INCFFSR ;內(nèi)容相符,數(shù)據(jù)存儲(chǔ)地址加一
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.19 ;判斷是否已到第一個(gè)問(wèn)題的19個(gè)字符數(shù)
BTFSSSTATUS,Z
GOTOLP4 ;沒(méi)到,繼續(xù)第一個(gè)問(wèn)題的判斷
MOV LW"r" ;Enter??
SUBWFINDF,W
BTFSSSTATUS,Z
GOTOCUOWU2 ;不相等,后面還有內(nèi)容,轉(zhuǎn)到錯(cuò)誤提示2
CLRFCOUNTER
GOTOHD4 ;轉(zhuǎn)到回答4

;********************************************
;和第五個(gè)問(wèn)題進(jìn)行比較

PD5
CLRFCOUNTER
MOV LW30H
MOV WFFSR
LP5
MOV FCOUNTER,W
;BSFPCLATH,1
BSFPCLATH,0
CALLTAB5
BCFPCLATH,0
;BCFPCLATH,1
SUBWFINDF,W ;查表所得的數(shù)據(jù)與INDF的內(nèi)容相減,結(jié)果送W
BTFSSSTATUS,Z
GOTOCUOWU ;內(nèi)容不符,轉(zhuǎn)CUOWU提示1
INCFFSR ;內(nèi)容相符,數(shù)據(jù)存儲(chǔ)地址加一
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.22 ;判斷是否已到第一個(gè)問(wèn)題的16個(gè)字符數(shù)
BTFSSSTATUS,Z
GOTOLP5 ;沒(méi)到,繼續(xù)第一個(gè)問(wèn)題的判斷
MOV LW"r" ;Enter??
SUBWFINDF,W
BTFSSSTATUS,Z
GOTOCUOWU2 ;不相等,后面還有內(nèi)容,轉(zhuǎn)到錯(cuò)誤提示2
CLRFCOUNTER
GOTOHD5 ;轉(zhuǎn)到回答2

;********************************************
;輸出回答1

HD1
MOV FCOUNTER,W
;BSFPCLATH,0
CALLTABLE1
;BCFPCLATH,0
CALLFASONG
CALLDELAY3
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.25
BTFSSSTATUS,Z
GOTOHD1
GOTOLOOP ;輸出完畢,轉(zhuǎn)到輸出檢測(cè)



;輸出回答2

HD2
MOV FCOUNTER,W
;BSFPCLATH,0
CALLTABLE2
;BCFPCLATH,0
CALLFASONG
CALLDELAY3
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.22
BTFSSSTATUS,Z
GOTOHD2
GOTOLOOP ;輸出完畢,轉(zhuǎn)到輸出檢測(cè)


;輸出回答3

HD3
MOV FCOUNTER,W
;BSFPCLATH,0
CALLTABLE3
;BCFPCLATH,0
CALLFASONG
CALLDELAY3
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.27
BTFSSSTATUS,Z
GOTOHD3
GOTOLOOP ;輸出完畢,轉(zhuǎn)到輸出檢測(cè)


;輸出回答4

HD4
MOV FCOUNTER,W
;BSFPCLATH,0
CALLTABLE4
;BCFPCLATH,0
CALLFASONG
CALLDELAY3
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.34
BTFSSSTATUS,Z
GOTOHD4
GOTOLOOP ;輸出完畢,轉(zhuǎn)到輸出檢測(cè)


;輸出回答5

HD5
MOV FCOUNTER,W
;BSFPCLATH,0
CALLTABLE5
;BCFPCLATH,0
CALLFASONG
CALLDELAY3
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.28
BTFSSSTATUS,Z
GOTOHD5
;GOTOLOOP ;輸出完畢,轉(zhuǎn)到輸出檢測(cè)

CLRFCOUNTER
CALLDELAY1S
CALL_PASS_BELL
GOTOBEGIN

;********************************************
;輸出錯(cuò)誤提示1

CUOWU
CLRFCOUNTER
LP6 MOV FCOUNTER,W
;BSFPCLATH,1
BSFPCLATH,0
CALLTABLE6
BCFPCLATH,0
;BCFPCLATH,1
CALLFASONG
CALLDELAY3
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.64
BTFSSSTATUS,Z
GOTOLP6
GOTOLOOP


;輸出錯(cuò)誤提示2

CUOWU2
CLRFCOUNTER
LP7 MOV FCOUNTER,W
;BSFPCLATH,1
BSFPCLATH,0
CALLTABLE7
BCFPCLATH,0
;BCFPCLATH,1
CALLFASONG
CALLDELAY3
INCFCOUNTER
MOV FCOUNTER,W
SUBLW.48
BTFSSSTATUS,Z
GOTOLP7
GOTOLOOP
;********************************************



;********************************************
;USART方式發(fā)送數(shù)據(jù)子程序

FASONG
MOV WFTXREG
BSFSTATUS,RP0
BTFSSTXSTA,TRMT
GOTO$-1
BCFSTATUS,RP0
RETURN

;********************************************
CLR_RAM
MOV LW20H
MOV WFFSR
CLRFINDF
INCFFSR,F
BTFSSFSR,7
GOTO$-3
RETURN
;***********************_ERROR_BELL子程序 **********************************
_ERROR_BELL
CALL _PASS_BELL
CALL DELAY200MS
CALL DELAY200MS
CALL _PASS_BELL
CALL DELAY200MS
CALL DELAY200MS
CALL _PASS_BELL
CALL DELAY200MS
CALL DELAY200MS
RETURN
;***********************_PASS_BELL子程序 **********************************
_PASS_BELL
MOV LW .20
MOV WF TEMP_A
BELL2
MOV LW .190
MOV WF TEMP_B
BELL1
BSF BELL ;頻率Hz
CALLDELAY125US
BCF BELL
CALLDELAY125US
DECFSZ TEMP_B,1
GOTO BELL1
DECFSZ TEMP_A,1
GOTO BELL2
RETURN

;**********************************************************
DELAY50US
MOV lw .15 ;DELAY50US
MOV wf TEMP1
decfsz TEMP1,F
goto $-1
RETLW0

;***********************250uS延時(shí)子程序1**************

DELAY125US
MOV LW.42
MOV WFTEMP_C
DECFSZ TEMP_C,F
GOTO $-1
RETURN

;********************************************
DELAY1MS
MOV lw .2
MOV wf TEMP2
MOV lw .170
MOV wf TEMP1
DECFSZ TEMP1,F
goto $-1
DECFSZ TEMP2,F
GOTO $-5
RETURN
;********************************************
DELAY10MS
CALLDELAY1MS
CALLDELAY1MS
CALLDELAY1MS
CALLDELAY1MS
CALLDELAY1MS
CALLDELAY1MS
CALLDELAY1MS
CALLDELAY1MS
CALLDELAY1MS
CALLDELAY1MS
RETLW0

;********************************************
;延時(shí)子程序,約10MS

DELAY3
MOV LW.20
MOV WFTEMP1
LOOP1
MOV LW.166
MOV WFTEMP2
DECFSZTEMP2
GOTO$-1
DECFSZTEMP1
GOTOLOOP1
RETURN

;********************************************
;延時(shí)20MS子程序

DELAY20MS
MOV lw .40
MOV wf TEMP2
DELAY20MS_1
MOV lw .166
MOV wf TEMP1
DECFSZ TEMP1,F
goto $-1
DECFSZ TEMP2,F
GOTO DELAY20MS_1
RETURN
;********************************************
DELAY200MS
MOV lw .10
MOV wf TEMP3
DELAY200MS_2
MOV lw .40
MOV wf TEMP2
DELAY200MS_1
MOV lw .166
MOV wf TEMP1
DECFSZ TEMP1,F
goto $-1
DECFSZ TEMP2,F
GOTO DELAY200MS_1
DECFSZ TEMP3,F
GOTO DELAY200MS_2
RETURN
;********************************************
DELAY1S
MOV lw .50
MOV wf TEMP3
DELAY1S_2
MOV lw .40
MOV wf TEMP2
DELAY1S_1
MOV lw .166
MOV wf TEMP1
DECFSZ TEMP1,F
goto $-1
DECFSZ TEMP2,F
GOTO DELAY1S_1
DECFSZ TEMP3,F
GOTO DELAY1S_2
RETURN

;********************************************
RAM_TO_EE:
MOV LW20H
MOV WFDADR
MOV LW.2
MOV WFCNT
MOV LW00H
MOV WFEE_DADR
CALLEE_WRITE
RETURN

;*********************************EE_WRITE***********************************
;本程序?qū)崿F(xiàn)從內(nèi)部RAM傳送多字節(jié)數(shù)據(jù)到內(nèi)部EEPROM。
;入口參數(shù):原操作數(shù)的地址放在DADR中,目標(biāo)EEPROM的地址放在EE_DADR中,字節(jié)數(shù)在W中。
;出口參數(shù):相關(guān)數(shù)據(jù)已寫入指定EEPROM單元中。
;占用資源:W,STATUS,FSR,一重堆棧。
;**************************************************************************
EE_WRITE:
MOV FDADR,W
MOV WFFSR ;RAM單元首地址
MOV FEE_DADR,W
BANKSELPIE1 ;BANK1
BCFPIE1,EEIE ;關(guān)閉EE中斷
BANKSELEEADR ;BANK2
MOV WFEEADR ;將目標(biāo)地址寫入EEADR
EE_LOOP2:
BANKSELPORTA ;BANK0
MOV FINDF,W
BANKSELEEDATA ;BANK2
MOV WFEEDATA ;將源數(shù)據(jù)寫入EEDATA
BANKSELEECON1 ;BANK3
BCFEECON1,EEPGD;指定EEPROM為操作對(duì)象
BSFEECON1,WREN ;寫允許
BCFINTCON,GIE ;關(guān)閉中斷
MOV LW55H ;MICROChip
MOV WFEECON2 ;規(guī)
MOV LW0XAA ;定
MOV WFEECON2 ;代碼
BSFEECON1,WR ;開(kāi)始寫入
BCFEECON1,WREN ;寫保護(hù)
BTFSCEECON1,WR ;寫完了嗎?
GOTO$-1
BANKSELPORTA ;BANK0
INCFFSR,F ;寫下一個(gè)數(shù)據(jù)
BANKSELEEADR ;BANK2
INCFEEADR,F
BANKSELPORTA ;BANK0
DECFSZCNT,F ;所有字節(jié)的數(shù)據(jù)寫完了嗎?
GOTONEXT1
BSFINTCON,GIE ;重新開(kāi)總中斷
RETURN

NEXT1:
GOTOEE_LOOP2

;********************************EE_READ***********************************
;本程序?qū)崿F(xiàn)從內(nèi)部連續(xù)的EEPROM單元傳送多字節(jié)數(shù)據(jù)到內(nèi)部RAM。
;入口參數(shù):原操作數(shù)在EEPROM中的首地址放在EE_DADR中,目標(biāo)RAM的首地址放在DADR中,
; 字節(jié)數(shù)放在CNT中。
;出口參數(shù):相關(guān)數(shù)據(jù)已在指定的連續(xù)RAM單元中
;占用資源:W,STATUS,FSR,內(nèi)部EEPROM模塊,一重堆棧。
;***************************************************************************
EE_READ:
BANKSELPORTA ;BANK0
MOV FDADR,W
MOV WFFSR ;目標(biāo)RAM的地址
MOV FEE_DADR,W
BANKSELEEADR ;BANK2
MOV WFEEADR ;地址
EE_READ1:
BANKSELEECON1 ;BANK3
BCFEECON1,EEPGD;指定EEPROM為操作對(duì)象
BSFEECON1,RD ;開(kāi)始讀取
BANKSELEEDATA ;BANK2
MOV FEEDATA,W
BANKSELPORTA ;BANK0
MOV WFINDF ;依次取出連續(xù)的數(shù)據(jù)
INCFFSR,F
BANKSELEEADR ;BANK2
INCFEEADR,F
BANKSELPORTA ;BANK0
DECFSZCNT,F ;判斷所有字節(jié)的數(shù)據(jù)是否取完
GOTOEE_READ1
RETURN

;***************************************************************************
ORG0x2100
DE00H,0AH,00H,00H,00H,00H

END

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

pic單片機(jī)應(yīng)用很多,生活中到處都有pic單片機(jī)的身影。小編個(gè)人也是從事pic單片機(jī)開(kāi)發(fā)的人員之一,對(duì)于pic單片機(jī)有一定的理解。今天,小編將帶領(lǐng)大家一起看一下pic單片所具備的8大優(yōu)勢(shì)。

關(guān)鍵字: pic 單片機(jī) 寄存器

SpiceJet 成為首家借力Q400客機(jī)提升盈利潛力的航空公司 加拿大多倫多, Sept. 24, 2018 (GLOBE NEWSWIRE) -- Bombardier Commercial

關(guān)鍵字: pic ce

  UART   UART是一種通用串行數(shù)據(jù)總線,用于異步通信。該總線雙向通信,可以實(shí)現(xiàn)全雙工傳輸和接收。在嵌入式設(shè)計(jì)中,UART用于主機(jī)與輔助設(shè)備通信,如汽車音響與外接AP之間的通信,

關(guān)鍵字: uart usart

什么是PIC單片機(jī)?你知道多少?時(shí)代的變遷,PIC單片機(jī)是這個(gè)時(shí)代的新寵。之前我們對(duì)pic單片機(jī)的I/O接口進(jìn)行過(guò)闡述,不是很詳細(xì)。本期對(duì)關(guān)于PIC單片機(jī)的各種內(nèi)部硬件資源加以介紹,以幫助大家全面掌握pic單片機(jī)打下夯實(shí)...

關(guān)鍵字: pic 單片機(jī) 電路

pic單片機(jī)具備很多應(yīng)用,對(duì)于pic單片機(jī),想必大家并不陌生。往期文章中,小編對(duì)pic單片機(jī)做過(guò)諸多介紹。本文中,小編將為大家?guī)?lái)6個(gè)pic單片機(jī)問(wèn)題,并予以解答。而在之后的pic單片機(jī)文章中,小編將帶來(lái)另外6個(gè)問(wèn)題。如...

關(guān)鍵字: pic pic單片機(jī) 單片機(jī) 指數(shù)

對(duì)于c編譯器,大家應(yīng)早已熟悉。往期文章中,小編帶來(lái)諸多c編譯器相關(guān)文章,尤其是gcc c編譯器。本文中,小編將對(duì)gcc c編譯器如何編譯c程序予以介紹,并在文章的后半部分向大家講解如果選擇pic單片機(jī)的c編譯器。如果你對(duì)...

關(guān)鍵字: c編譯器 gcc pic 指數(shù)

?2020年2月13日,北京——是德科技宣布,該公司即將與國(guó)家信息光電子創(chuàng)新中心(NOEIC)和CompoundTek展開(kāi)合作,三方攜手建立光子集成電路(PIC)自動(dòng)化測(cè)試的布局設(shè)計(jì)標(biāo)準(zhǔn)。

關(guān)鍵字: pic 自動(dòng)化測(cè)試 fdr

?Microchip PIC18-Q43系列產(chǎn)品將更多的獨(dú)立于內(nèi)核的外設(shè)(CIP)及功能豐富的開(kāi)發(fā)工具生態(tài)系統(tǒng)相結(jié)合,可改善實(shí)時(shí)控制和互聯(lián)應(yīng)用的設(shè)計(jì)

關(guān)鍵字: MCU pic cip

還有一個(gè)問(wèn)題也是值得注意的,就是在中斷服務(wù)程序中避免打開(kāi)全局中斷允許位,因?yàn)镻IC單片機(jī)不支持中斷嵌套,否則在執(zhí)行一個(gè)中斷服務(wù)程序還未結(jié)束就進(jìn)入另一個(gè)中斷服務(wù)程序后,上一個(gè)中斷的現(xiàn)場(chǎng)參數(shù)將遭到破壞,從而導(dǎo)致程序產(chǎn)生不可預(yù)...

關(guān)鍵字: pic 單片機(jī) 電源技術(shù)解析

Pic單片機(jī)的學(xué)習(xí)是存在一定難度的,一是因?yàn)楸仨毦邆湟欢ǖ膒ic單片機(jī)基礎(chǔ)知識(shí),二是需對(duì)pic單片機(jī)的所有引腳等有一定的了解。這篇文章是小編在學(xué)習(xí)pic單片機(jī)寫的一篇比較適合pic單片機(jī)初入門朋友閱讀的文章,一起了解下吧...

關(guān)鍵字: pic pic單片機(jī) 單片機(jī)
關(guān)閉