which means that writing to a port implies that the port pins are first read, then this value is modified and then written to the port data latch.
|
|
- Willis Douglas
- 6 years ago
- Views:
Transcription
1 Introduction to microprocessors Feisal Mohammed 3rd January 2001 Additional features 1 Input/Output Ports One of the features that differentiates a microcontroller from a microprocessor is the presence of I/O ports. The PIC16F8x has two ports, PORTA, which is 5-bits wide, and PORTB, 8-bits wide. Some of the port pins are multiplexed with an alternate function to support other features. Each port has a direction register associated with it that controls the setting of the direction of each of the lines a port. 1.1 PORTA and TRISA Registers PORTA is at address 0x05 and its direction register, TRISA, is at address 0x85, which means that PORTA is in Bank 0 and TRISA is in Bank 1. Therefore either indirect addressing or bank switching must be performed to access the direction register. PORTA is a 5-bit wide latch with its pins labeled as RA0 to RA4. RA4 is a Schmitt Trigger input and an open drain output. All other RAx port pins have TTL input levels and full CMOS output drivers. All the pins have direction bits which are contained within the TRISA register and thus can be individually configured as either input or output. Setting a TRISA bit will make the corresponding PORTA bit an input and conversely clearing a TRISA bit will make the corresponding PORTA pin an output. A read of the PORTA register reads the status of the pins whereas writing to it will write to the port latch. All write operations are read-modify-write operations which means that writing to a port implies that the port pins are first read, then this value is modified and then written to the port data latch. Name Bit Buffer Type Function RA0 bit0 TTL Input/Output RA1 bit1 TTL Input/Output RA2 bit2 TTL Input/Output RA3 bit3 TTL Input/Output RA4/T0CK1 bit4 ST Input/Output or external clock input for TMR0 Table 1: PORTA Functions Address Name Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Power-on value Normal value 0x05 PORTA RA4/T0CK1 RA3 RA2 RA1 RA0 x xxxx u uuuu 0x85 TRISA TRISA4 TRISA3 TRISA2 TRISA1 TRISA Table 2: Summary of registers associated with PORTA
2 The following example shows how PORTA can be initialized, ; assume that we are in Bank 0 clrf PORTA ; Set the output latches of PORTA to zero bsf STATUS,RP0 ; Switch to Bank 1 movlw 0x0F ; Value for data direction movwf TRISA ; set RA<3:0> as inputs and RA4 as output bcf STATUS,RP0 ; switch back to Bank 0 or alternatively using indirect addressing. clrf PORTA ; Set the output latches of PORTA to zero movlw TRISA ; Setup for indirect addressing movwf FSR ;...by moving address to FSR movlw 0x0F ; Value for data direction movwf INDF ; set RA<3:0> as inputs and RA4 as output 1.2 PORTB and TRISB Registers PORTB is very similar to PORTA. It is an 8-bit wide bi-directional port with the pin directions being controlled by the TRISB register. Each of the PORTB pins can have a weak internal pull-up, which can all be turned on by a single control bit. This bit being the RBPU (OPTION_REG<7>) bit. The weak pull-up is automatically disabled when the port pin is configured as an output. The pull-ups are also disabled by a power-on reset. The first pin, RB<0>, can be used as an external interrupt input. Four of the port pins, RB<7:4>, have an interrupt on change feature where pins that are configured as inputs generate an interrupt when a change occurs. The change is obtained by comparing the pins value in input mode with the old value latched on the last read of PORTB. The mismatched outputs of the pins are OR ed together to generate the port change interrupt. This interrupt can be used to wake the device from SLEEP. Within the interrupt service routine the interrupt can be cleared by: Read (or write) PORTB. This will end the mismatch condition. Clear bit flag RBIF in the INTCON register. As long as there is a mismatch condition the RBIF bit will be set and it can only be cleared after the mismatch condition has ended. Initialization of PORTB is done in a similar fashion to PORTA. The following table shows the bit assignments in the Option register that pertain to to PORTB. bit 7: bit 6: Option Register RBPU: PORTB Pull-up Enable bit 1 = PORTB pull-ups are disabled 0 = PORTB pull-ups are enabled (by individual port latch values) INTEDG: Interrupt Edge Select bit 1 = Interrupt on rising edge of RB0/INT pin 0 = Interrupt on falling edge of RB0/INT pin 2
3 Name Bit Buffer Type Function RB0/INT bit0 TTL/ST Input/Output or external interrupt input RB1 bit1 TTL Input/Output RB2 bit2 TTL Input/Output RB3 bit3 TTL Input/Output RB4 bit4 TTL Input/Output with interrupt on change RB5 bit4 TTL Input/Output with interrupt on change RB6 bit4 TTL/ST Input/Output with interrupt on change. Serial programming clock. RB7 bit4 TTL/ST Input/Output with interrupt on change. Serial programming data. Table 3: PORTB Functions Address Name Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Power-on value Normal value 0x06 PORTB RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0/INT xxxx xxxx uuuu uuuu 0x86 TRISB TRISB7 TRISB6 TRISB5 TRISB4 TRISB3 TRISB2 TRISB1 TRISB x81 OPTION_REG RBPU INTEDG Table 4: Summary of registers associated with PORTB 1.3 I/O Programming Considerations Any instruction which writes, operates internally as a read followed by a write operation. For example, the bsf and bcf instructions first read a register into the CPU, execute the bit clear/set operation and write the result back to the register. Care must be taken when these instructions are applied to a port that is configured for both input and output. A bsf operation on bit 5 of PORTB will cause all eight bits of PORTB to be read into the CPU. Then the bit set operation takes place on bit 5 and the result is written to the output latches. If another bit, say bit 0, of PORTB is defined as an input at this time, the input signal present on the pin itself would be read into the CPU and rewritten to the data latch of this particular pin, overwriting the previous content. As long as the pin stays in the input mode, no problem occurs. However when bit 0 is switched into output mode later on, the content of the data latch is unknown. An example is shown below: ; Initial port settings: PORTB<7:4> Input ; PORTB<3:0> Output ; PORTB<7:6> have external pullups are not connected ; to any other circuitry ; ; Port Latch Port pins ; bcf PORTB,7 ; 01pp pppp 11pp pppp 2 bcf PORTB,6 ; 10pp pppp 11pp pppp 3 bsf STATUS,RP0 ; 4 bcf TRISB,7 ; 10pp pppp 11pp pppp 5 bcf TRISB,6 ; 10pp pppp 10pp pppp At line 2, it would seem that the port latch s high byte should be 00pp but when the instruction is executed, the port pins are read again, thus the bit clear acts on 11pp pppp. 3
4 2 Timers There are two built-in timers on the PIC16F8x, Timer 0 (TMR0) and the WatchDog Timer (WDT). These timers both share a single programmable prescaler which can be used to extend their ranges. When TMR0 uses the internal clock it is said to operate in timer mode and it uses an external clock it is said to operate in counter mode. The WatchDog timer generates a device reset whenever it overflows and is normally used to recover from any malfunction that corrupts the contents of the program counter. For example, in unattended operations if a failure occurs in the program and the device gets into a perpetual loop, the watchdog timer can be used to reset the microcontroller and thus exit the loop. It can also be used in low-power battery applications to awaken the CPU periodically. 2.1 Timer 0 The Timer 0 timer/counter has the following features: 8-bit timer/counter 8-bit software programmable prescalar Internal or external clock select Interrupt on overflow from 0xFF to 0x00 Edge select for external clock Timer mode is selected by clearing the T0CS bit (OPTION_REG<5>). In timer mode, the TMR0 will increment on every instruction cycle. Counter mode is selected by setting the T0CS bit. In this mode, TMR0 will increment either on every rising or falling edge of pin RA4/T0CK1. The incrementing edge is determined by the T0 Source Edge select bit, T0SE (OPTION_REG<4>). Clearing bit T0SE selects the rising edge. The prescaler is shared between the Timer 0 and the Watchdog Timer. The prescaler assignment is controlled by bit PSA (OPTION_REG<3>). Clearing bit PSA will assign the prescaler to Timer 0. When this is done the prescale value is software selectable using the bits PS2:PS0 (OPTION_REG<2:0>). The prescaler is neither readable or writeable. Table 5 show the bits from the Option register that pertain to TMR0. When the prescaler is assigned to Timer 0, all instructions that write to the TMR0 register will clear the contents of the prescaler. When it is assigned to the WDT, a clrwdt instruction will clear the contents of the prescaler along with the Watchdog Timer. The TMR0 interrupt is generated when the TMR0 register overflows from 0xFF to 0x00. This overflow sets the TOIF bit (INTCON<2>). The interrupt can be masked by clearing the TOIE bit (INTCON<5>). The TOIF bit must be cleared in software, by the Timer 0 interrupt service routine, before re-enabling this interrupt Operation of the prescaler The prescaler is like an additional counter that is placed in series with Timer 0. Assume that the prescaler is set to 1:4 and both it and the Timer 0 are initialized to zero. The first clock pulse will increment the prescaler 4
5 Table 5: Option Register bits associated with TMR0 bit 5: bit 4: bit 3: bit 2-0: Option Register TOCS: TMR0 Clock Source Select bit 1 = Transition on RA4/T0CK1 pin 0 = Internal instruction cycle clock T0SE: TMR0 Source Edge Select bit 1 = Increment on high-to-low transition on RA4/T0CK1 pin 0 = Increment on low-to-high transition on RA4/T0CK1 pin PSA: Prescaler Assignment bit 1 = Prescaler assigned to the WDT 0 = Prescaler assigned to TMR0 PS2:PS0: Prescaler Rate Select bits Bit value TMR0 rate WDT rate 000 1:2 1: :4 1: :8 1: :16 1: :32 1: :64 1: :128 1: :256 1:128 to 1, while the timer will remain on zero. Subsequent clock pulses will continue incrementing the prescaler only, until it contains 3. The next clock pulse will cause the prescaler to rollover to 0 and the timer will increment to 1. Since the prescaler cannot be read, a timer reading of say 10 with a prescale value of 1:4 can correspond to number of clock ticks from anywhere between 40 and Changing the prescaler assignment In order to avoid an unintended device reset the following two routines must be used when switching the assignment from Timer 0 to the WDT and vice versa. These are only needed if the WDT is used. ; Changing from Timer 0 to WDT (assumes Bank 0 i.e. RP0 cleared) clrf TMR0 ; clear TMR0 and prescaler bsf STATUS,RP0 ; switch to Bank 1 clrwdt ; clear Watchdog timer movlw b xxxxx1xxx ; select new assignment and prescale value movwf OPTION_REG bcf STATUS,RP0 ; back to Bank 0 ; Changing from WDT to Timer 0 (assumes in Bank 0) clrwdt ; clear WDT and prescaler 5
6 bsf STATUS,RP0 ; switch to Bank 1 movlw b xxxx0xxx ; select Timer 0 movwf OPTION_REG bcf STATUS, RP0 ; back to Bank Watchdog timer The Watchdog Timer (WDT) is a free running on-chip RC oscillator which does not require any external components. This oscillator is separate from any other oscillator on the microcontroller, which means that it will continue running even if the other oscillators have been stopped, for example during a sleep instruction. During normal operation a WDT time-out generates a device RESET. If the device is in SLEEP mode, a WDT Wake-up causes the device to wake-up and continue with normal operation. The same prescaler that was used with Timer 0 can also be assigned to the WDT but it is used as a postscaler instead. The clrwdt and sleep instructions clear the WDT and the postscaler (if assigned to the WDT) and prevent it from timing out and generating a device RESET condition. 6
Hardware Interfacing. EE25M Introduction to microprocessors. Part V. 15 Interfacing methods. original author: Feisal Mohammed
EE25M Introduction to microprocessors original author: Feisal Mohammed updated: 18th February 2002 CLR Part V Hardware Interfacing There are several features of computers/microcontrollers which have not
More informationSection 11. Timer0. Timer0 HIGHLIGHTS. This section of the manual contains the following major topics:
M 11 Section 11. HIGHLIGHTS This section of the manual contains the following major topics: 11.1 Introduction...11-2 11.2 Control Register...11-3 11.3 Operation...11-4 11.4 TMR0 Interrupt...11-5 11.5 Using
More informationCENG-336 Introduction to Embedded Systems Development. Timers
CENG-336 Introduction to Embedded Systems Development Timers Definitions A counter counts (possibly asynchronous) input pulses from an external signal A timer counts pulses of a fixed, known frequency
More informationM PIC16F84A. 18-pinEnhanced FLASH/EEPROM 8-Bit Microcontroller. High Performance RISC CPU Features: Pin Diagrams. Peripheral Features:
M PIC6F84A 8-pinEnhanced FLASH/EEPROM 8-Bit Microcontroller High Performance RISC CPU Features: Pin Diagrams Only 35 single word instructions to learn All instructions single-cycle except for program branches
More informationEE6008-Microcontroller Based System Design Department Of EEE/ DCE
UNIT- II INTERRUPTS AND TIMERS PART A 1. What are the interrupts available in PIC? (Jan 14) Interrupt Source Enabled by Completion Status External interrupt from INT INTE = 1 INTF = 1 TMR0 interrupt T0IE
More informationNH-67, TRICHY MAIN ROAD, PULIYUR, C.F , KARUR DT. DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING COURSE MATERIAL
NH-67, TRICHY MAIN ROAD, PULIYUR, C.F. 639 114, KARUR DT. DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING COURSE MATERIAL Subject Name : Embedded System Class/Sem : BE (ECE) / VII Subject Code
More informationEmbedded System Design
ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN KỸ THUẬT ĐIỆN TỬ Embedded System Design : Microcontroller 1. Introduction to PIC microcontroller 2. PIC16F84 3. PIC16F877
More informationPIC16C84. 8-bit CMOS EEPROM Microcontroller PIC16C84. Pin Diagram. High Performance RISC CPU Features: CMOS Technology: Peripheral Features:
8-bit CMOS EEPROM Microcontroller High Performance RISC CPU Features: Only 35 single word instructions to learn All instructions single cycle (400 ns @ 10 MHz) except for program branches which are two-cycle
More informationEmbedded Systems Design (630470) Lecture 4. Memory Organization. Prof. Kasim M. Al-Aubidy Computer Eng. Dept.
Embedded Systems Design (630470) Lecture 4 Memory Organization Prof. Kasim M. Al-Aubidy Computer Eng. Dept. Memory Organization: PIC16F84 has two separate memory blocks, for data and for program. EEPROM
More informationPIC16C432 OTP 8-Bit CMOS MCU with LIN bus Transceiver
OTP 8-Bit CMOS MCU with LIN bus Transceiver Devices included in this Data Sheet: High Performance RISC CPU: Only 35 instructions to learn All single cycle instructions (200 ns), except for program branches
More informationSection 13. Timer0 HIGHLIGHTS. Timer0. This section of the manual contains the following major topics:
Section 13. Timer0 HIGHLIGHTS This section of the manual contains the following major topics: 13.1 Introduction... 13-2 13.2 Control Register... 13-3 13.3 Operation... 13-4 13.4 Timer0 Interrupt... 13-5
More informationPIC16F8X 18-pin Flash/EEPROM 8-Bit Microcontrollers
18-pin Flash/EEPROM 8-Bit Microcontrollers Devices Included in this Data Sheet: PIC16F83 PIC16F84 PIC16CR83 PIC16CR84 Extended voltage range devices available (PIC16LF8X, PIC16LCR8X) High Performance RISC
More informationPIC16F8X. 8-Bit CMOS Flash/EEPROM Microcontrollers PIC16F8X PIC16CR8X. Pin Diagram. Devices Included in this Data Sheet:
This document was created with FrameMaker 404 PIC16F8X 8-Bit CMOS Flash/EEPROM Microcontrollers Devices Included in this Data Sheet: PIC16F83 PIC16CR83 PIC16F84 PIC16CR84 Extended voltage range devices
More informationPIC16F84A. 18-pin Enhanced Flash/EEPROM 8-Bit Microcontroller. Devices Included in this Data Sheet: Pin Diagrams. High Performance RISC CPU Features:
M PIC6F84A 8-pin Enhanced Flash/EEPROM 8-Bit Microcontroller Devices Included in this Data Sheet: PIC6F84A Extended voltage range device available (PIC6LF84A) High Performance RISC CPU Features: Only 35
More informationUNIVERSITY OF ULSTER UNIVERSITY EXAMINATIONS : 2001/2002. Semester 2. Year 2 MICROCONTROLLER SYSTEMS. Module Code: EEE305J2. Time allowed: 3 Hours
UNIVERSITY OF ULSTER UNIVERSITY EXAMINATIONS : 2001/2002 Semester 2 Year 2 MICROCONTROLLER SYSTEMS Module Code: EEE305J2 Time allowed: 3 Hours Answer as many questions as you can. Not more than TWO questions
More informationME 6405 Introduction to Mechatronics
ME 6405 Introduction to Mechatronics Fall 2006 Instructor: Professor Charles Ume Microchip PIC Manufacturer Information: Company: Website: http://www.microchip.com Reasons for success: Became the hobbyist's
More informationEEE111A/B Microprocessors
EEE111A/B Microprocessors Revision Notes Lecture 1: What s it all About? Covers the basic principles of digital signals. The intelligence of virtually all communications, control and electronic devices
More informationUniversity of Jordan Faculty of Engineering and Technology Department of Computer Engineering Embedded Systems Laboratory
University of Jordan Faculty of Engineering and Technology Department of Computer Engineering Embedded Systems Laboratory 0907334 6 Experiment 6:Timers Objectives To become familiar with hardware timing
More informationLecture (04) PIC16F84A (3)
Lecture (04) PIC16F84A (3) By: Dr. Ahmed ElShafee ١ Central Processing Unit Central processing unit (CPU) is the brain of a microcontroller responsible for finding and fetching the right instruction which
More informationLearning Objectives:
Topic 5.2.1 PIC microcontrollers Learning Objectives: At the end of this topic you will be able to; Recall the architecture of a PIC microcontroller, consisting of CPU, clock, data memory, program memory
More informationPIC16F8X PIC16F8X. 18-pin Flash/EEPROM 8-Bit Microcontrollers
Devices Included in this Data Sheet: PIC6F83 PIC6F84 PIC6CR83 PIC6CR84 Extended voltage range devices available (PIC6LF8X, PIC6LCR8X) High Performance RISC CPU Features: Only 35 single word instrucs to
More informationEE 361L Digital Systems and Computer Design Laboratory
EE 361L Digital Systems and Computer Design Laboratory University of Hawaii Department of Electrical Engineering by Galen Sasaki and Ashok Balusubramaniam Quick Overview of PIC16F8X Version 1.0 Date: 9/4/01
More informationPIC Discussion By Eng. Tamar Jomaa
PIC Discussion By Eng. Tamar Jomaa 1 Write assembly language instructions to clear the general purpose registers of PIC16F84A microcontroller (don t write the whole program) 2 Islamic university Electrical
More informationPIC 16F84A programming (II)
Lecture (05) PIC 16F84A programming (II) Dr. Ahmed M. ElShafee ١ Introduction to 16F84 ٣ PIC16F84 belongs to a class of 8-bit microcontrollers of RISC architecture. Program memory (FLASH) EEPROM RAM PORTA
More informationPIC16F87X. 28/40-pin 8-Bit CMOS FLASH Microcontrollers. Devices Included in this Data Sheet: Pin Diagram PDIP. Microcontroller Core Features:
PIC16F7X 2/40-pin -Bit CMOS FLASH Microcontrollers Devices Included in this Data Sheet: PIC16F7 PIC16F74 PIC16F76 PIC16F77 Microcontroller Core Features: High-performance RISC CPU Only 5 single word instructions
More informationUNIVERSITY OF ULSTER UNIVERSITY EXAMINATIONS : 2001/2002 RESIT. Year 2 MICROCONTROLLER SYSTEMS. Module Code: EEE305J1. Time allowed: 3 Hours
UNIVERSITY OF ULSTER UNIVERSITY EXAMINATIONS : 2001/2002 RESIT Year 2 MICROCONTROLLER SYSTEMS Module Code: EEE305J1 Time allowed: 3 Hours Answer as many questions as you can. Not more than TWO questions
More informationIntroduction. Embedded system functionality aspects. Processing. Storage. Communication. Transformation of data Implemented using processors
Input/Output 1 Introduction Embedded system functionality aspects Processing Transformation of data Implemented using processors Storage Retention of data Implemented using memory Communication Transfer
More informationInput/Output Ports and Interfacing
Input/Output Ports and Interfacing ELEC 330 Digital Systems Engineering Dr. Ron Hayne Images Courtesy of Ramesh Gaonkar and Delmar Learning Basic I/O Concepts Peripherals such as LEDs and keypads are essential
More informationThese 3 registers contain enable, priority,
8.3.2) Registers Related to Interrupts These registers enable/disable the interrupts, set the priority of the interrupts, and record the status of each interrupt source. RCON INTCON, INTCON2, and INTCON3
More informationPIC16C62X Data Sheet. EPROM-Based 8-Bit CMOS Microcontrollers Microchip Technology Inc. DS30235J
Data Sheet EPROM-Based 8-Bit CMOS Microcontrollers 2003 Microchip Technology Inc. DS30235J Note the following details of the code protection feature on Microchip devices: Microchip products meet the specification
More informationSection 4. Architecture
M Section 4. Architecture HIGHLIGHTS This section of the manual contains the following major topics: 4. Introduction...4-2 4.2 Clocking Scheme/Instruction Cycle...4-5 4.3 Instruction Flow/Pipelining...4-6
More informationPIC16C Pin, 8-Bit CMOS Microcontroller. Device included in this Data Sheet: Special Microcontroller Features: High-Performance RISC CPU:
14-Pin, 8-Bit CMOS Microcontroller Device included in this Data Sheet: PIC16C505 High-Performance RISC CPU: Only 33 instructions to learn Operating speed: - DC - 20 MHz clock input - DC - 200 ns instruction
More informationPIC16C Pin, 8-Bit CMOS Microcontroller. Device included in this Data Sheet: Special Microcontroller Features: High-Performance RISC CPU:
14-Pin, 8-Bit CMOS Microcontroller Device included in this Data Sheet: PIC16C505 High-Performance RISC CPU: Only 33 instructions to learn Operating speed: - DC - 20 MHz clock input - DC - 200 ns instruction
More informationAssembly Language Instructions
Assembly Language Instructions Content: Assembly language instructions of PIC16F887. Programming by assembly language. Prepared By- Mohammed Abdul kader Assistant Professor, EEE, IIUC Assembly Language
More informationPIC16C52. EPROM-Based 8-Bit CMOS Microcontroller PIC16C52. Pin Diagrams. Feature Highlights. High-Performance RISC CPU. Peripheral Features
This document was created with FrameMaker 404 PIC16C52 EPROM-Based 8-Bit CMOS Microcontroller Feature Highlights Pin Diagrams Program Memory Data Memory I/O PDIP, SOIC 384 25 12 High-Performance RISC CPU
More informationAPPLICATION NOTE Wire Communication with a Microchip PICmicro Microcontroller
Maxim > App Notes > 1-Wire DEVICES BATTERY MANAGEMENT Keywords: 1-wire, PICmicro, Microchip PIC, 1-Wire communication, PIC microcontroller, PICmicro microcontroller, 1 wire communication, PICs, micros,
More informationPerformance & Applications
EE25M Introduction to microprocessors original author: Feisal Mohammed updated: 15th March 2002 CLR Part VI Performance & Applications It is possible to predict the execution time of code, on the basis
More informationSection 14. Timer1 HIGHLIGHTS. Timer1. This section of the manual contains the following major topics:
Section 14. Timer1 HIGHLIGHTS This section of the manual contains the following major topics: 14.1 Introduction... 14-2 14.2 Control Register... 14-4 14.3 Timer1 Operation in Timer Mode... 14-5 14.4 Timer1
More informationPIC12C5XX. 8-Pin, 8-Bit CMOS Microcontroller. CMOS Technology: Devices included in this Data Sheet: High-Performance RISC CPU: Pin Diagram
This document was created with FrameMaker 404 8-Pin, 8-Bit CMOS Microcontroller PIC12C5XX Devices included in this Data Sheet: PIC12C508 and PIC12C509 are 8-bit microcontrollers packaged in 8-lead packages.
More informationPIC16F /40-Pin 8-Bit CMOS FLASH Microcontrollers. Devices Included in this Data Sheet: Pin Diagram PDIP. Microcontroller Core Features:
28/40-Pin 8-Bit CMOS FLASH Microcontrollers Devices Included in this Data Sheet: PIC16F870 PIC16F871 Microcontroller Core Features: High-performance RISC CPU Only 35 single word instructions to learn All
More informationPIC Discussion By Eng. Tamar Jomaa
PIC Discussion By Eng. Tamar Jomaa Outlines 2.6 TMR0 2.7 EEPROM 2.8 Look up table 2.9 Macro 2.6 TMR0 Example#1 Write an assembly program to make a counter using TMR0, the count should increment it s value
More informationLAB WORK 2. 1) Debugger-Select Tool-MPLAB SIM View-Program Memory Trace the program by F7 button. Lab Work
LAB WORK 1 We are studying with PIC16F84A Microcontroller. We are responsible for writing assembly codes for the microcontroller. For the code, we are using MPLAB IDE software. After opening the software,
More informationHi Hsiao-Lung Chan Dept Electrical Engineering Chang Gung University, Taiwan
Interrupts and Resets Hi Hsiao-Lung Chan Dept Electrical Engineering Chang Gung University, Taiwan chanhl@mail.cgu.edu.twcgu Interrupts An event that will cause the CPU to stop the normal program execution
More informationPIC10F200/202/204/206
6-Pin, 8-Bit Flash Microcontrollers Devices Included In This Data Sheet: PIC0F200 PIC0F202 PIC0F204 PIC0F206 High-Performance RISC CPU: Only 33 Single-Word Instructions to Learn All Single-Cycle Instructions
More informationPIC10F200/202/204/206 Data Sheet
Data Sheet 6-Pin, 8-Bit Flash Microcontrollers DS4239A 6-Pin, 8-Bit Flash Microcontrollers Devices Included In ThisData Sheet: PIC0F200 PIC0F202 PIC0F204 PIC0F206 High-Performance RISC CPU: Only 33 single-word
More information/* PROGRAM FOR BLINKING LEDs CONEECTED TO PORT-D */
/* PROGRAM FOR BLINKING LEDs CONEECTED TO PORT-D */ CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF ;***** VARIABLE DEFINITIONS COUNT_L EQU 0x01 ;**********************************************************************
More informationMicro II and Embedded Systems
16.480/552 Micro II and Embedded Systems Introduction to PIC Microcontroller Revised based on slides from WPI ECE2801 Moving Towards Embedded Hardware Typical components of a PC: x86 family microprocessor
More informationEmbedded Systems. PIC16F84A Sample Programs. Eng. Anis Nazer First Semester
Embedded Systems PIC16F84A Sample Programs Eng. Anis Nazer First Semester 2017-2018 Development cycle (1) Write code (2) Assemble / compile (3) Simulate (4) Download to MCU (5) Test Inputs / Outputs PIC16F84A
More informationDERTS Design Requirements (1): Microcontroller Architecture & Programming
Lecture (5) DERTS Design Requirements (1): Microcontroller Architecture & Programming Prof. Kasim M. Al-Aubidy Philadelphia University 1 Lecture Outline: Features of microcomputers and microcontrollers.
More informationChapter 11: Interrupt On Change
Chapter 11: Interrupt On Change The last two chapters included examples that used the external interrupt on Port C, pin 1 to determine when a button had been pressed. This approach works very well on most
More informationWeek1. EEE305 Microcontroller Key Points
Week1 Harvard Architecture Fig. 3.2 Separate Program store and Data (File) stores with separate Data and Address buses. Program store Has a 14-bit Data bus and 13-bit Address bus. Thus up to 2 13 (8K)
More informationLesson 14. Title of the Experiment: Introduction to Microcontroller (Activity number of the GCE Advanced Level practical Guide 27)
Lesson 14 Title of the Experiment: Introduction to Microcontroller (Activity number of the GCE Advanced Level practical Guide 27) Name and affiliation of the author: N W K Jayatissa Department of Physics,
More informationLaboratory 9. Programming a PIC Microcontroller - Part I
Laboratory 9 Programming a PIC Microcontroller - Part I Required Components: 1 PIC16F84 (4MHz) or PIC16F84A (20MHz) or compatible (e.g., PIC16F88) microcontroller 1 4MHz microprocessor crystal (20 pf),
More informationFlow Charts and Assembler Programs
Flow Charts and Assembler Programs Flow Charts: A flow chart is a graphical way to display how a program works (i.e. the algorithm). The purpose of a flow chart is to make the program easier to understand.
More informationD:\PICstuff\PartCounter\PartCounter.asm
1 ;********************************************************************** 2 ; This file is a basic code template for assembly code generation * 3 ; on the PICmicro PIC16F84A. This file contains the basic
More informationModel Answer Microcontrollers. MCQ Problems Total Q1 Q2
Model Answer Course name: Microcontrollers Exam numer: Midterm - Fall 2017 Course Code: ECE401 Exam Date: Nov 2016 Lecturer: Dr. Ahmed ElShafee Time Allowed: 60 minutes ID:... Name:.... MCQ Prolems Total
More informationSection 16. Basic Sychronous Serial Port (BSSP)
M 16 Section 16. Basic Sychronous Serial Port (BSSP) BSSP HIGHLIGHTS This section of the manual contains the following major topics: 16.1 Introduction...16-2 16.2 Control Registers...16-3 16.3 SPI Mode...16-6
More informationME 515 Mechatronics. A microprocessor
ME 515 Mechatronics Microcontroller Based Control of Mechanical Systems Asanga Ratnaweera Department of Faculty of Engineering University of Peradeniya Tel: 081239 (3627) Email: asangar@pdn.ac.lk A microprocessor
More informationMicrocontroller Overview
Microcontroller Overview Microprocessors/Microcontrollers/DSP Microcontroller components Bus Memory CPU Peripherals Programming Microcontrollers vs. µproc. and DSP Microprocessors High-speed information
More informationAN587. Interfacing to an LCD Module. Interfacing to an LCD Module INTRODUCTION OPERATION CONTROL SIGNAL FUNCTIONS TABLE 2: CONDITIONAL ASSEMBLY FLAGS
Interfacing to an LCD Module AN587 INTRODUCTION TABLE 1: CONTROL SIGNAL FUNCTIONS This application note interfaces a PIC16CXX device to the Hitachi LM02L LCD character display module. This module is a
More informationPIC16F870/ /40-Pin, 8-Bit CMOS FLASH Microcontrollers. Devices Included in this Data Sheet: Pin Diagram. Microcontroller Core Features:
28/40-Pin, 8-Bit CMOS FLASH Microcontrollers Devices Included in this Data Sheet: Pin Diagram PIC16F870 PIC16F871 PDIP Microcontroller Core Features: High performance RISC CPU Only 35 single word instructions
More informationContents. PIC Mini Data Sheets
Contents PIC16C5x... 5 PIC16C5x Pin-Outs... 5 PIC16C5x Microcontrollers... 6 Peripheral Features... 6 Internal Architecture... 9 PIC16C5x Registers... 9 PIC16C64... 18 PIC16C64 Pin-Out...18 New and Modified
More informationIntroduction to Embedded Systems
Stefan Kowalewski, 4. November 25 Introduction to Embedded Systems Part 2: Microcontrollers. Basics 2. Structure/elements 3. Digital I/O 4. Interrupts 5. Timers/Counters Introduction to Embedded Systems
More informationDocumentation Design File Formats
PIC165X Fast RISC Microcontroller (DFPIC165X) July 16, 2008 Product Specification Digital Core Design Wroclawska 94 41-902 Bytom Poland Phone : +48 32 2828266 Fax : +48 32 2827437 E-mail : info@dcd.pl
More informationDept. of Computer Engineering Final Exam, First Semester: 2016/2017
Philadelphia University Faculty of Engineering Course Title: Embedded Systems (630414) Instructor: Eng. Anis Nazer Dept. of Computer Engineering Final Exam, First Semester: 2016/2017 Student Name: Student
More informationPIC16F630/676 Data Sheet
M PIC16F630/676 Data Sheet 14-Pin FLASH-Based 8-Bit CMOS Microcontrollers 2002 Microchip Technology Inc. Preliminary DS4003A Note the following details of the code protection feature on PICmicro MCUs.
More informationWeekly Report: Interactive Wheel of Fortune Week 4 02/014/07-02/22/07 Written by: Yadverinder Singh
Work Completed: Weekly Report: Interactive Wheel of Fortune Week 4 02/014/07-02/22/07 Written by: Yadverinder Singh Last week started with the goal to complete writing the overall program for the game.
More informationThe University of Texas at Arlington Lecture 5
The University of Texas at Arlington Lecture 5 CSE 3442/5442 LCD Discussed in Chapter 12 RS, R/W, E Signals Are Used to Send/Receive Data on D0-D7 2 PIC PROGRAMMING IN C CHAPTER 7 Chapter 7 discusses the
More informationMod-5: PIC 18 Introduction 1. Module 5
Mod-5: PIC 18 Introduction 1 Module 5 Contents: Overview of PIC 18, memory organisation, CPU, registers, pipelining, instruction format, addressing modes, instruction set, interrupts, interrupt operation,
More informationTo Our Valued Customers
Devices Included in this Data Sheet: PIC12C671 PIC12C672 PIC12CE673 PIC12CE674 Note: Throughout this data sheet PIC12C67X refers to the PIC12C671, PIC12C672, PIC12CE673 and PIC12CE674. PIC12CE67X refers
More informationPIC12CE5XX. 8-Pin, 8-Bit CMOS Microcontroller with EEPROM Data Memory. Devices Included in this Data Sheet: Pin Diagram: High-Performance RISC CPU:
Devices Included in this Data Sheet: PIC12CE518 PIC12CE519 High-Performance RISC CPU: Only 33 single word instructions to learn All instructions are single cycle (1 µs) except for program branches which
More informationWhen JP1 is cut, baud rate is Otherwise, baud rate is Factory default is that JP1 is shorted. (JP1 is jumper type in some model)
ELCD SERIES INTRODUCTION ALCD is Serial LCD module which is controlled through Serial communication. Most of existing LCD adopts Parallel communication which needs lots of control lines and complicated
More informationSection 9. Watchdog Timer (WDT)
Section 9. Watchdog Timer (WDT) HIGHLIGHTS This section of the manual contains the following major topics: 9.1 Introduction... 9-2 9.2 WDT Operation... 9-2 9.3 Register Maps...9-5 9.4 Design Tips... 9-6
More informationOutline. Micriprocessor vs Microcontroller Introduction to PIC MCU PIC16F877 Hardware:
HCMIU - DEE Subject: ERTS RISC MCU Architecture PIC16F877 Hardware 1 Outline Micriprocessor vs Microcontroller Introduction to PIC MCU PIC16F877 Hardware: Program Memory Data memory organization: banks,
More informationPIC16F5X Data Sheet. Flash-Based, 8-Bit CMOS Microcontroller Series
Data Sheet Flash-Based, 8-Bit CMOS Microcontroller Series Note the following details of the code protection feature on Microchip devices: Microchip products meet the specification contained in their particular
More informationPIC16F87X 13.0 INSTRUCTION SET SUMMARY INSTRUCTIONS DESCRIPTIONS
PIC6F87X 3.0 INSTRUCTION SET SUMMARY Each PIC6F87X instruction is a 4bit word, divided into an OPCODE which specifies the instruction type and one or more operands which further specify the operation of
More informationPIC Discussion. By Eng. Tamar Jomaa
PIC Discussion By Eng. Tamar Jomaa Chapter#2 Programming Microcontroller Using Assembly Language Quiz#1 : Time: 10 minutes Marks: 10 Fill in spaces: 1) PIC is abbreviation for 2) Microcontroller with..architecture
More informationPIC16F5X Data Sheet. Flash-Based, 8-Bit CMOS Microcontroller Series Microchip Technology Inc. DS41213D
Data Sheet Flash-Based, 8-Bit CMOS Microcontroller Series 2007 Microchip Technology Inc. DS41213D Note the following details of the code protection feature on Microchip devices: Microchip products meet
More informationPIC16F630/676 Data Sheet
Data Sheet 14-Pin, Flash-Based 8-Bit CMOS Microcontrollers 2007 Microchip Technology Inc. DS40039E Note the following details of the code protection feature on Microchip devices: Microchip products meet
More information8-bit Microcontroller with 8K Bytes In-System Programmable Flash AT89S52
Features Compatible with MCS -51 Products 8K Bytes of In-System Programmable (ISP) Flash Memory Endurance: 10,000 Write/Erase Cycles 4.0V to 5.5V Operating Range Fully Static Operation: 0 Hz to 33 MHz
More informationOutlines. PIC Programming in C and Assembly. Krerk Piromsopa, Ph.D. Department of Computer Engineering Chulalongkorn University
PIC ming in C and Assembly Outlines Microprocessor vs. MicroController PIC in depth PIC ming Assembly ming Krerk Piromsopa, Ph.D. Department of Computer Engineering Chulalongkorn University Embedded C
More information1 Introduction to Computers and Computer Terminology Programs Memory Processor Data Sheet Example Application...
Overview of the PIC 16F648A Processor: Part 1 EE 361L Lab 2.1 Last update: August 19, 2011 Abstract: This report is the first of a three part series that discusses the features of the PIC 16F684A processor,
More informationDHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING. EE6008 Microcontroller based system design
Year: IV DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EE6008 Microcontroller based system design Semester : VII UNIT I Introduction to PIC Microcontroller
More informationPIC16F5X Data Sheet. Flash-Based, 8-Bit CMOS Microcontrollers Microchip Technology Inc. Preliminary DS41213B
Data Sheet Flash-Based, 8-Bit CMOS Microcontrollers 2004 Microchip Technology Inc. Preliminary DS41213B Note the following details of the code protection feature on Microchip devices: Microchip products
More informationPIC12F629/675 Data Sheet
M PIC12F62/675 Data Sheet 8-Pin FLASH-Based 8-Bit CMOS Microcontrollers 2002 Microchip Technology Inc. Preliminary DS4110A Note the following details of the code protection feature on PICmicro MCUs. The
More informationPIC Microcontroller Introduction
PIC Microcontroller Introduction The real name of this microcontroller is PICmicro (Peripheral Interface Controller), but it is better known as PIC. Its first ancestor was designed in 1975 by General Instruments.
More informationChapter 2. Overview of Architecture and Microcontroller-Resources
Chapter 2 Overview of Architecture and Microcontroller-Resources Lesson 4 Timers, Real Time Clock Interrupts and Watchdog Timer 2 Microcontroller-resources Port P1 Port P0 Port P2 PWM Timers Internal Program
More informationSOLAR TRACKING SYSTEM USING PIC16F84A STEPPER MOTOR AND 555TIMER
SOLAR TRACKING SYSTEM USING PIC16F84A STEPPER MOTOR AND 555TIMER Amey Arvind Madgaonkar 1, Sumit Dhere 2 & Rupesh Ratnakar Kadam 3 1. Block diagram International Journal of Latest Trends in Engineering
More informationOTP-Based 8-Bit Microcontroller
Devices Included in this Data Sheet: : OTP device FEATURES OTP-Based 8-Bit Microcontroller 1K Word on chip OTP 49x8 bits on chip general purpose registers (SRAM) 8-bit wide data path 5-level deep hardware
More information1 Introduction to Computers and Computer Terminology Programs Memory Processor Data Sheet... 4
Overview of the PIC 16F648A Processor: Part 1 EE 361L Lab 2.1 Last update: August 1, 2016 Abstract: This report is the first of a three part series that discusses the features of the PIC 16F648A processor,
More informationC and Embedded Systems. So Why Learn Assembly Language? C Compilation. PICC Lite C Compiler. PICC Lite C Optimization Results (Lab #13)
C and Embedded Systems A µp-based system used in a device (i.e, a car engine) performing control and monitoring functions is referred to as an embedded system. The embedded system is invisible to the user
More informationExplanation of PIC 16F84A processor data sheet Part 2: More on the PIC
Explanation of PIC 16F84A processor data sheet Part 2: More on the PIC This is the second of the three part overview of the PIC processor. We will first discuss the timer module and prescalar. We will
More informationLecture (03) PIC16F84 (2)
Lecture (03) PIC16F84 (2) By: Dr. Ahmed ElShafee ١ PIC16F84 has a RISC architecture, or Harvard architecture in another word ٢ PIC16F84 belongs to a class of 8 bit microcontrollers of RISC architecture.
More informationPIC16C433 Data Sheet. 8-Bit CMOS Microcontroller with LIN bus Transceiver Microchip Technology Inc. Advance Information DS41139A
Data Sheet 8-Bit CMOS Microcontroller with LIN bus Transceiver 2001 Microchip Technology Inc. Advance Information DS41139A All rights reserved. Copyright 2001, Microchip Technology Incorporated, USA. Information
More information3. Applications. 1. General Description. 4. Pin Assignment. 2. Features M D T10P509ST2611 PB0 1 6 PB3 M D T10P509ST2613 PB0 1 6 /MCLR
M MDT10P509 D P509(A) T 1 0P50 1. General Description 3. Applications This EPROM-Based 8-bit micro-controller uses a fully static CMOS technology process to achieve higher speed and smaller size with the
More informationMicro-Controller: PIC16C74 < Part 5: Interrupt >
Micro-Controller: PIC16C74 < Part 5: Interrupt > I. Overview Introduction PIC16c74 can have many sources of interrupt. These sources generally include one interrupt source for each peripheral module, though
More informationCHAPTER 6 CONCLUSION AND SCOPE FOR FUTURE WORK
134 CHAPTER 6 CONCLUSION AND SCOPE FOR FUTURE WORK 6.1 CONCLUSION Many industrial processes such as assembly lines have to operate at different speeds for different products. Process control may demand
More informationECE 354 Computer Systems Lab II. Interrupts, Strings, and Busses
ECE 354 Computer Systems Lab II Interrupts, Strings, and Busses Fun Fact Press release from Microchip: Microchip Technology Inc. announced it provides PICmicro field-programmable microcontrollers and system
More informationPIC16F872 Data Sheet. 28-Pin, 8-Bit CMOS Flash Microcontroller with 10-Bit A/D Microchip Technology Inc. DS30221C
Data Sheet 28-Pin, 8-Bit CMOS Flash Microcontroller with 10-Bit A/D 2006 Microchip Technology Inc. DS30221C Note the following details of the code protection feature on Microchip devices: Microchip products
More informationTarget Board PIC877-TB - Reference Manual
Target Board PIC877-TB - Reference Manual 40-100-2 Target Board PIC877-TB Reference Manual 40-100-2 Feedback Feedback Instruments Ltd, Park Road, Crowborough, E. Sussex, TN6 2QR, UK. Telephone: +44 (0)
More information