New Peripherals Tips N Tricks Datasheet by Microchip Technology

View All Related Products | Download PDF Datasheet
Q MICROCHIP
2012 Microchip Technology Inc. DS41632B-page 1
New Peripherals Tips ‘n Tricks
TIPS ‘N TRICKS INTRODUCTION
Microchip continues to provide innovative products that
are smaller, faster, easier to use and more reliable.
Flash-based PIC® MCUs are used in a wide range of
every day products from smoke detectors to industrial,
automotive and medical products.
The PIC16(L)F150X and PIC10(L)F32X families of
devices with on-chip configurable logic cells, merge all
the advantages of the PIC MCU architecture and the
flexibility of Flash program memory, with the functional-
ity of a configurable digital logic cell. Together, they
form a low-cost building block with resource savings
and external component reduction.
The flexibility of Flash and an excellent development
tool suite, including a low-cost In-Circuit Debugger, In-
Circuit Serial ProgrammingTM (ICSPTM) and CLC Con-
figuration Tool GUI, make these devices ideal for just
about any embedded control application.
The following Tips ‘n Tricks can be applied to a variety
of applications to help make the most of digital logic
functions using a PIC MCU with on-chip configurable
logic.
TIP 1: EXTENDING AUTO-
SHUTDOWN CONDITIONS/INPUTS
FOR THE CWG
Have you ever found yourself in a situation where your
PWM application needs more auto-shutdown condi-
tions, other than the software driven ones, due to
resource limitations? Here is a solution. The
Complementary Waveform Generator (CWG) has two
auto-shutdown condition inputs: the CWG1FLT pin for
external conditions, and the output from the Configu-
rable Logic Cell (CLC), LCxOUT -> LC2OUT. Use the
CLC to your advantage. By selecting the CLC output as
an auto-shutdown source, all of the inputs to the CLC
are available as auto-shutdown conditions for your
CWG (Figure 1).
FIGURE 1: EXTENDING THE CWG’S AUTO-SHUTDOWN SOURCES
PWM1OUT
PWM2OUT
TMR2=PR2
LFINTOSC
TMR0IF
TMR1IF
ADFRC
C1OUT
C2OUT
CLC2IN0
CLC2IN1
FOSC
C1OUT
C2OUT
CWGFLT pin
LC2OUT
Input Sources
Clock Sources
CWG
(PIC16(L)F1509)
CWG1A
CWG1B
Shutdown Sources
The Complementary Waveform Generator (CWG), Configurable Logic Cell
(CLC), and the Numerically Controlled Oscillator (NCO) Peripherals
New Peripherals Tips ‘n Tricks
DS41632B-page 2 2012 Microchip Technology Inc.
TIP 2: DRIVING A HALF-BRIDGE OR A
FULL-BRIDGE DRIVE CIRCUIT USING
THE CWG
Do not think a high pin count microcontroller is needed
to drive a half-bridge or full-bridge motor drive circuit. It
can be done using the PWM in conjunction with the
CWG module.
Setup the PWM module to output the desired drive
signal to the CWG input. Now, configure the CWG to
output the drive signal, and its complement, with the
appropriate dead-band delay, to provide for non-over-
lapping output signals that drive the motor drive circuit,
thus preventing shoot-through current. See Figure 2 for
an illustration of a CWG driving a full-bridge drive
circuit.
FIGURE 2: CWG DRIVING A FULL-BRIDGE DRIVE CIRCUIT
CWGxB
V+
Load
CWGxA
LCD F Driver Circuit
2012 Microchip Technology Inc. DS41632B-page 3
New Peripherals Tips ‘n Tricks
TIP 3: MEASURING DC MOTOR
SPEED AND POSITION USING A
QUADRATURE DECODER
Rotary encoders are typically used to provide direct
physical feedback of motor position, and/or speed. A
rotary encoder consists of a rotary element attached to
the motor that has a physical feature, measured by a
stationary component. The measurements can yield
motor speed and sometimes can provide a motor posi-
tion. Rotary encoders are built using many different
technologies. The most common type is an optical
rotary encoder. The optical rotary encoder is used in
computer mice that have a ball. It is built with an
encoder disc that is attached to the motor. The encoder
disc has many radial slots cut into the disc at specific
intervals. An LED and a photo detector are used to
count the slots as they rotate. The speed of rotation can
be determined by timing the rate of the slots
revolutions.
Sensing motor position requires a second LED and
photo detector. The second sensor pair is mounted so
the output pulse is 90° out of phase from the first pair.
The two outputs represent the motion of the encoder
disc as a quadrature modulated pulse train.
In this application example, the PWM module is used to
generate a signal, controlled by an external potentiom-
eter, then configuring it as an input to the CWG to drive
a motor drive circuit. As the motor turns, spinning a disk
with slots cut into it allowing light from a LED to shine
through and on two photo transistors (A and B). As the
light hits the photo transistors, a logic ‘0’ is read on the
input pin of the microcontroller. Therefore, as the input
from photo transistor B is read into the microcontroller,
the time calculated between every other falling edge
(via Timer1 gate) of the input pulse signal corresponds
to the speed of the motor. Now, with photo transistor A
90° from transistor B, you can determine the direction
of the motor by using the CLC to determine which
photo transistor was turned on first. See Figure 3.
FIGURE 3: QUADRATURE DECODER SIMPLIFIED SCHEMATIC
CWGxA
CWG
PIC16F1508
MSSP
PWM
CLC
LCD
POT
CWGxB
Driver
Circuit M
T1G
VDD
VDD
AB
_____________________________________
New Peripherals Tips ‘n Tricks
DS41632B-page 4 2012 Microchip Technology Inc.
TIP 4: MANCHESTER DECODING
USING THE CLC AND NCO
If a EUSART can be used for Manchester encoding, a
Configurable Logic Cell (CLC) and a Numerically Con-
trolled Oscillator (NCO) can be used for Manchester
decoding.
This tip presents a method to decode a Manchester
encoded signal using four CLCs and the NCO to
separate the SPI data signal from a SPI clock signal.
See Figure 4. After selecting a microcontroller with four
CLCs and an NCO, such as the PIC16F1509, configure
the CLC1 to input the Manchester encoded data signal
into a D flip-flop that is clocked by the inverse of the
clock out signal that you are separating. See Figure 5.
The inverted output of this flip-flop is the output data
you are decoding. Next, configure the CLC2 to XOR
the non-inverted output of CLC1 with the encoded data
signal from the input of CLC1. See Figure 6. This XOR
output establishes the positive edge to which the output
data is derived. Use this XOR output to clock the CLC3.
See Figure 7. Setup CLC3 using a logic high input and
output CLC3 to the input of CLC4, which AND-Ors it to
the internal oscillator frequency (FOSC) of the
microcontroller and the clock out signal from the NCO.
See Figure 8. The output signal of CLC4 is then used
to clock the NCO accumulator. This makes the NCO
output signal the clock frequency to establish the
proper timing (the beginning and end of the data signal)
to decode the data output signal. See Manchester
Decoder Signal Diagram (Figure 9).
FIGURE 4: MANCHESTER DECODER SIMPLIFIED BLOCK DIAGRAM
CLC1 CLC2 CLC3 CLC4
Data Input
Code Reset
Clock Out
Data Output
FOSC
DSQ1
R
DSQ2
R
NCO
NCOCLK NCOOUT
om. wswuua V up am 7 am Im an. . 1 —x —x 1 '4. mm mum mu 5.1 ”pm: aw AK Bum Ii GATE2 ‘ my, . I D o ’_x GATE 3 {101mm . —x .W I was» my mom wz ummsz m M15153 Hm umsm Hm' cmsm um mm m mum m uncut-«nu Dfmnmu mom-M Incauue :mam -°“" Mm ”WWII!!! mun m mm m mm m mm; Nu! man my man my :chml Nm' mu m‘ flR-qnunu \ \Fliulmsnn momma: Mcmgmk
2012 Microchip Technology Inc. DS41632B-page 5
New Peripherals Tips ‘n Tricks
FIGURE 5: CLC1 SETUP
FIGURE 6: CLC2 SETUP
um. mmlwma mlmm mam mlmM GATE 3 Emma m mm mm [15652 NW mm my man Mm' unsa‘ m “ml mm mm m‘ mam-mu DFMHHMI momma «mama rm :mam v M CW V "MR "-mmmm GATE 2 GATE 3 GATE 4 cm»... mama my mam m mumsz Mur mums! Nuz mum Mm mm my mm m menu m1 flR-qnunu \ \Fliulmsnn momma: Mcmgmk
New Peripherals Tips ‘n Tricks
DS41632B-page 6 2012 Microchip Technology Inc.
FIGURE 7: CLC3 SETUP
FIGURE 8: CLC4 SETUP
2012 Microchip Technology Inc. DS41632B-page 7
New Peripherals Tips ‘n Tricks
FIGURE 9: MANCHESTER DECODER SIGNAL DIAGRAM
Data Input
Q1
Data Input (xor) Q1
Clock Out
11 1 1
00
www mxcvochxg com www.micruchig.com www mxcvochxgcom
New Peripherals Tips ‘n Tricks
DS41632B-page 8 2012 Microchip Technology Inc.
RESOURCES
[1] Configurable Logic Cell (CLC) Configuration Tool
User’s Guide, DS41597 at www.microchip.com
[2] Configurable Logic Cell (CLC) Configuration Tool
GUI software at www.microchip.com
[3] Device data sheet for the specific device you are
using, at www.microchip.com
YSTEM <2>
2012 Microchip Technology Inc. DS41632B-page 9
Information contained in this publication regarding device
applications and the like is provided only for your convenience
and may be superseded by updates. It is your responsibility to
ensure that your application meets with your specifications.
MICROCHIP MAKES NO REPRESENTATIONS OR
WARRANTIES OF ANY KIND WHETHER EXPRESS OR
IMPLIED, WRITTEN OR ORAL, STATUTORY OR
OTHERWISE, RELATED TO THE INFORMATION,
INCLUDING BUT NOT LIMITED TO ITS CONDITION,
QUALITY, PERFORMANCE, MERCHANTABILITY OR
FITNESS FOR PURPOSE. Microchip disclaims all liability
arising from this information and its use. Use of Microchip
devices in life support and/or safety applications is entirely at
the buyer’s risk, and the buyer agrees to defend, indemnify and
hold harmless Microchip from any and all damages, claims,
suits, or expenses resulting from such use. No licenses are
conveyed, implicitly or otherwise, under any Microchip
intellectual property rights.
Trademarks
The Microchip name and logo, the Microchip logo, dsPIC,
KEELOQ, KEELOQ logo, MPLAB, PIC, PICmicro, PICSTART,
PIC32 logo, rfPIC and UNI/O are registered trademarks of
Microchip Technology Incorporated in the U.S.A. and other
countries.
FilterLab, Hampshire, HI-TECH C, Linear Active Thermistor,
MXDEV, MXLAB, SEEVAL and The Embedded Control
Solutions Company are registered trademarks of Microchip
Technology Incorporated in the U.S.A.
Analog-for-the-Digital Age, Application Maestro, BodyCom,
chipKIT, chipKIT logo, CodeGuard, dsPICDEM,
dsPICDEM.net, dsPICworks, dsSPEAK, ECAN,
ECONOMONITOR, FanSense, HI-TIDE, In-Circuit Serial
Programming, ICSP, Mindi, MiWi, MPASM, MPLAB Certified
logo, MPLIB, MPLINK, mTouch, Omniscient Code
Generation, PICC, PICC-18, PICDEM, PICDEM.net, PICkit,
PICtail, REAL ICE, rfLAB, Select Mode, Total Endurance,
TSHARC, UniWinDriver, 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.
© 2012, Microchip Technology Incorporated, Printed in the
U.S.A., All Rights Reserved.
Printed on recycled paper.
ISBN: 978-1-62076-531-9
Note the following details of the code protection feature on Microchip devices:
Microchip products meet the specification contained in their particular Microchip Data Sheet.
Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip’s Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
Microchip is willing to work with the customer who is concerned about the integrity of their code.
Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as “unbreakable.
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.
Microchip received ISO/TS-16949:2009 certification for its worldwide
headquarters, design and wafer fabrication facilities in Chandler and
Tempe, Arizona; Gresham, Oregon and design centers in California
and India. The Company’s quality system processes and procedures
are for its PIC® MCUs and dsPIC® DSCs, KEELOQ® code hopping
devices, Serial EEPROMs, microperipherals, nonvolatile memory and
analog products. In addition, Microchip’s quality system for the design
and manufacture of development systems is ISO 9001:2000 certified.
QUALITY MANAGEMENT S
YSTEM
CERTIFIED BY DNV
== ISO/TS 16949 ==
6‘ ‘MICRDCHIP
DS41632B-page 10 2012 Microchip Technology Inc.
AMERICAS
Corporate Office
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200
Fax: 480-792-7277
Technical Support:
http://www.microchip.com/
support
Web Address:
www.microchip.com
Atlanta
Duluth, GA
Tel: 678-957-9614
Fax: 678-957-1455
Boston
Westborough, MA
Tel: 774-760-0087
Fax: 774-760-0088
Chicago
Itasca, IL
Tel: 630-285-0071
Fax: 630-285-0075
Cleveland
Independence, OH
Tel: 216-447-0464
Fax: 216-447-0643
Dallas
Addison, TX
Tel: 972-818-7423
Fax: 972-818-2924
Detroit
Farmington Hills, MI
Tel: 248-538-2250
Fax: 248-538-2260
Indianapolis
Noblesville, IN
Tel: 317-773-8323
Fax: 317-773-5453
Los Angeles
Mission Viejo, CA
Tel: 949-462-9523
Fax: 949-462-9608
Santa Clara
Santa Clara, CA
Tel: 408-961-6444
Fax: 408-961-6445
Toronto
Mississauga, Ontario,
Canada
Tel: 905-673-0699
Fax: 905-673-6509
ASIA/PACIFIC
Asia Pacific Office
Suites 3707-14, 37th Floor
Tower 6, The Gateway
Harbour City, Kowloon
Hong Kong
Tel: 852-2401-1200
Fax: 852-2401-3431
Australia - Sydney
Tel: 61-2-9868-6733
Fax: 61-2-9868-6755
China - Beijing
Tel: 86-10-8569-7000
Fax: 86-10-8528-2104
China - Chengdu
Tel: 86-28-8665-5511
Fax: 86-28-8665-7889
China - Chongqing
Tel: 86-23-8980-9588
Fax: 86-23-8980-9500
China - Hangzhou
Tel: 86-571-2819-3187
Fax: 86-571-2819-3189
China - Hong Kong SAR
Tel: 852-2401-1200
Fax: 852-2401-3431
China - Nanjing
Tel: 86-25-8473-2460
Fax: 86-25-8473-2470
China - Qingdao
Tel: 86-532-8502-7355
Fax: 86-532-8502-7205
China - Shanghai
Tel: 86-21-5407-5533
Fax: 86-21-5407-5066
China - Shenyang
Tel: 86-24-2334-2829
Fax: 86-24-2334-2393
China - Shenzhen
Tel: 86-755-8203-2660
Fax: 86-755-8203-1760
China - Wuhan
Tel: 86-27-5980-5300
Fax: 86-27-5980-5118
China - Xian
Tel: 86-29-8833-7252
Fax: 86-29-8833-7256
China - Xiamen
Tel: 86-592-2388138
Fax: 86-592-2388130
China - Zhuhai
Tel: 86-756-3210040
Fax: 86-756-3210049
ASIA/PACIFIC
India - Bangalore
Tel: 91-80-3090-4444
Fax: 91-80-3090-4123
India - New Delhi
Tel: 91-11-4160-8631
Fax: 91-11-4160-8632
India - Pune
Tel: 91-20-2566-1512
Fax: 91-20-2566-1513
Japan - Osaka
Tel: 81-66-152-7160
Fax: 81-66-152-9310
Japan - Yokohama
Tel: 81-45-471- 6166
Fax: 81-45-471-6122
Korea - Daegu
Tel: 82-53-744-4301
Fax: 82-53-744-4302
Korea - Seoul
Tel: 82-2-554-7200
Fax: 82-2-558-5932 or
82-2-558-5934
Malaysia - Kuala Lumpur
Tel: 60-3-6201-9857
Fax: 60-3-6201-9859
Malaysia - Penang
Tel: 60-4-227-8870
Fax: 60-4-227-4068
Philippines - Manila
Tel: 63-2-634-9065
Fax: 63-2-634-9069
Singapore
Tel: 65-6334-8870
Fax: 65-6334-8850
Taiwan - Hsin Chu
Tel: 886-3-5778-366
Fax: 886-3-5770-955
Taiwan - Kaohsiung
Tel: 886-7-536-4818
Fax: 886-7-330-9305
Taiwan - Taipei
Tel: 886-2-2500-6610
Fax: 886-2-2508-0102
Thailand - Bangkok
Tel: 66-2-694-1351
Fax: 66-2-694-1350
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
Fax: 33-1-69-30-90-79
Germany - Munich
Tel: 49-89-627-144-0
Fax: 49-89-627-144-44
Italy - Milan
Tel: 39-0331-742611
Fax: 39-0331-466781
Netherlands - Drunen
Tel: 31-416-690399
Fax: 31-416-690340
Spain - Madrid
Tel: 34-91-708-08-90
Fax: 34-91-708-08-91
UK - Wokingham
Tel: 44-118-921-5869
Fax: 44-118-921-5820
Worldwide Sales and Service
11/29/11

Products related to this Datasheet

IC MCU 8BIT 7KB FLASH 20SOIC
Available Quantity: 148
Unit Price: 1.71
IC MCU 8BIT 3.5KB FLASH 14TSSOP
Available Quantity: 41
Unit Price: 1.1
IC MCU 8BIT 1.75KB FLASH 8DFN
Available Quantity: 21
Unit Price: 0.98
IC MCU 8BIT 3.5KB FLASH 20SSO
Available Quantity: 0
Unit Price: 1.065
IC MCU 8BIT 448B FLASH 8DFN
Available Quantity: 0
Unit Price: 0.63
IC MCU 8BIT 896B FLASH 8DFN
Available Quantity: 0
Unit Price: 0.667
IC MCU 8BIT 896B FLASH 8DIP
Available Quantity: 0
Unit Price: 0.7705
IC MCU 8BIT 448B FLASH 8DIP
Available Quantity: 0
Unit Price: 0.7245
IC MCU 8BIT 3.5KB FLASH 14SOIC
Available Quantity: 0
Unit Price: 0.9
IC MCU 8BIT 3.5KB FLASH 14TSSOP
Available Quantity: 0
Unit Price: 0.945
IC MCU 8BIT 3.5KB FLASH 16QFN
Available Quantity: 0
Unit Price: 0.96
IC MCU 8BIT 3.5KB FLASH 14SOIC
Available Quantity: 0
Unit Price: 0.87
IC MCU 8BIT 3.5KB FLASH 14TSSOP
Available Quantity: 0
Unit Price: 0.93
IC MCU 8BIT 7KB FLASH 20QFN
Available Quantity: 0
Unit Price: 1.62
IC MCU 8BIT 7KB FLASH 20DIP
Available Quantity: 0
Unit Price: 1.70201
IC MCU 8BIT 7KB FLASH 20SSOP
Available Quantity: 0
Unit Price: 1.52
IC MCU 8BIT 7KB FLASH 20QFN
Available Quantity: 0
Unit Price: 1.305
IC MCU 8BIT 7KB FLASH 20SOIC
Available Quantity: 0
Unit Price: 1.357
IC MCU 8BIT 14KB FLASH 20QFN
Available Quantity: 0
Unit Price: 1.73
IC MCU 8BIT 14KB FLASH 20SOIC
Available Quantity: 0
Unit Price: 1.78
IC MCU 8BIT 14KB FLASH 20QFN
Available Quantity: 0
Unit Price: 1.357
IC MCU 8BIT 14KB FLASH 20SSOP
Available Quantity: 0
Unit Price: 1.25351
IC MCU 8BIT 7KB FLASH 20QFN
Available Quantity: 0
Unit Price: 1.62
IC MCU 8BIT 7KB FLASH 20DIP
Available Quantity: 0
Unit Price: 1.70201
IC MCU 8BIT 896B FLASH SOT23-6
Available Quantity: 0
Unit Price: 0.645
IC MCU 8BIT 3.5KB FLASH 20UQFN
Available Quantity: 0
Unit Price: 0.92
IC MCU 8BIT 3.5KB FLASH 16QFN
Available Quantity: 0
Unit Price: 1.17
IC MCU 8BIT 3.5KB FLASH 16QFN
Available Quantity: 0
Unit Price: 1.17
IC MCU 8BIT 3.5KB FLASH 14TSSOP
Available Quantity: 0
Unit Price: 1.1
IC MCU 8BIT 1.75KB FLASH 8UDFN
Available Quantity: 272
Unit Price: 0.77