PIC12C672 MICROCHIP [Microchip Technology], PIC12C672 Datasheet - Page 80

no-image

PIC12C672

Manufacturer Part Number
PIC12C672
Description
8-Pin, 8-Bit CMOS Microcontroller with EEPROM Data Memory
Manufacturer
MICROCHIP [Microchip Technology]
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC12C672-04/P
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
PIC12C672-04/SM
Manufacturer:
MIC
Quantity:
141
Part Number:
PIC12C672-04/SM
Manufacturer:
MICROCHIP
Quantity:
1 000
Part Number:
PIC12C672-04/SM
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Company:
Part Number:
PIC12C672-04/SM
Quantity:
540
Part Number:
PIC12C672-04/SO
Manufacturer:
MIC
Quantity:
20 000
Part Number:
PIC12C672-10E/SM
Manufacturer:
MICROCH
Quantity:
20 000
Part Number:
PIC12C672/JW
Manufacturer:
MICKO
Quantity:
2 100
Part Number:
PIC12C672/JW
Manufacturer:
CY
Quantity:
1 650
PIC12CE5XX
;************
;***************************************************************************
OUTPUT_BYTE
;**************************
;***************************************************************************
;
;
;*****
;***************************************************************************
;**********
;***************************************************************************
INIT_ADDRESS
INIT_WRITE_DATA
INIT_READ_CONTROL
DS40172A-page 80
BCF
RLF
BCF
SKPNC
BSF
NOP
BSF
DECFSZ COUNTER, F
GOTO
NOP
BCF
NOP
BSF
GOTO
NOP
NOP
BSF
BTFSC
BCF
BCF
BTFSS
GOTO
GOTO
GOTO
GOTO
GOTO
GOTO
GOTO
GOTO
INCF
MOVF
GOTO
INCF
MOVF
GOTO
BSF
BSF
INCF
MOVLW
GOTO
Set up program counter offset, based on EEPROM operating mode
MOVF
ANDLW
ADDWF
I2C_PORT,SCL
EEBYTE, F
I2C_PORT,SDA
I2C_PORT,SDA
I2C_PORT,SCL
OUTPUT_BYTE
I2C_PORT,SCL
I2C_PORT,SDA
$+1
I2C_PORT,SCL
I2C_PORT,SDA
PC_OFFSET,EE_OK
I2C_PORT,SCL
PC_OFFSET,EE_OK
STOP_BIT
INIT_ADDRESS
INIT_WRITE_DATA
STOP_BIT
INIT_ADDRESS
INIT_READ_CONTROL
READ_BIT_COUNTER
STOP_BIT
PC_OFFSET, F
EEADDR,W
PREP_TRANSFER_BYTE
PC_OFFSET, F
EEDATA,W
PREP_TRANSFER_BYTE
I2C_PORT,SCL
I2C_PORT,SDA
PC_OFFSET, F
B'10100001'
START_BIT
Initalize EEPROM data (address, data, or control) bytes
Clock out data (control, address, or data) byte
PC_OFFSET,W
B'00001111'
PCL, F
Acknowkedge Check *****************************
; Set clock low during data set-up
; Rotate left, high order bit into carry bit
; Set data low, if rotated carry bit is
;
; reset data pin to a one, otherwise leave low
; clock data into EEPROM
; Repeat until entire byte is sent
; Needed to meet Timing (Thigh=4000nS)
; Set SCL low, 0.5us < ack valid < 3us
; Needed to meet Timing (Tlow= 4700nS)
;
; Necessary for SCL Tlow at low voltage,
; Tlow=4700nS
; Raise SCL, EEPROM acknowledge still valid
; Check SDA for acknowledge (low)
; If SDA not low (no ack), set error flag
; Lower SCL, EEPROM release bus
; If no error continue, else stop bit
;PC offset=0, write control done, send address
;PC offset=1, write address done, send data
;PC offset=2, write done, send stop bit
;PC offset=3, write control done, send address
;PC offset=4, send read control
;PC offset=5, set counter and read byte
;PC offset=6, random read done, send stop
; Increment PC offset to 2 (write) or to 4 (read)
; Put EEPROM address in W, ready to send to EEPROM
; Increment PC offset to go to STOP_BIT next
; Put EEPROM data in W, ready to send to EEPROM
; Raise SCL
; raise SDA
; Increment PC offset to go to READ_BIT_COUNTER next
; Set up read control byte, ready to send to EEPROM
;
a '1', then:
bit 0 = '1' for read operation
Preliminary
************
******
*****
1997 Microchip Technology Inc.

Related parts for PIC12C672