您当前的位置:五五电子网电子知识单片机-工控设备PIC单片机pic16f627键盘显示+E2PROM存取+模拟I2C总线通信等模块示例程序 正文
pic16f627键盘显示+E2PROM存取+模拟I2C总线通信等模块示例程序

pic16f627键盘显示+E2PROM存取+模拟I2C总线通信等模块示例程序

点击数:7923 次   录入时间:03-04 11:52:16   整理:http://www.55dianzi.com   PIC单片机

STA:  BSF PORTA,SDA
  BSF PORTA,SCL
  NOP
  NOP
  NOP
  NOP
  BCF PORTA,SDA
  NOP
  NOP
  NOP
  NOP
  BCF PORTA,SCL
  RETURN
  
STOP:  BCF PORTA,SDA
  BSF PORTA,SCL
  NOP
  NOP
  NOP
  NOP
  BSF PORTA,SDA
  NOP
  NOP
  NOP
  NOP
  BCF PORTA,SDA
  BCF PORTA,SCL
  RETURN  
  
CACK:  BSF STATUS,RP0
  BSF TRISA,SDA
  BCF STATUS,RP0
  BSF PORTA,SCL
  NOP
  NOP
  NOP
  NOP
  BCF BIT_SG,F0
  BTFSC PORTA,SDA
  BSF BIT_SG,F0
CEND:  BCF PORTA,SCL
  BSF STATUS,RP0
  BCF TRISA,SDA
  BCF STATUS,RP0    
  RETURN
  
WRBYT:  MOVLW 08H
  MOVWF CUNT1
WLP:  RLF WW,F
  BTFSS STATUS,C ;SKPC
  GOTO WR0
  GOTO WR1
WLP1:  DECFSZ CUNT1,F
  GOTO WLP
  RETURN
WR1:  BSF PORTA,SDA
  BSF PORTA,SCL
  NOP
  NOP
  NOP
  NOP
  BCF PORTA,SCL
  BCF PORTA,SDA
  GOTO WLP1
WR0:  BCF PORTA,SDA
  BSF PORTA,SCL
  NOP
  NOP
  NOP
  NOP
  BCF PORTA,SCL
  GOTO WLP1

;//////////////////////////////////////////////////////////////////////////   
;//////////////////////////////////////////////////////////////////////////
EEPROM_R: ;EEPROM 读子程序,把地址ADDR中内容读至DATA0
  BCF STATUS,RP1 ;BANK0
  BCF STATUS,RP0
  MOVF ADDR,W
  BSF STATUS,RP0 ;BANK1
  MOVWF EEADR
  BCF EECON1,WRERR
  BSF EECON1,RD
  MOVF EEDATA,W
  BCF STATUS,RP0 ;BANK0
  MOVWF DATA0
  RETURN   ;不带参数返回
;//////////////////////////////////////////////////////////////////////////  
EEPROM_W: ;EEPROM 写子程序,把VALU中数值写入地址ADDR  
  CLRWDT
  BCF STATUS,RP1 ;BANK1
  BSF STATUS,RP0
  BTFSC EECON1,WR ;等待写允许
  GOTO $-1
  BCF STATUS,RP0 ;BANK0
  MOVF ADDR,W
  BSF STATUS,RP0 ;BANK1
  MOVWF EEADR
  BCF STATUS,RP0 ;BANK0
  MOVF VALU,W
  BSF STATUS,RP0 ;BANK1
  MOVWF EEDATA
  BCF EECON1,WRERR
  BSF EECON1,WREN
  BCF INTCON,GIE
  MOVLW 55H
  MOVWF EECON2
  MOVLW 0AAH
  MOVWF EECON2
  BSF EECON1,WR
  BTFSC EECON1,WR
  GOTO $-1
  BSF INTCON,GIE ;写结束
  BCF EECON1,WREN
  BCF STATUS,RP0 ;BANK0
  RETURN   ;不带参数返回
;////////////////////////////////////////////////////////////////////////
;////////////////////////////////////////////////////////////////////////  
DELAY:  MOVLW 05H 
  MOVWF CUNT3
DELAY1:  NOP   ;2ms
  CLRWDT
  MOVLW 0FFH
  MOVWF CUNT4
DELAY2:  NOP
  MOVF CUNT4,W 
  NOP
  BTFSC STATUS,Z
  GOTO DELAY3
  NOP
  DECF CUNT4,F
  NOP
  GOTO DELAY2
DELAY3:  NOP
  MOVF CUNT3,W 
  BTFSC STATUS,Z
  GOTO DELAY_RET
  NOP
  DECF CUNT3,F
  NOP
  GOTO DELAY1
  NOP 
DELAY_RET: RETURN 
;////////////////////////////////////////////////////////////////////////
;////////////////////////////////////////////////////////////////////////  
  FILL (GOTO $),NEXT_BLOCK-$
  ORG 03FFH
NEXT_BLOCK:
    END 
 
pic16f627键盘显示+E2PROM存取+模拟I2C总线通信等模块示例程序



上一页  [1] [2] [3] [4] 


本文关键字:通信  程序  键盘  PIC单片机单片机-工控设备 - PIC单片机

上一篇:pic16f84 LED频率计