PIC12F508-E/MS Microchip Technology, PIC12F508-E/MS Datasheet
![no-image](/images/manufacturer_photos/0/4/439/microchip_technology_sml.jpg)
PIC12F508-E/MS
Specifications of PIC12F508-E/MS
Related parts for PIC12F508-E/MS
PIC12F508-E/MS Summary of contents
Page 1
... Legend Input Output Power Note 1: In the PIC12F508/509, the programming high voltage is internally generated. To activate the Program/ Verify mode, high voltage of I © 2007 Microchip Technology Inc. PIC12F508/509 1.2 Program/Verify Mode The Program/Verify mode for the PIC12F508/509 allows programming of user program memory, user ID locations, backup OSCCAL location and the Configura- tion Word ...
Page 2
... MEMORY MAPPING 2.1 User Program Memory Map The user memory space extends from (0x000-0x1FF) on the PIC12F508 and (0x000-0x3FF) on the PIC12F509. In Program/Verify mode, the program memory space extends from (0x000-0x3FF) for the PIC12F508 and (0x000-0x7FF) for the PIC12F509. The first half, (0x000-0x1FF) and (0x000-0x3FF), respectively, is user program memory ...
Page 3
... The programming sequence loads a word, programs, verifies and finally increments the PC. Program/Verify mode entry will set the address to 0x3FF for the PIC12F508 and 0x7FF for the PIC12F509. The Increment Address command will increment the PC. The available commands are shown in Table 3-1. ...
Page 4
... PIC12F508/509 3.1.2.1 Load Data For Program Memory After receiving this command, the chip will load in a 14-bit “data word” when 16 cycles are applied, as described previously. Because this is a 12-bit core, the two MSbs of the data word are ignored. A timing diagram for the Load Data command is shown in Figure 3-1 ...
Page 5
... A timing diagram of this command is shown in Figure 3- not possible to decrement the address counter. To reset this counter, the user must either exit and re-enter Program/Verify mode or increment the PC from 0x3FF for the PIC12F508 or 0x7FF for the PIC12F509 to 0x000. FIGURE 3-4: INCREMENT ADDRESS COMMAND 1 ...
Page 6
... PIC12F508/509 3.1.2.5 End Programming The End Programming command terminates the program process. A delay of T (see Table 6-1) is DIS required before the next command to allow the internal programming voltage to discharge (see Figure 3-6). FIGURE 3-6: END PROGRAMMING (EXTERNALLY TIMED) 1 ICSPCLK 0 ICSPDAT 3.1.2.6 ...
Page 7
... Program Memory Space First User ID Location E FIGURE 3-7: BULK ERASE PROGRAM MEMORY COMMAND 1 2 ICSPCLK 1 ICSPDAT T 1 SET T HLD © 2007 Microchip Technology Inc. Configuration Memory Space Configuration Reset Vector Word Preliminary PIC12F508/509 Backup User ID OSCCAL ERA Next Command 1 2 DS41227E-page 7 ...
Page 8
... PIC12F508/509 FIGURE 3-8: READING AND TEMPORARY SAVING OF THE OSCCAL CALIBRATION BITS Increment Address Increment Address DS41227E-page 8 Start Enter Programming Mode 0x1FF/0x3FF? Yes Read Calibration Bits and Save in Computer/Programmer Temp. Memory 0x204/0x404? Yes Read Backup OSCCAL Calibration Bits and Save in Computer/Programmer Temp. Memory ...
Page 9
... FIGURE 3-9: RESTORING/PROGRAMMING THE OSCCAL CALIBRATION BITS Increment Address Increment Address © 2007 Microchip Technology Inc. PIC12F508/509 Start Enter Programming Mode 0x1FF/0x3FF? Yes Read Calibration Bits from Computer/Programmer Temp. Memory Write Calibration Bits back as the operand of a MOVLW instruction to 0x1FF/0x3FF 0x204/0x404? ...
Page 10
... PIC12F508/509 FIGURE 3-10: PROGRAM FLOWCHART – PIC12F508/509 PROGRAM MEMORY Start Read and save OSCCAL bits ( Figure 3-8 Enter Programming Mode PC = 0x3FF/0x7FF (Config Word) Increment Address Bulk Erase Device One Word Program Cycle Read Data from Program Memory Data Correct? Yes Increment ...
Page 11
... FIGURE 3-11: PROGRAM FLOWCHART – PIC12F508/509 CONFIGURATION MEMORY Start Enter Programming Mode PC = 0x3FF/0x7FF (Config Word) Load Data Command One-Word Programming Cycle (see Figure 3-10) Read Data Command Data No Correct? Yes Increment Address Command No Address = 0x200/0x400? Yes Load Data Command One-Word Programming ...
Page 12
... PIC12F508/509 FIGURE 3-12: PROGRAM FLOWCHART – ERASE PROGRAM MEMORY, CONFIGURATION WORD Start Read and save OSCCAL bits ( Figure 3-8 ) Enter Program/Verify mode PC = 0x3FF/0x7FF (Config Word) DS41227E-page 12 Bulk Erase Device Wait T ERA Restore OSCCAL bits ( Figure 3-9 ) Exit Programming Mode Done Preliminary ...
Page 13
... FIGURE 3-13: PROGRAM FLOWCHART – ERASE PROGRAM MEMORY, CONFIGURATION WORD AND USER ID Start Increment PC © 2007 Microchip Technology Inc. PIC12F508/509 Read and save OSCCAL bits ( Figure 3-8 ) Enter Program/Verify mode PC = 0x3FF/0x7FF (Config Word 0x200/0x400? (First User ID) Yes Bulk Erase Device Restore OSCCAL bits ...
Page 14
... PIC12F508/509 4.0 CONFIGURATION WORD The PIC12F508/509 has several Configuration bits. These bits can be programmed (reads ‘0’) or left unchanged (reads ‘1’), to select various device configurations. REGISTER 4-1: CONFIGURATION WORD – PIC12F508/509 — — — — bit 11 bit 11-5 Unimplemented: Read as ‘1’ ...
Page 15
... Checksum is calculated by reading the contents of the PIC12F508/509 memory locations and adding up the opcodes up to the maximum user addressable location (e.g., 0x1FF for the PIC12F508). Any Carry bits exceeding 16 bits are neglected. Finally, the Configura- tion Word (appropriately masked) is added to the checksum. Checksum computation for the PIC12F508/ 509 is shown in Table 5-1 ...
Page 16
... PIC12F508/509 TABLE 5-1: CHECKSUM COMPUTATIONS – PIC12F508 Device Code-Protect PIC12F508 OFF SUM[0x000:0x1FE] + CFGW & 0x01F ON SUM[0x00:0x3F] + CFGW & 0x01F + SUM_ID Legend: CFGW = Configuration Word SUM[a:b] = [Sum of locations inclusive] SUM_ID = User ID locations masked by 0xF then made into a 16-bit value with ID0 as the Most Significant nibble ...
Page 17
... DD Preliminary PIC12F508/509 10°C ≤ T ≤ 40°C A 4.5V ≤ V ≤ 5.5V DD Conditions/ Max. Units Comments 5.5 V 5.5 V 0.5 mA 0.5 mA 13.5 V 0.45 mA μs 1.0 μ ...
Page 18
... PIC12F508/509 NOTES: DS41227E-page 18 Preliminary © 2007 Microchip Technology Inc. ...
Page 19
... PowerInfo, PowerMate, PowerTool, REAL ICE, rfLAB, Select Mode, Smart Serial, SmartTel, Total Endurance, UNI/O, WiperLock and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries. SQTP is a service mark of Microchip Technology Incorporated in the U.S.A. All other trademarks mentioned herein are property of their respective companies. ...
Page 20
... Taiwan - Kaohsiung Tel: 886-7-536-4818 Fax: 886-7-536-4803 Taiwan - Taipei Tel: 886-2-2500-6610 Fax: 886-2-2508-0102 Thailand - Bangkok Tel: 66-2-694-1351 Fax: 66-2-694-1350 Preliminary © 2007 Microchip Technology Inc. EUROPE Austria - Wels Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 Denmark - Copenhagen Tel: 45-4450-2828 Fax: 45-4485-2829 France - Paris Tel: 33-1-69-53-63-20 ...