Professional Documents
Culture Documents
HOME
BLOGS
FORUMS
PROJECTS
DOWNLOADS
FAQ
Searchthissite
NOTICE:Thiswebsitewillbeshutdowninthenearfuture.Productcontenthasmovedtonxp.com.ForumcontentandFAQshave
beenmovedtocommunity.nxp.com.Weencourageyoutocreateauseraccountonnxp.comtousethenewcommunityforumsand
accessNXPmicrocontrollercontent.Wegreatlyappreciateyourcontribu onsandlookforwardtoseeingyouatournewweb
loca on.
ECGApplicationExampleusingLPC4370andLabToolHardware
Home
SubmittedbyNXP_SupportonThu,2013112115:18
ADCHSandDACprogrammingwithLPCLink2+LabTool
DirceuRodrigues,Jr.Oct.2013
Bio
DirceuRodrigues,Jr.isacomputerengineerwithamaster'sdegreeinelectricalengineering.Asanindependentconsultant,hetestsnewproductswithparticularinterestintheareasofwireless
sensornetworks,ARMprocessors,DSP,motorcontrol,andmedicalapplications.
Introduction
WhenIgotinvolvedwiththiscampaign,myinitialideawastousetheNXPLPC4370microcontrolleravailableontheLPCLink2toimplementamulticoreFIRfilter.Combinedwiththeanalog
processingcapabilitiespresentonLabTooladdonboard,wouldbeidealtoputinplaceastructurewhichIdiscussedonESCBrazil2013(MulticoreMicrocontrollersinInstrumentationandControl).But
afteratimestudyingtheschematicsoftheseboards,Irealizedthatunderstandingthesignalconditioningcircuits,gainsettings,inputcalibrationandthecorrectuseofADCHS(12bitHighSpeedADC)
peripheralandexternalDAC,deserveawholearticle.Forme,themostimportantfeatureoftheboardLPCLink2(inadditiontobeingaprogrammer/debuggerforthetarget)isabletoprogramageneric
applicationonLPC4370memory,sincethereareseveralanalog/digitalpinsavailableonexpansionconnectors.
Firstly,IdownloadedthelatestversionoftheARMKeilVision(V4.72.10.0).Attime,IhadnotexperiencedthenewLPCOpenlibrary,soIchangedtheLPC43xx.hprovidedbythecompilerto
addarawsupportforADCHSperipheralrenamingittoLPC43xx_new.h.Thechangeconsistsprimarilyindefineregisteraddresses,enablingreferencessuchasLPC_ADCHS>xxx.Beforeattach
LPCLink2ontopofLabToolboard,Iconnectedthe10pinSWDcableonJ2ofLPCLink2,accordingFigure1.Willlooklikethecableissqueezedbetweentheboards,butthatisquitenormal.Also,
theusermusttoensuretheotherconnectorsarenotslightlymisaligned.
LabToolAnalogInputs
NextItriedtounveilthestructurearoundthehighspeedanalogtodigitalconverter.ThereasonforthepresenceoftheBNCconnectorsonLabToolistoimplementacompletetwochanneloscilloscope,
whosefeaturesarefarfrommodest,sincetheLPC4370includesa12bitADC,andcanoperateupto80MHz.Notethatthetwo10bitADCmodulesareabsentonLPC4370TFBGA100packageused
inLabTool.AverysimplifiedschematicofinputconditioningcircuitforeachchannelisshownonFigure2.Thecompletedesign,providedbyEmbeddedArtists[1],includesseveralothercomponents,
includingcapacitorsforshapingthefrequencyresponse.
Allse ngsarecontrolledviatheSPIinterface,includingtheDC/ACcoupling.Theinput(0.5V)isprovidedbyaproperMCUpinrelatedtoADCHS,asIwillexplainlater.Twoanalog
mul plexersallowsetthegainwhenchangingtheopera onalamplierfeedbackresistor.Fromthenominalvaluesofcomponentsongure,wecanwritesomeequa onsfortheDC
model:
Search
TheLPC4370ADCisaashtypewithdieren alinputFigure3.
Thevalueconvertedtodigitaldomain,aspresentedonpage1287ofLPC43xxUserManual(2013dra version),is:
ThroughtheDCINNEGandDCINPOSbitsonADCHSPOWER_CONTROLregister,theusercanadda0.5VDCosettothedieren alinputs.InthecaseofLabtoolboard,isconvenient
makeDCINNEG=1andDCINPOS=0,consideringthepresenceofampopwiththenoninver nginputvoltage
accordingFigure2.Withthesese ngs:
and
Also,notethat
Subs tu ngtheseresultsonEq.4:
,and:
Dening:
Feedbackresistance
NoninvertingAmp.Op.gain
GA
VCH1
2k87//158R
0.4
2k87//536R
0.8
2k87//1k65
1.6
2k87
20
0R
0.016
1k33//270R
2.5
0.04
1k33//1k07
5(4.95)
0.08
1k33
10(9.86)
0.16
In order toobtain a value of acceptableprecisionit's required to compensate the ADC readings (NADC) for component tolerances and other devia ons associated with the input
condi oningcircuit.Thisisdoneinso ware.Ananefunc on(gainandoset)makesthecorrec onbasedonthecurrentreadingandpreviouscalibra ondataLis ng1.
Rememberthatameasuringinstrumentisnotonlyasgoodasitscomponents,butalsoasthecalibra onmethodused.
LabToolAnalogOutputs
TheDigitaltoAnalogsec onismorestraigh orward.Sincethe10bitDACmoduleisabsentonLPC4370TFBGA100package,theLabToolboardreliesonexternalDAC102S085from
Na onaltooutputtwoanalogvoltages.Asbefore,thesimplerschema conFigure4showstheessen alcomponentsfortheDCmodel.
OnLabToolboard,theLPC4370SSP1peripheralhasthreeusages:
SettingsfortheADCHSconditioningcircuit.
WritingonDAC
CommunicationwithanEEPROM
Thesharingiscarriedoutthroughappropriateslaveselec onsignals(SSELandGPIOs)fromMCU.TheDAChastwochannelswithinternaldataregisterincludingcontrolsfor
update/refresh ming.
Therelevantequationsare:
SubstitutingEq.7inEq.8:
Applica on:FilteringanECG
InordertotesttheADCHSandrelatedequationsobtainedfromtheLabToolmanufacturerschematics,IdecidedtoprogramtheARMCortexM4onLPC4370toimplementastopbandFIR(Finite
ImpulseResponse)filterwith127taps.TheideaistofilteranECGsignalcorruptedby60Hzhum.Toavoidbuildingacircuitaroundaninstrumentationamplifier(somethingI'vedoneafewtimes)and
wastesomeskinelectrodesIthoughtusingthecomputersoundcardtogeneratethedesiredsignal.So,thefollowingtaskswereperformed:
FindanECGsignaldatabaseinaudioformat[2].
Selectthefileecg.wav(60sduration,16bit,1kSa/s).
ExtractthefiledataonMatlab,inserta60Hznoiseandrewriteitinwavformat.
PlaythefileoncomputerlineoutusingasoftwareforaudioeditinglikeGoldWave.
Thiswillallowsomeexperimentation,asrepeatintervals,invertpolarity,attenuateandmanyotherusefultransformationsFigure6.
DesignanotchFIRfilterinMatlabandsimulatetheresult.
Makeaheaderfilewiththegenerated127coefficients.
Forthisapplica on,IusedDCcouplingoninput(capacitorshortcircuitedonFigure2).Also,theADCHSwasconguredtopresenttheresultintwoscomplementformat(otherop on
isosetbinary).Figure7showsadiagramfortheFIRltercoecientsandoutputlabeledascandNFILT,respec vely.
Tochecktheresult,thelteredsignalissenttotheanalogoutputinreal me.ForthisitsnecessarytoperformaconversionbetweentheADCHSandDAC102S085rangesusing
appropriateequa ons.HereIhaveatleasttwoop ons:
1.Takingadvantageofmaximumavailableresolu on(notused):
Inthiscase,theconversionisperformedthroughtheEqua on10andFigure8.
Subs tu ngEq.10onEq.9:
Thisleadstoamaximuminputvoltagearound+/2.5V,when2048<=NFILT<+2048.CombiningEq.11andEq.12,therela onshipbetweeninputandoutputisgivenby:
2.Equalamplitudes(input/output):
IntheECGlteringapplica oonitisdesirablethattheoriginalandlteredsignalshadthesameamplitude,ora1:1rela onship.Therefore,I'vecarriedadierentconversioninorder
tomeetVEXT_AOUT1=VCH1.S llmaintainingthegain10betweenVCH1andNFILTandequa ngEq.12andEq.9:
ArmedwihtthismodelingIdidasimula ononMatlab.TheplotsonFigure9allowedmetocheckthelterperformancebycomparingtheinput,thenoisysignalandtheoutput.
Noteanapproximatedelayof64msbetweentheinputandoutput(represen ngtaps/2samples).
Withthissetofequa onsandtheFIRitselfcodedonLPC4370,thenalresultisshownfollowing.
Thesamplingandoutputratesbothareequalto1k/s.Noteanapproximatedelayof64msbetweeninputandoutput(represen ngtaps/2samples).Thispowerfulmicrocontroller
anditshighspeedADCareabletohandlesampleratesmuchhigherthantheoneIusedhere,includingmul channelaudio.AsImen onedearlier,thepurposeofthissimple
applica onisjusttointroducetheanalogresourcesavailableonLabToolboard.
Conclusion
TheADCHShasmanyothercongura onop ons.Itworksthroughastatemachinewithadedicated merandasetofeightdescriptors,forwhichitispossibletoestablishhowandwhenaconversion
occurs,genera nginterrupts,llinga16posi onFIFOortransferringdatathroughDMA
[3]h p://www.youtube.com/DirceuRodriguesJr
Average:
Yourrating:NoneAverage:4.5(2votes)
Privacy|TermsofUse
Copyright2016LPCWare.com