人狗畜禽COMPANY LIMITED|全是肉的高H文〈男男〉|全篇肉高H秘书被C办公室四爱|全黄H全肉共妻|全黄H全肉短篇禁乱NP慕浅浅|全黄H全肉短篇N男男

技術(shù)熱線: 4007-888-234
設(shè)計開發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開發(fā)工具

提供開發(fā)工具、應(yīng)用測試 完善的開發(fā)代碼案例庫分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競爭力

新聞中心

提供最新的單片機資訊,行業(yè)消息以及公司新聞動態(tài)

PIC16F73讀寫24C01的程序

更新時間: 2019-03-23
閱讀量:2082

PIC16F73讀寫24C01的程序

;*****Start code
E2PROM_START
 BSF PORTC,SDAT
 BSF PORTC,SCLK
 BSF STATUS,5
 MOVLW DATA_OUT
 MOVWF TRISC
 BCF STATUS,5
 NOP
 NOP
 NOP
 NOP
 NOP
 BCF PORTC,SDAT
 NOP
 NOP
 NOP
 NOP
 NOP
 NOP
 BCF PORTC,SCLK
 NOP
 NOP
 NOP
 NOP
 RETURN
;*****Stop code
E2PROM_STOP
 BCF PORTC,SCLK
 BCF PORTC,SDAT
 BSF STATUS,5
 MOVLW DATA_OUT
 MOVWF TRISC
 BCF STATUS,5
 NOP
 NOP
 NOP
 NOP
 BSF PORTC,SCLK
 NOP
 NOP
 NOP
 NOP
 BSF PORTC,SDAT
 NOP
 NOP
 NOP
 NOP
 BCF PORTC,SCLK
 NOP
 NOP
 RETURN
;*****Byte out code
E2PROM_BYTE_OUT
 MOVLW 08H
 MOVWF E2PROM_cnt
 BSF STATUS,5
 MOVLW DATA_OUT
 MOVWF TRISC
 BCF STATUS,5
OUT_LOOP
 BCF PORTC,SCLK
 NOP
 NOP
 NOP
 BTFSS E2PROM_data,7
 GOTO PULL_DOWN_SDAT
 BSF PORTC,SDAT
 GOTO OUT_NEXT_BIT
PULL_DOWN_SDAT
 BCF PORTC,SDAT
OUT_NEXT_BIT
 RLF E2PROM_data,1
 NOP
 NOP
 BSF PORTC,SCLK
 NOP
 NOP
 NOP
 NOP
 NOP
 NOP
 DECFSZ E2PROM_cnt,1
 GOTO OUT_LOOP
 BCF PORTC,SCLK
 BSF STATUS,5
 MOVLW DATA_IN
 MOVWF TRISC
 BCF STATUS,5
 NOP
 NOP
 BSF PORTC,SCLK
 NOP
 NOP
 NOP
 NOP
 NOP
 NOP
WAIT_ACK_LOOP
 BTFSC PORTC,SDAT
 GOTO WAIT_ACK_LOOP
 BCF PORTC,SCLK
 NOP
 NOP
 NOP
 NOP
 NOP
 NOP
 RETURN
;*****Byte in code
E2PROM_BYTE_IN
 MOVLW 08H
 MOVWF E2PROM_cnt
 CLRF E2PROM_data
 BSF STATUS,5
 MOVLW DATA_IN
 MOVWF TRISC
 BCF STATUS,5
 BCF STATUS,0
IN_LOOP
 RLF E2PROM_data,1
 BCF PORTC,SCLK
 NOP
 NOP
 NOP
 NOP
 NOP
 BSF PORTC,SCLK
 NOP
 NOP
 NOP
 BTFSS PORTC,SDAT
 GOTO REC_DOWN_SDAT
 BSF E2PROM_data,0
 GOTO IN_NEXT_BIT
REC_DOWN_SDAT
 BCF E2PROM_data,0
IN_NEXT_BIT
 NOP
 NOP
 NOP
 BCF PORTC,SCLK
 NOP
 NOP
 NOP
 DECFSZ E2PROM_cnt,1
 GOTO IN_LOOP
 NOP
 NOP
 NOP
 RETURN
;*****Read code
READ_E2PROM
 MOVLW 0A0H
 MOVWF E2PROM_data
 CALL E2PROM_START
 CALL E2PROM_BYTE_OUT
 MOVF E2PROM_addr,0
 MOVWF E2PROM_data
 CALL E2PROM_BYTE_OUT
 MOVLW 0A1H
 MOVWF E2PROM_data
 CALL E2PROM_START
 CALL E2PROM_BYTE_OUT
 CALL E2PROM_BYTE_IN
 CALL E2PROM_STOP
 RETURN
;*****Write code
WRITE_E2PROM
 MOVLW 0A0H
 MOVWF E2PROM_data
 CALL E2PROM_START
 CALL E2PROM_BYTE_OUT
 MOVF E2PROM_addr,0
 MOVWF E2PROM_data
 CALL E2PROM_BYTE_OUT
 MOVF        Need_write_data,0
 MOVWF E2PROM_data
 CALL E2PROM_BYTE_OUT
 CALL E2PROM_STOP
 RETURN

安图县| 永安市| 大宁县| 临沂市| 沂南县| 手游| 涪陵区| 竹山县| 治县。| 凤台县| 郎溪县| 长春市| 洛隆县| 宣恩县| 吴江市| 葵青区| 泌阳县| 绥中县| 葵青区| 嘉荫县| 府谷县| 葵青区| 赞皇县| 文登市| 乐东| 安化县| 龙山县| 教育| 陆丰市| 宁蒗| 和顺县| 安溪县| 永善县| 尤溪县| 青阳县| 克山县| 石家庄市| 韶关市| 奉节县| 米泉市| 六盘水市|