| Electronic Components Datasheet Search |
|
P89C668 Datasheet(PDF) 69 Page - NXP Semiconductors |
|
|
|||||||||||||||||||||||||||||
P89C668 Datasheet(HTML) 69 Page - NXP Semiconductors |
|
69 / 89 page ![]() Philips Semiconductors Product data P89C660/P89C662/P89C664/ P89C668 80C51 8-bit Flash microcontroller family 16KB/32KB/64KB ISP/IAP Flash with 512B/1KB/2KB/8KB RAM 2002 Oct 28 69 In Application Programming Method Several In Application Programming (IAP) calls are available for use by an application program to permit selective erasing and programming of Flash sectors. All calls are made through a common interface, PGM_MTP. The programming functions are selected by setting up the microcontroller’s registers before making a call to PGM_MTP at FFF0H. The oscillator frequency is an integer number rounded down to the nearest megahertz. For example, set R0 to 11 for 11.0592 MHz. Results are returned in the registers. The IAP calls are shown in Table 15. Using the Watchdog Timer (WDT) The 89C66x devices support the use of the WDT in IAP. The user specifies that the WDT is to be fed by setting the most significant bit of the function parameter passed in R1 prior to calling PGM_MTP. The WDT function is only supported for Block Erase when using the Quick Block Erase. The Quick Block Erase is specified by performing a Block Erase with register R0 = 0. Requesting a WDT feed during IAP should only be performed in applications that use the WDT since the process of feeding the WDT will start the WDT if the WDT was not working. Table 15. IAP calls IAP CALL PARAMETER PROGRAM DATA BYTE Input Parameters: R0 = osc freq (integer) R1 = 02h R1 = 82h (WDT feed, Rx2 & 66x only) DPTR = address of byte to program ACC = byte to program Return Parameter ACC = 00 if pass, !00 if fail Sample routine: ;***** Program Device Data (DData) ***** ;***** ACC holds data to write ;***** DPTR holds address of byte to write ***** ;***** Returns with ACC = 00h if successful, else ACC NEQ 00h WRData: MOV AUXR1,#20H ;set the ENBOOT bit MOV R0, #11 ;FOSC MOV R1,#02H ;program data function MOV A,Mydata ;data to write MOV DPTR,Address ;specify address of byte to read CALL PGM_MTP ;execute the function RET ERASE BLOCK Input Parameters: R0 = osc freq (integer) R0 = 0 (QUICK ERASE, Rx2 & 66x only) R1 = 01h R1 = 81h (WDT feed, Rx2 & 66x only; can only be used with Quick Erase) DPH = block code as shown below: block 0, 0k to 8k, 00H block 1, 8k to 16k, 20H block 2, 16k to 32k, 40H block 3, 32k to 48k, 80H block 4, 48k to 64k, C0H DPL = 00h Return Parameter none Sample routine: ;***** Erase Code Memory Block ***** ;***** DPH (7:5) indicates which of the 5 blocks to erase ;***** DPTR values for the blocks are: ; 0000h = block 0 ; 2000h = block 1 ; 4000h = block 2 ; 8000h = block 3 ; C000h = block 4 ERSBLK: MOV AUXR1,#20H ;set the ENBOOT bit MOV R0, #11 ;FOSC MOV R1,#01H ;erase block MOV DPTR,#BLk_NUM ;specify which block CALL PGM_MTP ;execute the function RET |
|
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 |