| Electronic Components Datasheet Search |
|
93LC56 Datasheet(PDF) 14 Page - Microchip Technology |
|
|
|||||||||||||||||||||||||||||
93LC56 Datasheet(HTML) 14 Page - Microchip Technology |
|
14 / 22 page ![]() DS00560D-page 14 © 1994 Microchip Technology Inc. Using the 93LC56 and 93LC66 0189 002E 0C00 movlw b’00000000' ; get the opcode (00b) 0190 002F 0030 movwf txbuf ; into the output buffer 0191 0030 091C call TX ; and transmit it 0192 0031 0C08 movlw .8 ; set # bits to 8 0193 0032 0032 movwf bits ; 0194 0033 0CC0 movlw b’11000000' ; get opcode and address 0195 ; (11XXXXXX) 0196 0034 0030 movwf txbuf ; into output buffer 0197 0035 091C call TX ; and transmit it 0198 0036 0486 bcf port_b,chpsel ; set chip select line low 0199 0037 0000 nop 0200 ; 0201 ; Now continue on to the write command 0202 ; 0203 ;************************************************************** 0204 ; WRITE 16c5x/7x Cross-Assembler V4.12 Released Mon Jun 06 10:49:00 1994 Page 5 Line PC Opcode 0205 ; This routine writes a AA55h pattern into 0206 ; 8 consecutive addresses starting at address 00. 0207 ; It will then ‘poll’ the data out line to determine 0208 ; when the write cycle is complete. If the cycle has 0209 ; not completed within 20 ms, then it will continue 0210 ; anyway and turn the timeout fail LED on. 0211 ; The write is done in the x16 mode: the user must 0212 ; have the ORG pin tied to Vcc on the device. This 0213 ; program will repeat forever. 0214 ;**************************************************************** 0215 WRITE 0216 ; 0217 0038 0C00 movlw .0 ; set starting address to 00 0218 0039 002C movwf addr ; 0219 003A 0C08 movlw .8 ; set number of bytes to write as 8 0220 003B 0033 movwf bytcnt ; 0221 ; 0222 003C 0907 topwr call BSTART ; generate the start bit 0223 ; 0224 003D 0C02 movlw .2 ; set # bits to 2 for the opcode 0225 003E 0032 movwf bits ; 0226 003F 0C40 movlw b’01000000' ; get opcode (01b) 0227 0040 0030 movwf txbuf ; into the transmit buffer 0228 0041 091C call TX ; and send it 0229 ; 0230 0042 0C08 movlw .8 ; set # of bits to 8 for the 0231 0043 0032 movwf bits ; address 0232 0044 020C movf addr,w ; get address counter 0233 0045 0030 movwf txbuf ; into output buffer 0234 0046 091C call TX ; and send it 0235 0047 0CAA movlw b’10101010' ; get first half of data (AAh) 0236 0048 0030 movwf txbuf ; into the transmit buffer 0237 0049 091C call TX ; and send it 0238 004A 0C55 movlw b’01010101' ; get second half of data (55h) 0239 004B 0030 movwf txbuf ; into transmit buffer 0240 004C 091C call TX ; and send it 0241 ; 0242 004D 0486 bcf port_b,chpsel ; clear the chip select line 0243 ; to initiate write cycle 0244 004E 0000 nop 0245 004F 0586 bsf port_b,chpsel ; set the chip sel line high 0246 ; to begin data polling 0247 0050 0CC8 movlw .200 ; 0248 0051 0035 movwf loops ; poll 100 times before timeout(about 20ms) 0249 0052 0901 polltop call dpdelay ; wait 100us 0250 0053 06E6 btfsc port_b,datout ; is the data out line high? 0251 0054 0A59 goto okpoll ; yes-cycle complete: do another 0252 0055 02F5 decfsz loops ; has it timed out? 8-112 |
|
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |