2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 11 PIC12F629 Introduction PIC12F629PIC12F629 IntroductionIntroduction VojtVojtěěchch KrmKrmííččekek vojtec@vojtec@icsics..munimuni..czcz 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 22 Basic DataBasic Data High Performance RISC CPU: ­ Only 35 instructions to learn ­ All single cycle instructions except branches Operating speed: ­ 20 MHz oscillator/clock input ­ 200 ns instruction cycle Interrupt capability ­ 8-level deep hardware stack Direct, Indirect, and Relative Addressing modes 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 33 Basic DataBasic Data Special Microcontroller Features: ­ Internal and external oscillator options ­ Precision Internal 4 MHz oscillator factory calibrated to 1% ­ External Oscillator support for crystals and resonators ­ Power saving SLEEP mode ­ 5s wake-up from SLEEP, 3.0V, typical ­ Wide operating voltage range - 2.0V to 5.5V 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 44 Basic dataBasic data Low Power Features: ­ Standby Current: ­ 1nA @ 2.0V, typical Operating Current: ­ 8.5A @ 32 kHz, 2.0V, typical ­ 100A @ 1 MHz, 2.0V, typical Watchdog Timer Current ­ 300 nA @ 2.0V, typical Timer1 oscillator current: ­ 4A @ 32 kHz, 2.0V, typical 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 55 Basic DataBasic Data Peripheral Features: ­ 6 I/O pins with individual direction control ­ High current sink/source for direct LED drive ­ Analog comparator module with: One analog comparator Programmable on-chip comparator voltage reference (CVREF) module Programmable input multiplexing from device inputs Comparator output is externally accessible 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 66 Basic DataBasic Data Peripheral Features: ­ Analog-to-Digital Converter module (PIC12F675): 10-bit resolution Programmable 4-channel input Voltage reference input 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 77 Basic DataBasic Data Peripheral Features: ­ Timer0: 8-bit timer/counter with 8-bit programmable prescaler ­ Enhanced Timer1: 16-bit timer/counter with prescaler External Gate Input mode Option to use OSC1 and OSC2 in LP mode as Timer1 oscillator, if INTOSC mode selected ­ In-Circuit Serial ProgrammingTM (ICSPTM) via two pins 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 88 Basic dataBasic data PackagePackage 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 99 BlockBlock diagramdiagram 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 1010 MemoryMemory Map &Map & StackStack 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 1111 RegistersRegisters 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 1212 StatusStatus 2.3.20102.3.2010 PB171 Spring 2010PB171 Spring 2010 1313 InstructionInstruction setset