Protues环境的基于ARM的PWM设计仿真.docx
- 文档编号:25017299
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:53
- 大小:687.83KB
Protues环境的基于ARM的PWM设计仿真.docx
《Protues环境的基于ARM的PWM设计仿真.docx》由会员分享,可在线阅读,更多相关《Protues环境的基于ARM的PWM设计仿真.docx(53页珍藏版)》请在冰豆网上搜索。
Protues环境的基于ARM的PWM设计仿真
摘要
随着社会的发展,嵌入式系统已经渗入到人们的生活中,例如常见的手机就是它的一项应用。
嵌入式系统的核心部件是嵌入式处理器,其中基于ARM内核的嵌入式处理器独占鳌头,像飞利浦公司基于ARM7内核而开发的LPC2124芯片就十分常见。
在研究ARM过程中,开发平台必不可少,其中Proteus具有虚拟仿真功能,使得设计嵌入式系统更加方便。
论文阐述了在Proteus平台下,搭建以LPC2124芯片为核心的PWM可调占空比电路,其中包括芯片的基础电路(接入电源、晶振与复位电路等)、开关电路、PWM转换DAC环节、信号放大环节以及驱动电机转动等。
之后在Keil工具中编程控制PWM波形,最后进行仿真调试。
在最后的仿真调试中,系统成功输出PWM波形,并可以电机转速,符合设计目的。
关键词:
嵌入式系统;ARM嵌入式处理器;Proteus仿真;基于ARM7的LPC2124芯片;PWM输出
ProtuesenvironmentbasedonARMPWMdesignsimulation
Abstract
Withthedevelopmentofsociety,theembeddedsystemalreadyhavebeeninfiltratedintopeople'slives.Forexample,oneofitsapplicationiscommoncellphones.Embeddedsystemsofthecorecomponentsisembeddedprocessor,whichbasedonARMcorehasoccupiedmostofthemarket.AsweknowitisverycommontousetheLPC2124whosestructurebasedonARM7intheproducts.InthecourseofresearchingARM,itisnecessarytousedevelopmentplatform,inwhichproteushasavirtualsimulationfunctionthatmadethedesignofembeddedsystemsmoreconvenient.
Thestudyexpoundthatintheproteusplatform,buildingacircuitwhichtakesLPC2124asthecore.Andinthatcircuit,wecancontrolthedutycycleofPWM.Assuredly,thecircuitincludesthebasisofthecircuitchipwhichcontainpowersupply,crystaloscillatorandresetcircuit.Italsoincludesswitchcircuit,PWMconverterDAC,Signalamplificationanddrivemotor.Afterthat,itwillprogrammecontrolofPWMwaveformintheKeiltools.Finallywecanseethesimulationanddebugging.
Inthefinalsimulationdebugging,thesystemoutputthePWMwaveformsuccessfullyandthemotorspeedcouldbechanged.Soitisprovethatthesystemisinkeepingwiththegoalofthedesign.
Keywords:
Embeddedsystem,ARMembeddedprocessor,Proteussimulation,LPC2124basedonARM7,PWMoutput
第一章绪论
1.1研究背景
嵌入式系统的研究,近年来相当火热,已经成为一个比较新并且比较热门的专业之一。
如果说桌面系统已经是个老人的话,嵌入式系统就是个婴儿,是很有前途的【1】。
嵌入式系统在人们生活中应用广泛,其典型应用就是手机。
研究嵌入式系统不得不谈ARM处理器,更不能舍弃开发平台。
而Proteus环境正是一款虚拟的开发平台,较传统开发平台更具优势。
除此之外,在开发ARM时,还需要开发工具的辅助,如KeilforARM等。
嵌入式系统的开发,离不开微处理器。
可以说,凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统。
作为系统核心的微处理器又包括三类:
微控制器(MCU)、数字信号处理器(DSP)、嵌入式微处理器(MPU)【2】。
而ARM微处理器的构架占其大部分,应用非常广泛,所以研究ARM具有巨大的市场潜力。
ARM是AdvancedRISCMachines的缩写,是生产嵌入式处理器的先驱,也是全球领先的16/32位RISC微处理器的知识产权设计供应商。
ARM公司通过转让高性能、成本低、体积小、低功耗的RISC微处理器、外围和系统芯片设计技术给合作伙伴,使他们能用这些技术来生产各具特色的芯片。
目前,应用比较多的是ARM7系列、ARM9系列、ARM9E系列、ARM10系列和SecurCore系列,以及Intel公司的StrongARM系列和XScale系列。
其中ARM7系列微处理器——低功耗的32位RISC处理器,最适合用于对价位和功耗要求较高的消费类应用。
其主要应用领域为:
工业控制、Internet设备、网络和调制解调器设备、移动电话等多种多媒体和嵌入式应用。
ARM7的内核及结构包括ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ,其中ARM7TMDI是目前使用最广泛的32位嵌入式RISC处理器,属于低端ARM处理器核(TDMI的基本含义为,T:
支持16为压缩指令集Thumb,D:
支持片上Debug,M:
内嵌硬件乘法器Multiplier,I:
嵌入式ICE,支持片上断点和调试点)【2】。
研究嵌入式系统,开发平台必不可少,其中资源少的开发平台便宜但功能较少,资源多的开发平台又价格不菲,而传统的电子设计又费时费力不能满足当今高速经济的发展。
Proteus的出现,给了我们一个新的设计思路与环境,大大方便我们进行嵌入式系统的开发设计。
Proteus支持ARM,PIC,AVR,以及8051等的仿真,并且具有强大的调试工具,包括寄存器和存储器,断点和单步模式,IARC-SPY和KeiluVision2等开发工具的源层调试,应用特殊模型的DLL界面——提供有关元件库的全部文件,以及交互的装置模型,包括LED、LCD显示、RS232终端和通用键盘,满足我们的开发设计需求【3】。
随着嵌入式系统的发展,由其核心部件控制的脉冲宽度调制(PWM)技术得到了飞跃式地提高。
该技术使电压或电流源以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的,通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候,只要带宽足够,任何模拟值都可以使用PWM进行编码。
因此广泛应用于测量、通信、功率控制与变换等许多领域。
通过在ARM嵌入式系统上用C语言编程实现PWM控制输出,充分利用现有的集成芯片的强大功能,省去了原有的许多硬件电路,使整个PWM脉冲的产生过程得到了大大的简化,并且经过简单的变换电路就可以实现DAC,这将大量降低成本电子设备的成本、减少体积,并容易提高精度。
1.2国内研究现状
目前国内外,嵌入式设备早已得到广泛应用。
在工业控制以及仿真模拟方面,嵌入式系统在自动化行业已有很多成功的案例,如数控机床控制系统、面向啤酒行业控制系统、水厂控制系统、缝纫机控制系统、可燃性气体报警系统、智能建筑安防系统、自动生产线分部式控制系统、变电站自动化系统、自动生产线检测系统等。
在移动计算设备方面,像手机、PDA、掌上电脑等都是嵌入式设备。
在交通系统方面,嵌入式系统的作用也越来越重要。
而这些设备都离不开嵌入式处理器,ARM公司不断推出新产品供生产厂商选择,如ARM7、ARM9、ARM9E、ARM10和SecurCore系列。
嵌入式设备的PWM技术应用也相当广泛,尤其是在工业生产领域。
较国内而言,国外机构更加注重研究PWM技术的创新。
例如,双PWM控制技术打破了过去变频器的统一结构,采用PWM整流器和PWM逆变器提高了系统功率因数,并且实现了电机的四象限运行,这给变频器技术增添了新的生机,形成了高质量能量回馈技术的最新发展动态。
其中PWM整流器近几年技术成熟,现已大规模生产,如西门子公司的有源前端(ActiveFrontEnd)系列产品,使更加实用、性能更为优异的大容量交流传动的应用成为可能。
国内在功率换流领域方面的研究起步较晚,与先进的工业国家相比尚有较大的差距。
因此,进行高性能的PWM整流器的研究开发工作,并尽快产品化具有重大意义。
当微处理器应用于PWM技术实现数字化以后,又有新的PWM技术出现,即多电平脉宽调制PWM控制技术,从追求电压波形的正弦,到电流波形的正弦,再到磁通的正弦,从效率最优,转矩脉动最少,再到消除噪音等,使得目前PWM的控制方法种类繁多。
在生产方面,NXP低功耗LPC1000即基于ARM带有PWM的控制芯片,其高达100MHz运行速度、紧凑的尺寸、高能效与高性能使它特别适合SOC、ASSP和独立微控制器中的电源管理任务,潜在市场包括电池供电的消费电子设备、高级电子仪表、安检系统、便携式医疗设备、电机控制、智能卡、无线通信等领域;奥科S3C2440开发板具有4路PWM控制,可直接应用在工业控制的数控机床、工业机器人、印刷机械等方面;深圳英贝德科技有限公司生产的ARM嵌入式主板,除具有PWM计数器外,其它重要功能还广泛应用于工控、医疗、监控、仪表等领域。
在研究方面,有一种新型的、由ARM芯片和嵌入式操作系统uC/OS-II及相应的软件实现的直流电动机PWM调速控制系统,其系统的运行结果表明,较传统的PWM直流电动机调速控制系统更具有良好的工作性能。
1.3主要研究内容
针对以上技术运用之广泛,论文就其应用的一小部分进行研究,即ARM芯片的PWM控制技术,旨在说明嵌入式系统的重要性以及应用的广泛性。
其中要用到Proteus仿真、Keil编程以及联合调试。
除此之外,对个人来说,Proteus环境下的ARM虚拟开发、控制PWM输出的技术,可以有利于进一步掌握单片机原理与应用技术、电路设计、proteus平台下的仿真与调试等。
论文将阐述使用Proteus软件,搭建基于ARM7构架的LPC2124可调PWM输出电路,通过控制PWM占空比调节电机转速,并论述虚拟开发具有更好的操作性、经济性。
在设计阶段,给出整体系统设计思路,包括硬件系统设计以及软件系统设计的构思。
在硬件系统设计中,阐述ARM7构架及其特点,LPC2124引脚、硬件结构等等。
在软件系统设计中,对LPC2124接口在编程中连接的方法与步骤进行说明,并详细介绍控制PWM输出的具体方法与步骤以及最后完整的代码。
在仿真阶段,介绍Proteus及其使用方法、KeilforARM工具使用方法及工作步骤,对电路仿真的过程与结果进行详细介绍并完成联合调试。
第二章PWM技术与电路控制
2.1脉宽调制PWM技术
所谓PWM,就是脉宽调制,是利用半导体功率晶体管或晶闸管等开关器件的导通和关断,把直流电压变成一系列幅值相等的电压脉冲,通过控制电压脉冲的宽度或周期以达到变压目的,或者控制电压脉冲宽度和脉冲列的周期以达到变压变频目的的一种变换电路【4】。
PWM控制的思想源于通信技术,全控型器件的发展使得实现PWM控制变得十分容易。
面积等效原理是PWM技术的重要基础理论;一种典型的PWM控制波形SPWM:
脉冲的宽度按正弦规律变化而和正弦波等效的PWM波形称为SPWM波。
PWM技术控制原理如下:
(1)特性描述
PWM功能建立在标准定时器之上的,需要匹配寄存器事件的发生。
它的定时器为32位,提供预分频控制电路来获得想要的频率。
提供的7个匹配寄存器可实现6个单边PWM或3个双边PWM输出,当然也可以采用这两种类型的混合输出。
使用双边沿PWM输出时,使用PWM2、PWM4、和PWM6(通常不使用PWM3、PWM5作为双边沿输出,因为会减少可用的双边沿PWM个数;使用PWM2、PWM4、和PWM6可以达到最多个数的双边沿PWM输出);使用单边PWM输出时,在PWM周期开始时为高电平,匹配后为低电平(没有发生匹配,即匹配值大于PWM速率时,输出将一直保持高电平);使用PWMMR0作为PWM周期控制,PWMMRx作为占空比控制。
在单边沿控制中,需要使用2个匹配寄存器,即MR0控制周期率,其它控制PWM边沿位置。
由于所有PWM输出的重复率速率都是相同的,所以每个额外的单边沿控制只需要一个匹配寄存器;当MR0发生匹配时,在每个PWM周期开始都会有一个上升沿。
在双边沿控制中,需要使用3个匹配寄存器,即同样由MR0控制周期率,其它2个控制PWM的两个边沿位置。
每个额外的双边沿控制只需要2个匹配寄存器;当MR0发生匹配时,在每个PWM周期开始的指定位置都会出现上升沿和下降沿,这样就产生了正脉冲和负脉冲【5】。
其上升沿和下降沿位置可以独立控制,使得PWM能够应用在很多领域,如多相位电机控制。
当PWM模式未使能时,此时可作为一个标准的定时器。
表2-1是各寄存器的名称与作用说明,其中各个寄存器具体的操作与说明可查LPC2124手册。
表2-1PWM寄存器映射
地址
名称
访问
复位值
描述
0xE0014000
PWMIR
R/W
0
PWM中断寄存器。
可以写IR来清除中断。
可读取IR来识别哪个中断源被挂起。
0xE0014004
PWMTCR
R/W
0
PWM定时器控制寄存器。
TCR用于控制定时器计数器功能,定时器计数器可通过TCR禁止或复位。
0xE0014008
PWMTC
R/W
0
PWM定时器计数器。
32位TC没经过PR+1个plck周期加1,TC通过TCR进行控制。
0xE001400C
PWMPR
R/W
0
PWM预分频计数器。
TC每经过PR+1个plck周期加1。
0xE0014010
PWMPC
R/W
0
PWM预分频计数器。
每当32位PC的值增加到等于PR中保存的值时,TC加1。
0xE0014014
PWMMCR
R/W
0
PWM匹配控制寄存器。
MCR用于控制在匹配时是否产生中断或复位TC。
0xE0014018
PWMMR0
R/W
0
PWM匹配寄存器0。
MR0可通过MCR设定为在匹配时复位TC、停止TC/PC或产生中断。
0xE001401C
PWMMR1
R/W
0
PWM匹配寄存器1。
MR1可通过MCR设定为在匹配时复位TC、停止TC/PC或产生中断。
此外,MR1和TC的匹配将清零单边沿模式下的PWM1,并置位双边沿模式下的PWM2。
0xE0014020
PWMMR2
R/W
0
PWM匹配寄存器2。
MR2可通过MCR设定为在匹配时复位TC、停止TC/PC或产生中断。
此外,MR2和TC的匹配将清零单边沿模式下的PWM2,并置位双边沿模式下的PWM3。
0xE0014024
PWMMR3
R/W
0
PWM匹配寄存器3。
MR3可通过MCR设定为在匹配时复位TC、停止TC/PC或产生中断。
此外,MR3和TC的匹配将清零单边沿模式下的PWM3,并置位双边沿模式下的PWM4。
0xE0014040
PWMMR4
R/W
0
PWM匹配寄存器4。
MR4可通过MCR设定为在匹配时复位TC、停止TC/PC或产生中断。
此外,MR4和TC的匹配将清零单边沿模式下的PWM4,并置位双边沿模式下的PWM5。
0xE0014044
PWMMR5
R/W
0
PWM匹配寄存器5。
MR5可通过MCR设定为在匹配时复位TC、停止TC/PC或产生中断。
此外,MR5和TC的匹配将清零单边沿模式下的PWM5,并置位双边沿模式下的PWM6。
0xE0014048
PWMMR6
R/W
0
PWM匹配寄存器6。
MR2可通过MCR设定为在匹配时复位TC、停止TC/PC或产生中断。
此外,MR6和TC的匹配将清零单边沿模式下的PWM6,并置位双边沿模式下的PWM6。
0xE001404C
PWMPCR
R/W
0
PWM控制寄存器。
使能PWM输出并选择PWM通道类型为单边沿或双边沿控制。
0xE0014050
PWMLER
R/W
0
PWM锁存使能寄存器。
使能使用新的PWM匹配值。
(2)工作流程
32位定时器PWMTC的计数频率由pclk经过PWMPR进行分频控制得到,而定时器的启动或停止、计数复位由PWMTCR控制。
当有比较匹配事件发生时,PWMIR会设置相关中断标志,与定时器溢出而产生的中断有区别,因而图中用虚线表示,当然中断的前提是已打开中断允许(VIC),PWM的基本寄存器功能框图如图2.1所示。
图2.1PWM的基本寄存器功能框图
定时器比较匹配由控制寄存器PWMMCR进行匹配操作设置,其比较值寄存器为而PWMMR0-6,为7路比较匹配通道。
当比较匹配时,将会按照PWMMCR设置的方法产生中断或复位PWMTC等,还可以控制单边或双边PWM输出,允许或不允许PWM输出。
此外,片内还使用了一个PWMLER锁存使能寄存器确保对PWMMR0-6的比较值进行修改过程中不影响PWM输出。
当PWM匹配寄存器执行写时,新的数据将保存在映像寄存器。
在匹配0事件发生后,PWMLER的对应位置位,修改的MR0-6的比较值才会送到实际的匹配寄存器中生效【4】,如图2.2所示。
图2.2PWM的比较匹配寄存器功能框图
(3)PWM输出方法
a)连接PWM功能引脚输出,即设置PINSEL0、PINSEL1;
b)设置PWM定时器的时钟分频值(PWMPR),得到所要的定时器时钟;
c)设置比较匹配控制(PWMMCR),并设置相应的比较值(PWMMRx);
d)设置PWM输出方式并允许PWM输出(PWMPCR)及锁存使能控制(PWMLER);
e)设置PWMTCR,启动定时器,使能PWM;
f)运行过程中要更改比较值时,更改之后要设置锁存使能。
2.2滤波
当电路板集成度越来越高时,简单的电路信号转换变得愈加重要。
PWM经过简单的变换电路就可以实现DAC,这将大量降低成本电子设备的成本、减少体积,并提高精度。
PWM波形表达式为:
f
=
其中:
T是单片机中计数脉冲的基本周期,即单片机每隔T时间记一次数(计数器的值增加或者减少1),N是PWM波一个周期的计数脉冲个数,n是PWM波一个周期中高电平的计数脉冲个数,VH和VL分别是PWM波高低电平的电压值,k为谐波次数,t为时间。
展开成傅里叶级数:
f
=
+2
+
从式中可以看出,式中第1个方括弧为直流分量,第2项为1次谐波分量,第3项为大于1次的高次谐波分量。
直流分量与n成线性关系,并随着n从0到N,直流分量从VL到VL+VH之间变化,这正是电压输出的DAC所需要的。
因此,把除直流分量的谐波过滤掉,则可以得到从PWM波到电压输出DAC的转换,即:
PWM波可以通过一个低通滤波器进行解调。
第2项的幅度和相角与n有关,频率为1/(NT),该频率是设计低通滤波器的依据。
如果能把1次谐波很好过滤掉,则高次谐波就应该基本不存在了。
由此可以设计出滤波电路框图,如图2.3所示。
DAC
图2.3滤波电路框图
此框图可以由许多电路实现,最简单的电路是RC滤波电路,如图2.4所示。
只要知道单片机的N和T,由特征角频率ωc=1/(RC)=1/(NT)便可确定RC参数。
图2.4RC滤波电路
2.3信号放大
RC滤波后,信号微弱,为了能够驱动电机转动并使其具有更好的显示效果,需要将信号放大。
由于同相比例放大电路在示波器查看方面失真较少,并且实现电路简单(如图2.5所示),因此采用同相比例运算电路,其特点如下【5】:
a)输入电阻很高,输出电阻很低;
b)由于Vn=Vp=Vs,电路不存在虚地,且运放存在共模输入信号,因此要求运放有较高的共模抑制比。
图2.5同相放大电路
信号电压通过电阻Rs加到运放的同相输入端,输出电压Vo通过电阻R1和Rf反馈到运放的反相输入端,构成电压串联负反馈放大电路。
根据虚短、虚断的概念有:
Vn=Vp=Vs,i1=iF,
=
Vo,求得
=(
)Vs,由此即可得知放大倍数。
本章小结
本章主要介绍了系统设计中需要使用的具体理论与原理。
其中PWM控制技术是系统的核心技术;PWM转DAC滤波是电路集成化不可或缺的环节,也是设计中的创新环节;而信号放大则是为了驱动电机以及实验效果而设计的。
本章初步解决了PWM输出方法与控制原理以及电路搭建的各环节设计方案(包括所需各种参数的关系式),为后面的各环节具体设计提供了理论依据与计算方法。
第三章Protues环境基于ARM的PWM设计
3.1整体系统设计
系统整体设计流程如图3.1所示,其中包括硬件系统与软件系统。
图3.1整体系统设计流程
首先,在ProteusISIS新文件中放置LPC2124芯片,接入晶振电路、复位电路以及电源与地线;确定PWM输出引脚,并接入滤波、放大电路以及电机。
确定与开关信号相接的输入引脚,并接入上拉电阻与开关;连接示波器至PWM初始输出端口以及滤波放大后端口。
其次,KeilforARM建立工程,利用已确定的PWM控制引脚进行编码控制,同时确定好PWM周期;编译完成,确定无误后,将芯片程序导入Proteus中的LPC2124芯片中。
再次,进行仿真,查看并记录示波器变化、电机转速变化,检查是否满足实验目的;满足后记录其它各项信息,如CPU寄存器、引脚配置等信息、Flash和RAM。
最后,使用KeilforARM与Proteus联合调试,构建ARM嵌入式开发平台源代码级调试。
3.2硬件系统设计
硬件系统设计框图如图3.2所示。
设计的目的是实现可控PWM输出,即通过按键改变PWM波形的占空比,以致改变直流电机转速。
图3.2硬件系统设计框图
硬件系统电路原理图如图3.3所示,其中包括单片机LPC2124、晶振电路、复位电路、开关控制电路、滤波电路,信号放大电路以及电机与示波器等。
图3.3硬件电路原理图
(1)芯片设置环节
将LPC2124相应引脚接入电源(内核及片内外设供电电压为1.8V,I/O口所需电压为3.3V);外接晶振电路(晶振选择12MHz、电容选择常用的30pF)与复位电路(电阻选择10K,电容同样选择30pF);P0.9(PWM6)作为PWM波形输出引脚。
其中核心部件,即LPC2124的主要参数如下:
概述
LPC2124芯片是飞利浦公司推出的一款基于16/32位ARM7TDMI-STMCPU的微控制器。
它带有256KB的片内高速Flash存储器、128位宽的存储器接口以及独特的加速结构,这些都使得32位代码能够运行在最高时钟频率下。
此外,LPC2124支持实时仿真和嵌入式跟踪,并
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Protues 环境 基于 ARM PWM 设计 仿真