09.01.2013 Views

Motorola Semiconductor Engineering Bulletin EB422 Enhanced

Motorola Semiconductor Engineering Bulletin EB422 Enhanced

Motorola Semiconductor Engineering Bulletin EB422 Enhanced

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Freescale <strong>Semiconductor</strong>, Inc...<br />

<strong>Engineering</strong> <strong>Bulletin</strong><br />

Freescale <strong>Semiconductor</strong>, Inc.<br />

0115 bf37 26 f3 BNE LOOP<br />

0116 bf39 NOEE EQU *<br />

0117 ******************************************************************<br />

0118 * WRITE OVER ENTIRE RAM, EXCEPT LAST TWO BYTES<br />

0119 * WHICH ARE USED BY THE STACK & $0000 WHICH IS<br />

0120 * LEFT INTACT<br />

0121 *<br />

0122 bf39 ERAM EQU *<br />

0123 bf39 3c PSHX<br />

0124 bf3a ce 07 fd LDX #RAMEND-2<br />

0125 bf3d LOP1 EQU *<br />

0126 bf3d a7 00 STAA $00,X<br />

0127 bf3f 09 DEX<br />

0128 bf40 26 fb BNE LOP1<br />

0129 bf42 38 PULX<br />

0130 bf43 20 0e BRA ECONFG<br />

0131<br />

0132 ******************************************************************<br />

0133 * BOOTLOADER SUBROUTINES<br />

0134 *<br />

0135 * EEPROM ERASE SUBROUTINE<br />

0136 *<br />

0137 * ASSUMES CALLING ROUTINE HAS ALREADY SET ERASE<br />

0138 * AND EELAT BITS, AS WELL AS ACCESSED WHATEVER<br />

0139 * IS TO BE ERASED<br />

0140 *<br />

0141 * ENTRY X=$1000<br />

0142 * EXIT X=$1000, Y=$0000<br />

0143 *<br />

0144 bf45 ERASE EQU *<br />

0145 * SET EEPGM BIT<br />

0146 bf45 1c 3b 01 BSET PPROG,X $01<br />

0147 * 10 MILLISEC DELAY @ 2.1 MHZ<br />

0148 bf48 18 ce 0b b8 LDY #3000<br />

0149 bf4c 18 09 BK1 DEY<br />

0150 bf4e 26 fc BNE BK1<br />

0151 * TURN OFF ERASE AND EELAT BITS<br />

0152 bf50 6f 3b CLR PPROG,X<br />

0153 bf52 39 RTS<br />

0154<br />

0155 ******************************************************************<br />

0156 * NOW ERASE CONFIG REGISTER<br />

0157 *<br />

0158 bf53 ECONFG EQU *<br />

0159 * SET ERASE AND EELAT BITS<br />

0160 bf53 e7 3b STAB PPROG,X (B STILL = $06)<br />

0161 * WRITE CONFIG REGISTER LATCH IT FOR ERASURE<br />

0162 bf55 e7 3f STAB CONFIG,X<br />

0163 bf57 8d ec BSR ERASE<br />

0164 ********<br />

0165 * ERASE CYCLE IS COMPLETE<br />

0166 *<br />

0167 ******************************************************************<br />

0168 * NON-SECURITY AND SECURITY MODES MEET HERE<br />

0169 *<br />

0170 bf59 NOSEC EQU *<br />

0171 ********<br />

0172 * SET UP DELAY FOR FASTEST BAUD RATE<br />

0173 bf59 cc 02 1b LDD #DELAYF<br />

0174 bf5c ed 16 STD TOC1,X<br />

0175 ********<br />

0176 * SEND BREAK TO SIGNAL START OF DOWNLOAD<br />

0177 bf5e 1c 2d 01 BSET SCCR2,X $01<br />

0178 * CLEAR BREAK AS SOON AS START BIT IS DETECTED<br />

0179 bf61 1e 08 01 fc BRSET PORTD,X $01 *<br />

0180 bf65 1d 2d 01 BCLR SCCR2,X $01 CLEAR BREAK<br />

0181 * WAIT FOR FIRST CHARACTER (USERS SEND $FF)<br />

0182 bf68 1f 2e 20 fc BRCLR SCSR,X $20 * WAIT FOR RDRF<br />

0183 bf6c a6 2f LDAA SCDAT,X READ DATA<br />

<strong>EB422</strong><br />

50 MOTOROLA<br />

For More Information On This Product,<br />

Go to: www.freescale.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!