MICROCONTROLLER INTERNAL EEPROM ?

This is the place for any magazine-related discussions that don't fit in any of the column discussion boards below.
Post Reply
mikeb
Posts: 85
Joined: Fri Jul 12, 2002 1:01 am
Location: calif.
Contact:

MICROCONTROLLER INTERNAL EEPROM ?

Post by mikeb »

IS THERE ANY 1 WITH KNOWLEDGE ABOUT MICROCONTROLLER INTERNAL EEPROMS, MY QUESTION AND PROBLEM FOLLOWS. FIRST I RECENTLY PURCHASED A HC11A1P MICROCONTOLLER THAT HAD IS INTERNAL EEPROM OFF THIS IS UNUSAL FOR THIS FAMILY OF CHIPS FROM WHAT I KNOW ABOUT THE CHIP. SO I VISITED THE MOTOROLA WEB SITE AND FOUND THE SOURCE CODE FOR VERIFYING AND REPROGRAMMING THE CONFIG REGISTER SO THAT AFTER RESET THE INTERNAL EEPROM IS SET. WHAT IM WANTING TO DO IS BURN THIS CODE TO A 27C256 EEPROM AND RUN IT ON A TRAINER BOARD TO CHANGE THE VALUE IN THE CONFIG REGISTER SO THAT THE INTERNAL EEPROM IS SET ON RESET. I WAS WONDERING IF I DO THIS WILL THE HC11 CHIP STILL HAVE THE NEW VALUE IN THE CONFIG REGISTER AFTER THE EXTERNAL EEPROM HAS BEEN REMOVED AND NEW FIRMWARE CHIP IS INSTALLED OR DOES THE VERIFY REPROGRAMMING CODE NEED TO BE A PART OF THE MAIN PROGRAM IN THE MAIN FIRMWARE CHIP. I HAVE LISTED THEURL FOR THE MOTOROLA SITE FOR THE COCUMENTATION AND I HAVE ALSO PASTED THE LISTING FILE FOR THE CODE AFTER IT WAS ASSEMBLED BY AS11 CROSSASSEMBLER. ALSO THERE IS 3 LINES OF THE CODE
(21-36-42) THAT DOES NOT MAKE MUCH SENSE TO ME SO IF U COULD BREAK IT DOWN FOR ME I WOULD MUCH APPRECIATE IT.

MOTOROLA WEBSITE FOR THE DOCUMENTATION ON VERIFYING AND REPROGRAMMING THE CONFIG:<p>E-WWW.MOTOROLA.COM/BRDATA/PDFB/DOCS/EB378.PDF <p>
ASM LIST FILE : <p>HC11 Micro-controlle\AS11\EEPROM VERIFICATION AND PROGRAMMING SEQUENCE.lst -
generated by MGTEK Assembler ASM11 V1.16 Build 101 for WIN32 (x86) -
Wed Feb 19 18:14:15 2003<p> 1:***FILENAME:CONFIG.ASM**************************
2: *
3: ***DESCRIPTION: THIS CODE CHEKS THE CONFIG REGISTER ON AN EEPROM BASED
4: ***HC11 DEVICE AND REPROGRAMS IT WITH THE PROPER VALUE IF NECESSARY.
5: *
6: =00001000 REGBASE EQU $1000 ;BEGINNING OF REGISTERS
7: ***OFFSETS FROM THE BEGINNING OF THE REGISTER BLOCK
8: =0000000E TCNT EQU $0E
9: =0000001C TOC4 EQU $1C
10: =00000023 TFLG1 EQU $23
11: =00000035 BPROT EQU $35
12: =00000039 OPTION EQU $39
13: =0000003B PPROG EQU $3B
14: =0000003F CONFIG EQU $3F
15: =0000005A CSCSTR EQU $5A
16: ***THE FOLLOWING REGISTER BIT CONSTANTS ARE NEEDED
17: =00000010 OC4F EQU $10
18: =00000010 PTCON EQU $10
19: =00000008 CME EQU $08
20: =00000010 BYTE EQU $10
21: =00000004 ERASE EQU $04
22: =00000002 EELAT EQU $02
23: =00000001 EEPGM EQU $01
24: ***OTHER USER CONSTANTS SHOULD FOOLOW, INCLUDING:
25: =0000000D MY_CONFIG EQU $0D
26: =00002000 START ORG $2000
27: 2000 7F 005A [06] CLR CSCSTR
28: 2003 8E 00FF [03] LDS #$00FF
29: 2006 CE 1000 [03] LDX #REGBASE
30: 2009 A6 3F [04] LDAA CONFIG,X
31: 200B 81 0D [02] CMPA #MY_CONFIG
32: 200D 27 28 [03] BEQ NORMAL
33: ***49 CLOCK CYCLES REMAIN FOR MODIFICATION TO BE MADE TO CONFIG REGISTER
34: 200F 1D 35 10 [07] BCLR BPROT,X PTCON ;CLEAR CONFIG PROTECT BIT
35: ***CONFIG ERASE SEQUENCE
HC11 Micro-controlle\AS11\EEPROM VERIFICATION AND PROGRAMMING SEQUENCE.txt(36): Error A2015: col(9) bad number
36: LDAA #0F
37: 2012 A7 3B [04] STAA PPROG,X
38: ***THE ERASE SEQUENCE REQUIRES THAT SOME DATA BE STORED TO THE BYTE BEING ERASED
39: ***THE ACTUAL DATA STORED AND INSTRUCTIONS USED ARE IRRELEVANT
40: 2014 A7 3F [04] STAA CONFIG,X ;STORE SOMETHING TO CONFIG REGISTER
HC11 Micro-controlle\AS11\EEPROM VERIFICATION AND PROGRAMMING SEQUENCE.txt(41): Error A2015: col(9) bad number
41: LDAA #0F
42: 2016 97 3B [03] STAA PPROG
43: 2018 BD 2037 [06] JSR EEDELAY ;WAIT 10ms
44: 201B 6F 3B [06] CLR PPROG,X ;FINISH ERASE SEQUENCE
45: ***CONFIG PROGRAM SEQUENCE
46: 201D 86 02 [02] LDAA #EELAT
47: 201F 97 3B [03] STAA PPROG
48: 2021 86 0D [02] LDAA #MY_CONFIG ;DESIRED CONFIG VALUE
49: 2023 A7 3F [04] STAA CONFIG,X
50: 2025 86 03 [02] LDAA #$03
51: 2027 A7 3B [04] STAA PPROG,X
52: 2029 BD 2037 [06] JSR EEDELAY ;WAIT 10 ms
53: 202C 6F 3B [06] CLR PPROG,X ;FINISH PROGRAM SEQUENCE
54: ***NOW ALLOW CLOCK MONITOR TO RESET THE HC11
55: ***AND LATCH THE NEW CONFIG REGISTER VALUE
56: 202E 1C [07] BSET OPTION,X CME ;ENABLE CLOCK MONITOR RESET
57: 2031 07 [02] TPA ;GET CONDITION CODE REGISTER
58: 2032 84 7F [02] ANDA #$7F ;ENABLE STOP MODE
59: 2034 06 [02] TAP
60: 2035 01 [02] NOP
61: 2036 CF [02] STOP ;ENTER STOP MODE AND ALLOW RESET
62: ***USER PROGRAM RESUMES HERE IF CONFIG DOES NOT NEED TO BE REPROGRAMMED***
63: 2037 NORMAL
64:
65: ***THIS DELAY SUBROUTINE MAY BE USED FOR ANY EEPROM PROGRAMMING/ERASE OPERATION
66: 2037 EC 0E [05] EEDELAY LDD TCNT,X ;GET CURRENT TIME
67: 2039 C3 2710 [04] ADDD #10000 ;ADD DELAY
68: 203C ED 1C [05] STD TOC4,X ;ALLOW MATCH AT END OF DELAY
69: 203E 86 10 [02] LDAA #OC4F ;CLEAR LAST OUTPUT COMPARE MATCH
70: 2040 A7 23 [04] STAA TFLG1,X
71: ***WAIT FOR OC4 MATCH TO OCCUR END OF DELAY
HC11 Micro-controlle\AS11\EEPROM VERIFICATION AND PROGRAMMING SEQUENCE.txt(72): Error A2038: col(28) 'oc4': undefined symbol
72: 2042 DELAYLOOP BRCLR TFLG1,X OC4,DELAYLOOP
73: 2042 39 [05] RTS ;END OF DELAY LOOP
74:
75: <p> Symbols:
bprot *00000035
byte 00000010
cme *00000008
config *0000003f
cscstr *0000005a
delayloop *00002042
eedelay *00002037
eelat *00000002
eepgm 00000001
erase 00000004
my_config *0000000d
normal *00002037
oc4 ?00000000
oc4f *00000010
option *00000039
pprog *0000003b
ptcon *00000010
regbase *00001000
start 00000000
tcnt *0000000e
tflg1 *00000023
toc4 *0000001c
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest