新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 讀寫PIC18F452內部EEPROM的實例源程序

        讀寫PIC18F452內部EEPROM的實例源程序

        作者: 時間:2012-11-29 來源:網絡 收藏

        讀寫

        list p=18f452
        #i nclude P18F452.INC>
        ;
        ;---- 18F452 RAM LOCATIONS ------
        Data_EE_Addr EQU 0X000
        Data_EE_Data EQU 0X001
        EEPROM_Buffer equ 0x02
        ;--------VECTORS------------

        org 0x00
        bra START

        ;-------PROGRAM--------------

        org 0x20
        START
        rcall INIT
        ;
        ;---- Test the WRITE EEPROM Routine ----
        ;
        clrf Data_EE_Addr ; set EEPROM start address at 0x00
        movlw '0' ; Load a ASCII code "0" to W
        movwf Data_EE_Data
        EE_Write
        rcall IN_DATA_EEW
        incf Data_EE_Data,F ; 0x30+ N
        incf Data_EE_Addr,F ; Point to next EEPROM Address
        btfss Data_EE_Addr,5 ; Write 32 bytes ?
        goto EE_Write
        ;
        ;---- Test the READ EEPROM Routine ----
        ;
        clrf FSR0H ; Set RAM point to 0x010
        movlw 0x10
        movwf FSR0L
        ;
        clrf Data_EE_Addr
        EE_Read
        rcall READ_EEPROM
        movwf POSTINC0 ; move W --> RAM then point + 1
        ;
        incf Data_EE_Addr,F ; Point to next EEPROM Address
        btfss Data_EE_Addr,5 ; Read 32 bytes ?
        goto EE_Read
        ;
        LSTOP
        GOTO LSTOP
        ;
        ;------ INTERNAL EEPROM READ ------
        ;
        READ_EEPROM
        movff Data_EE_Addr,EEADR
        ;
        ; bcf INTCON,GIE
        bcf EECON1,EEPGD
        bsf EECON1,RD
        movf EEDATA,W
        ; bsf INTCON,GIE
        return
        ;
        ;----INTERNAL EEPROM WRITE-----
        ;
        IN_DATA_EEW
        movff Data_EE_Addr,EEADR
        movff Data_EE_Data,EEDATA
        ;
        BCF EECON1,EEPGD
        BCF EECON1,CFGS ; There are difference with data sheet

        ; BCF INTCON,GIE

        BSF EECON1,WREN
        ;
        MOVLW 0X55
        MOVWF EECON2
        MOVLW 0XAA
        MOVWF EECON2
        BSF EECON1,WR
        ;
        ; BSF INTCON,GIE

        LOOP1 BTFSS PIR2, EEIF
        GOTO LOOP1
        ;
        BCF EECON1,WREN
        BCF PIR2,EEIF

        RETURN

        ;---------INITIAL----------------
        INIT
        BCF PIR2,EEIF
        BCF PIE2,EEIE
        RETURN
        ;--------------------------------
        END



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 灵山县| 萝北县| 通道| 方正县| 含山县| 三江| 文成县| 沙坪坝区| 华安县| 宜君县| 时尚| 平遥县| 苏州市| 大安市| 准格尔旗| 土默特左旗| 原平市| 延吉市| 满洲里市| 威宁| 洪雅县| 吉首市| 杭州市| 军事| 类乌齐县| 西吉县| 钟祥市| 正蓝旗| 西林县| 涞源县| 英德市| 井陉县| 增城市| 墨脱县| 章丘市| 南雄市| 丰都县| 陇川县| 台北县| 通化县| 淮北市|