EasyManua.ls Logo

STC micro STC8A8K64D4 Series - Page 847

Default Icon
901 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
STC8A8K64D4 Series Manual
- 831 -
ISP Code (assembly code)
; Operating frequency for test is 11.0592MHz
UARTBAUD EQU 0FFE8H ;Define the serial port baud rate (65536-11059200/4/115200)
AUXR DATA 08EH ;Additional Function Control Register
WDT_CONTR DATA 0C1H ;Watchdog Control Register
IAP_DATA DATA 0C2H ;IAP data register
IAP_ADDRH DATA 0C3H ;IAP High Address Register
IAP_ADDRL DATA 0C4H ;IAP Low Address Register
IAP_CMD DATA 0C5H ;IAP Command Register
IAP_TRIG DATA 0C6H ;IAP Command Trigger Register
IAP_CONTR DATA 0C7H ;IAP Control Register
IAP_TPS DATA 0F5H ;IAP latency control register
ISPCODE EQU 0FA00H ;ISP module entry address (1 page), also external interface address
APENTRY EQU 0FC00H ; Application entry address data (1 page)
ORG 0000H
LJMP ISP_ENTRY ;System reset entry
RESET:
MOV SCON,#50H ;Set serial port mode (8 data bits, no parity bit)
MOV AUXR,#40H ;Timer 1 is in 1T mode
MOV TMOD,#00H ;Timer 1 works in mode 0 (16-bit reload)
MOV TH1,#HIGH UARTBAUD ;set reload value
MOV TL1,#LOW UARTBAUD
SETB TR1 ;start timer 1
NEXT1:
MOV R0,#16
NEXT2:
JNB RI,$ ;Waiting for serial data
CLR RI
MOV A,SBUF
CJNE A,#7FH,NEXT1 ;Determine whether it is 7F
DJNZ R0,NEXT2
LJMP ISP_DOWNLOAD ;Jump to download interface
ORG ISPCODE
ISP_DOWNLOAD:
CLR A
MOV PSW,A ;ISP module uses group 0 registers
MOV IE,A ;Disable all interrupts
CLR RI ;Clear serial port receive flag
SETB TI ; Set serial port send flag
CLR TR0
MOV SP,#5FH ;set stack pointer
MOV A,#5AH ;Return 5A 55 to PC, indicating ISP erase module is ready
LCALL ISP_SENDUART
MOV A,#055H
LCALL ISP_SENDUART
LCALL ISP_RECVACK ;Receive response data

Table of Contents

Related product manuals