基于STM32定时器产生PWM的研究报告.doc

上传人:知****量 文档编号:12996942 上传时间:2022-04-27 格式:DOC 页数:34 大小:1.12MB
返回 下载 相关 举报
基于STM32定时器产生PWM的研究报告.doc_第1页
第1页 / 共34页
基于STM32定时器产生PWM的研究报告.doc_第2页
第2页 / 共34页
点击查看更多>>
资源描述

《基于STM32定时器产生PWM的研究报告.doc》由会员分享,可在线阅读,更多相关《基于STM32定时器产生PWM的研究报告.doc(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、. .基于STM32定时器产生PWM的研究作者XX:111专业班级:222指导教师:222摘要随着科技水平的提高,ARM的应用越来越广泛。With the develop of technology, ARM is used in various situations.旨在对ARM的深入学习,论文对STM32定时器产生PWM(脉冲宽度调制)输出进展了研究。On the intention of studyon ARM,timer of STM32 produce pulses PWM (width modulation) is studied in this paper.PWM就是某个频率占空

2、比的方波,其应用领域包括测量,通信,功率控制与变换,电动机控制、伺服控制、甚至某些音频放大器,因此研究PWM技术具有十分重要的现实意义。PWMis the square wave which has a sure duty-cycle and frequency. Its application fieldsincludemeasurement,munication,power control and transform,motor control,servocontrol, even someaudioamplifier.Therefore it is important to resear

3、ch PWMtechnology.本设计采用STM32定时器产生PWM。It is easy to use the timer of STM32 to produce PWM output.STM32的PWM由定时器产生,PWM的周期即定时器定时的时间,通过计算方波的频率,占空比,配置定时器和IO口,最后用示波器显示相应通道占空比的方波即可。PWMis producedby the timer of STM32.The cycle of PWMis the timers regular time.By calculating the frequency of square wave, duty

4、-cycle, configuring the timer and IO, thenuse oscilloscope displayed the PWM.经对STM32开发板的研究学习,通过对STM32定时器等的配置,用示波器显示,完成了PWM输出。Basedonthe STM32,by configuring the timer of STM32,PWMis displayed by oscilloscope.关键词STM32,定时器,PWMStudy for the outputof PWM produce by timer of STM32Based onMDKAbstract:With

5、 the development of technology, ARM is used in various situations.On the intention of study on ARM,timer of STM32 produce pulses PWM (width modulation) is studied in this paper. PWMis the square wave which has a sure duty-cycle and frequency. Its application fieldsincludemeasurement,munication,power

6、 control and transform,motor control,servocontrol, even someaudioamplifier.Therefore it is important to research PWM technology. It is easy to use the timer of STM32 to produce PWM output.PWMis producedby the timer of STM32.The cycle of PWMis the timers regular time.By calculating the frequency of s

7、quare wave, duty-cycle, configuring the timer and IO, thenuse oscilloscope displayed the PWM. Basedonthe STM32, by configuring the timer of STM32,PWM is displayed by oscilloscope.Key words:STM32,timer,PWM目录第1章前言51.1 ARM应用背景51.2 研究内容61.3 研究成果7第2章 STM32处理器概述82.1 STM32简介82.2 内部资源102.3 CORTEX-M3内核简介102.

8、4 STM32定时器简介122.4.1 通用定时器122.4.2 高级控制定时器122.4.3 小结15第3章 PWM概述163.1 原理163.1.1 PWM 模式163.1.2 互补输出与死区插入193.2 PWM输出的实现21第4章软件设计224.1 开发环境224.1.1 STM32的开发软件224.1.2 MDK370224.2 软件实现234.2.1 设计标准234.2.2 程序流程图25第五章测试及结果265.1 JTAG仿真器介绍265.2 测试275.3 现象及结果28结论31致谢32参考文献33第1章 前言1.1 ARM应用背景如今,学习一种处理器的就有许多ARM内核的处理

9、器可供使用,现在社会已步入嵌入式学习阶段。在嵌入式领域,8位处理器已经不再胜任一些复杂的应用,比方GUI,TCP/IP,FILESYSTEM等,而ARM芯片凭借强大的处理能力和极低的功耗,非常适合这些场合。现在越来越多的产品在选型的时候考虑到使用ARM处理器,ARM的应用是相当的广泛。ARM处理器ADCI/O接口键盘RAM LED传感器转换器LCD DACEPROM主机ARM的嵌入式控制应用如:汽车、电子设备、保安设备、大容量存储器、调制解调器、打印机等。一个典型的ARM嵌入式工业控制系统的功能模块如图1-1所示。输入输出图1-1ARM嵌入式工业控制系统的功能模块目前已有超过85的无线通信设备

10、采用了ARM技术,ARM以其高性能和低本钱,在该领域的地位日益稳固。ARM在此方面的应用如:手提式计算机、移动、PDA等。随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。此外,ARM在语音及视频处理上进展了优化,并获得广泛支持。ARM技术在目前流行的数字音频播放器、数字机顶盒、游戏机、数码相机、数字式电视机、GPS、机顶盒中得到广泛采用。现在流行的数码相机和打印机中绝大局部采用ARM技术,手机中的32位SIM智能卡也采用了ARM技术。如图1-2所示是基于ARM技术的数码相机的功能模块9。ARM处理器LCD控制器主机接口CCDADC控制电路和编码电路存储器图1-2基于ARM技

11、术的数码相机的功能模块1.2 研究内容 本设计旨在加深对ARM的学习,稳固大学四年所学专业知识,提升动手能力和思考问题解决问题的能力。本设计选择意法半导体的STM32F开发板,通过对该开发板的研究学习,和对STM32F103C8T6芯片的学习,掌握其各种外设功能。通过对TIM1定时器进展控制,使之各通道输出插入死区的互补PWM输出,各通道输出频率均为17.57KHz。其中,通道1输出的占空比为50%,通道2输出的占空比为25%,通道3输出的占空比为12.5%。各通道互补输出为反相输出。TIM1定时器的通道1到4的输出分别对应PA.08、PA.09、PA.10和PA.11引脚,而通道1到3的互补

12、输出分别对应PB.13、PB.14和PB.15引脚,中止输入引脚为PB.12。将这些引脚分别接入示波器,在示波器上观查相应通道占空比的方波12。本文第一章讲述了该论文写作背景,主要阐述了ARM应用X畴,以及该论文研究的内容;第二章讲述了该研究课题使用的开发板的内部资源和开发板核心芯片STM32F103C8的各项参数;第三章着重介绍了PWM的原理及实现方法;第四章介绍了本研究的软件设计模块;第五章介绍了测试方法和结果。1.3 研究成果配置好各通道后, 编译运行工程;点击MDK 的Debug菜单,点击Start/Stop Debug Session;通过示波器观察PA.08、PA.09、PA.10

13、、PB.13、PB.14、PB.15的输出波形,其中PA.08和PB.13为第一通道和互补通道,PB.09和PB.14为第二通道和其互补通道,PB.10和PB.15为第三通道和其互补通道;第一通道显示占空比为50%,第二通道占空比为25%,第三通道占空比为12.5%。第2章 STM32处理器概述2.1STM32简介24 STM32F103xx增强型系列使用高性能的ARM/Cortex-M3/32位的RISC内核,工作频率为72MHz,内置高速存储器(高达128K字节的闪存和20K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC 、3个通

14、用16位定时器和一个PWM定时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART、一个USB和一个CAN。 STM32F103xx增强型系列工作于-40至+105 的温度X围,供电电压2.0V至3.6V,一系列的省电模式保证低功耗应用的要求。 完整的STM32F103xx增强型系列产品包括从36脚至100脚的五种不同封装形式;根据不同的封装形式,器件中的外设配置不尽一样。下面给出了该系列产品中所有外设的根本介绍。 这些丰富的外设配置,使得STM32F103xx增强型微控制器适合于多种应用场合: 电机驱动和应用控制 ;医疗和手持设备 ;PC外设和GPS平台;工业应用:可编程控

15、制器、变频器、打印机和扫描仪 ;警报系统,视频对讲,和暖气通风空调系统 ;2.1.1STM32F103C8的参数 STM32开发板核心芯片的参数如表2-1表2-1 器件功能和配置(STM32F103xx 增强型) 芯片引脚图如图2-2:图2-2 STM32F103xx增强型LQPFP48管脚图2.2 内部资源STM32有丰富的内部资源,如下所示:RealView MDKMiertocontroller Development Kit基于ARM微控制器的专业嵌入式开发工具;内置闪存存储器;内置SRAM;嵌套的向量式中断控制器(NVIC);外部中断/事件控制器(EXTI);时钟和启动;自举模式;D

16、MA;RTC(实时时钟)和后备存放器 ;窗口看门狗;I2C总线;通用同步/异步承受发送器(USART);串行外设接口(SPI);控制器区域网络(CAN);通用串行总线(USB);通用输入输出接口(GPIO);ADC(模拟/数字转换器);温度传感器;串行线JTAG调试口(SWJ-DP)。2.3 Cortex-M3内核简介Cortex-M3内核包含一个适用于传统Thumb和新型Thumb-2指令的译码器、一个支持硬件乘法和硬件除法的先进ALU、控制逻辑和用于连接处理器其他部件的接口。Cortex-M3处理器是首款基于ARMv7-M架构的ARM处理器。中央Cortex-M3内核使用3级流水线哈佛架构

17、,运用分支预测、单周期乘法和硬件除法功能实现了出色的效率1.25DMIPS/MHz。Cortex-M3处理器是一个32位处理器,带有32位宽的数据路径、存放器库和基于传统ARM7处理器的系统只支持访问对齐的数据,沿着对齐的字边界即可对数据进展访问和存储。Cortex-M3处理器采用非对齐数据访问方式,使非对齐数据可以在单核访问中进展传输。Cortex-M3处理器是专为那些对本钱和功耗非常敏感但同时对性能要求又相当高的应用而设计的。凭借缩小的内核尺寸和出色的中断延迟性能、集成的系统部件、灵活的配置、简单的高级编程和强大的软件系统,Cortex-M3处理器将成为从复杂的芯片系统到低端微控制器等各种

18、系统的理想解决方案。表2-3为Cortex-M3处理器与ARM7作比拟。表2-3 Cortex-M3与ARM7相比拟2.4 STM32定时器简介2.4.1 通用定时器22 STM32F103xx增强型系列产品中内置了多达3个同步的标准定时器。每个定时器都有一个16位的自动加载递加/递减计数器、一个16位的预分频器和4个独立的通道,每个通道都可用于输入捕获、输出比拟、PWM和单脉冲模式输出,在最大的封装配置中可提供最多12个输入捕获、输出比拟或PWM通道。它们还能通过定时器功能与高级控制定时器共同工作,提供同步或事件功能。 在调试模式下,计数器可以被冻结。任一个标准定时器都能用于产生PWM输出。

19、每个定时器都有独立的DMA请求机制。2.4.2 高级控制定时器22 高级控制定时器(TIM1)由一个 16位的自动装载计数器组成,它由一个可编程预分频器驱动。它适合多种用途,包含测输入信号的脉冲宽(输入捕获),或者产生输出波形(输出比拟,PWM,嵌入死区时间的互补 PWM等)。 使用定时器预分频器和 RCC时钟控制预分频器,可以实现脉冲宽和波形周期从几个微秒至几个毫秒的调节。高级控制(TIM1)和通用(TIMx)定时器是完全独的,它们共享任何资源,它们可以同步操作。 高级控制定时器(TIM1)可以被看成是一个分配到6个通道的三相PWM发生器,它还可以被当成一个完整的通用定时器。四个独立的通道可

20、以用于: 输入捕获 ;输出比拟 ;产生PWM(边缘或中心对齐模式) ;单脉冲输出 ;反相PWM输出,具有程序可控的死区插入功能; 配置为16位标准定时器时,它与TIMx定时器具有一样的功能。配置为16位PWM发生器时,它具有全调制能力(0100%)。 在调试模式下,计数器可以被冻结。很多功能都与标准的TIM定时器一样,内部构造也一样,因此高级控制定时器可以通过定时器功能与TIM定时器协同操作,提供同步或事件功能。TIM1 定时器的功能包括: 16位上,下,上/下自动装载计数器 ;16位可编程预分频器,计数器时钟频的分频系数为 165535之间的任意数值;4个独通道:输入捕获;输出比拟;PWM生

21、成(边缘或中间对齐模式);单脉冲模式输出;死区时间可编程的互补输出。使用外部信号控制定时器和定时器互连的同步电;在指定数目的计数器周期之后更新定时器存放器;刹车输入信号可以将定时器输出信号置于复位状态或者一个状态;如下事件发生时产生中断/DMA: 新:计数器向上溢出/向下溢出,计数器初始化(通过软件或者内部/外部触发);触发事件(计数器启动,停顿,初始化或者由内部/外部触发计数);输入捕获;输出比拟;刹车信号输入。时基单元 可编程高级控制定时器的主要局部是一个 16位计数器和与其相关的自动装载存放器。这个计数器可以向上计数、向下计数或者向上向下双向计数。此计数器时钟由预分频器分频得到。 计数器

22、、自动装载存放器和预分频器存放器可以由软件读写,即使计数器还在运读写仍然有效。时基单元包含: 计数器存放器(TIM1_T);预分频器存放器 (TIM1_PSC);自动装载存放器 (TIM1_ARR);周期计数存放器 (TIM1_RCR);自动装载存放器是预先装载的。写或读自动重装载存放器将访问预装载存放器。根据在 TIM1_CR1存放器中的自动装载预装载使能位(ARPE)的设置,预装载存放器的内容被永久地或在每次的更新事件 UEV时传送到影子存放器。当计数器到达溢出条件(向下计数时的下溢条件)并当 TIM1_CR1存放器中的 UDIS位等于 0时,产生新事件。更新事件也可以由软件产生。随后会详

23、细描述每一种配置下更新事件的产生。计数器由预分频器的时钟输出 CK_T驱动,仅当设置计数器 TIM1_CR1存放器中的计数器使能位(CEN)时,CK_T才有效。(有关多的计数器使能的细节,请参见控制器的从模式描述)。 注:真正的计数器使能信号 T_EN是在 CEN后的一个时钟周期后被设置。 预分频器描述 。预分频器可以将计数器的时钟频按 1到 65536之间的任意值分频。它是基于一个(在 TIM1_PSC存放器中的)16位存放器控制的 16位计数器。因为这个控制存放器带有缓冲器,它能够在工作时被改变。新的预分频器的参数在下一次更新事件到来时被采用。图2-4和图2-5给出一些在预分频器工作时,改

24、其参数的情况下计数器操作的例子。图2-4 当预分频器的参数从 1变到 2时,计数器的时序图 图2-5 当预分频器的参数从 1变到 4时,计数器的时序图2.4.3小结经过比拟和针对设计需要,使用定时器预分频器和 RCC时钟控制预分频器,可以实现脉冲宽和波形周期从几个微秒至几个毫秒的调节。高级控制(TIM1)和通用(TIMx)定时器是完全独的,共享任何资源,可以同步操作。 高级控制定时器(TIM1)还可以被看成是一个分配到6个通道的三相PWM发生器,它还可以被当成一个完整的通用定时器。因此该设计选择高级控制定时器(TIM1)。第3章 PWM概述3.1 原理PWM是Pulse Width Modul

25、ation的缩写,中文意思就是脉冲宽度调制,简称脉宽调制。它是利用微处理器的数字输出来对模拟电路进展控制的一种非常有效的技术,其控制简单、灵活和动态响应好等优点而成为电力电子技术最广泛应用的控制方式,其应用领域包括测量,通信,功率控制与变换,电动机控制、伺服控制、调光、开关电源,甚至某些音频放大器,因此研究基于PWM技术的正负脉宽数控调制信号发生器具有十分重要的现实意义。PWM是一种对模拟信号电平进展数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进展编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OF

26、F)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进展编码。多数负载(无论是电感性负载还是电容性负载)需要的调制频率高10Hz,通常调制频率为1kHz到200kHz之间。占空比是接通时间与周期之比;调制频率为周期的倒数。目前,运动控制系统或电动机控制系统中实现PWM的方法主要有传统的数字电路方式、专用的PWM集成电路、单片机实现方式和可编程逻辑器件实现方式。用传统的数字电路实现PWM,电路设计较复杂,体积大,抗干扰能力差,系统的控制周期较长。专用的P

27、WM集成电路或带有PWM的单片机价格较高。对于单片机中无PWM输出功能的情况,实现PWM将消耗大量的时间,大大降低了CPU的效率,而且得到的PWM信号精度不太高15。3.1.1 PWM 模式脉冲宽调制模式可以产生一个由 TIM1_ARR存放器确定频、由 TIM1_CCRx存放器确定占空比的信号。在 TIM1_CCMRx存放器中的 OCxM位写入“110(PWM模式 1)或“111(PWM模式 2),能够独地设置每个通道工作在 PWM模式,每个 OCx输出一路PWM。必须通过设置 TIM1_CCMRx存放器 OCxPE位使能相应的预装载存放器,最后还要设置 TIM1_CR1存放器的 ARPE位使

28、能自动重装载的预装载存放器(在向上计数或中心对称模式中)。 因为仅当发生一个更新事件的时候,预装载存放器才能被传送到影子存放器,因此在计数器开场计数之前,必须通过设置 TIM1_EGR存放器中的 UG位来初始化所有的存放器。 OCx的极性可以通过软件在 TIM1_CCER存放器中的 CCxP位设置,它可以设置为高电平有效活和低电平有效。OCx输出通过 CCxE、CCxNE、MOE、OSSI和OSSR位(在 TIM1_CCER和 TIM1_BDTR存放器中)的组合控制。在 PWM模式(模式 1或模式 2)下,TIM1_T和 TIM1_CCRx始终在进比拟,(依据计数器的计数方向)以确定是否符合

29、TIM1_CCRxTIM1_T或者TIM1_TTIM1_CCRx。根据 TIM1_CR1存放器中 CMS位的状态,定时器能够产生边沿对齐的或中央对齐的 PWM信号。PWM 边沿对齐模式 向上计数配置 当TIM1_CR1存放器中的DIR位为低的时候执向上计数。当TIM1_TTIM1_CCRx时参考信号 OCxREF为低,否那么为高。如果 TIM1_CCRx中的比拟值大于 TIM1_ARR中的自动重装载值,那么OCxREF保持为“1。该模式下能产生 0的 PWM波形。PWM 中央对齐模式 当TIM1_CR1存放器中的CMS位为 00时为中央对齐模式(所有其他的配置对OCxREF/OCx信号都有一样

30、的作用)。根据同的CMS位的设置,比拟标志可能在计数器向上计数时被置 1、在计数器向下计数时被置 1、或在计数器向上和向下计数时被置 1。TIM1_CR1存放器中的计数方向位(DIR)由硬件新,要用软件修改它。图3-2给出一些中央对齐的PWM波形的子 TIM1_ARR=8 ; PWM模式 1; TIM1_CR1 存放器中的 CMS=01,在中央对齐模式 1 时,当计数器向下计数时标志被设置。21图3-2 中央对齐的 PWM波形(APR=8)3.1.2互补输出与死区插入高级控制定时器 TIM1能够输出两互补信号并且能够管输出的瞬时关断和接通。这段时间通常被称为死区,应该根据连接到输出的器件和它们

31、的特性(电平转换的延时、电源开关的延时等)来调整死区时间。 配置 TIM1_CCER存放器中的 CCxP和 CCxNP位,可以为每一个输出独地选择极性(主输出 OCx或互补输出 OCxN)。互补信号OCx和OCxN通过下控制位的组合进控制:TIM1_CCER存放器的CCxE和CCxNE位,TIM1_BDTR和TIM1_CR2存放器中的MOE、OISx、OISxN、OSSI和OSSR位,带刹车功能的互补输出通道OCx和OCxN的控制位。特别的是,在转换到IDLE状态时(MOS下到 0)死区被激活。同时设置 CCxE和 CCxNE位将插入死区,如果存在刹车电,那么还要设置 MOE位。每一个通道都有

32、一个 10位的死区发生器。参考信号 OCxREF可以产生 2输出 OCx和 OCxN。如果 OCx和 OCxN为高有效: OCx 输出信号与参考信号一样,只是它的上升沿相对于参考信号的上升沿有一个延迟。 OCxN 输出信号与参考信号相反,只是它的上升沿相对于参考信号的下沿有一个延迟。如果延迟大于当前有效的输出宽(OCx或OCxN),那么会产生相应的脉冲。图3-3,3-4显示死区发生器的输出信号和当前参考信号 OCxREF之间的关系(假设 CCxP=0、CCxNP=0、MOE=1、CCxE=1并且 CCxNE=1)。图3-3 带死区插入的互补输出图3-4 死区波形延迟大于负脉冲3.2 PWM输出

33、的实现12STM32的高级定时器时钟TIM1CLK为固定72MHz, TIM1 预分频为 0x0系统高速时钟不分频, 所以TIM1计数器时钟频率为72MHz。I/O口时钟为固定值50MHz,PA8、PA9、PA10、PA11设为推拉模式。TIM1 在下面定义的频率下工作: TIM1 频率= TIM1CLK/(TIM1_Period + 1) = 17.57 KHz。TIM1 CC1 存放器的值为0x7FFF, 所以 TIM1_CH1 和 TIM1_CH1N 产生一个频率为 17.57KHz的信号,这个信号的占空比为: TIM1_CH1 占空比= TIM1_CCR1 /(TIM1_Period

34、+ 1) = 50%。TIM1 CC2 存放器的值为 0x3FFF, 所以 TIM1_CH2 和 TIM1_CH2N 产生一个 17.57KHz 的信号,它的占空比为: TIM1_CH2 占空比 = TIM1_CCR2 / (TIM1_Period + 1)= 25%。TIM1 CC3 存放器的值为 0x1FFF, 所以 TIM1_CH3 和TIM1_CH3N 产生一个 17.57KHz 的信号,它的占空比为: TIM1_CH3 占空比= TIM1_CCR3 / (TIM1_Period + 1) = 12.5%。TIM1 波形可以在示波器上显示出来。 输出信号观察以下引脚分别依次接到示波器上

35、两个一组,示波器接线正接触线以下引脚,负接触线接地GND。TIM1_CH1 pin (PA8); TIM1_CH1N pin (PB13); TIM1_CH2 pin (PA9); TIM1_CH2N pin (PB14) ; TIM1_CH3 pin (PA10); TIM1_CH3N pin (PB15); TIM1_CH4 pin (PA11)。第4章软件设计4.1开发环境4.1.1STM32的开发软件STM32自问世至今,采用过如下软件,皆有利弊。IARIAR是STM32开发使用最多的软件平台。IAR官方提供IARforARM两种类型的版本供免费评估: 32K学习版,只能支持编译32K

36、目标代码,等效无时间限制;30天评估版,无编译代码限制。MDK自从keil被ARM收购以后,在keil中集成了ARM自己的编译器,改名MDK。RIDE该软件支持GCC编译器开发STM32产品。该套开发板使用keilmdk370开发软件,该软件使用简单,keil是众多单片机应用开发的优秀软件之一,它集编辑编译仿真于一体,支持汇编,PLM语言和C语言的程序设计,界面清晰,易学易懂。这里选用的是keilmdk370,4.1.2节着重介绍。4.1.2MDK37011RealView MDKMiertocontroller Development Kit是ARM公司最先推出的基于ARM微控制器的专业嵌入

37、式开发工具。它采用了ARM的最新技术编工具RVCT,集成了享誉全球的Vision IDE,因此特别易于使用,同时具备非常高的性能。它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。MDK包括符合工业标准的Real View编译工具、测试器以及实时内核等组件,支持所有基于ARM的设备,能帮助工程师按照方案完成工程。MDK提供启动代码生成向导提高开发效率;MDK提供强大的设备模拟器缩短开发周期:目标设备的所有组件都可仿真,代码可在整个设备上运行。完全的目标硬件仿真,完整的目标,高效指令集仿真,中断仿真,片内外围设备有ADC,DAC,EBI,Timers,UART,C

38、AN,I2C,包含外部信号和I/O。充足的仿真信息,包含在设备数据库里。MDK提供高效的性能开发工具;MDK支持最新的Cortex-M3处理器: Cortex-M3处理器是ARM公司推出的最新的针对微控制应用的内核,提供业界领先的高性能和低本钱解决方案,将成为MCU应用的热点和主流。但是目前能支持Cortex-M3构架的开发工具很少,包括SDT,ADS1.2等多数开发工具都不支持。MDK是目前性价比最高的支持Cortex-M3处理器的开发工具。MDK集成了Flash编程模块;MDK提供业界最好的 Vision IDE易学易懂。4.2软件实现4.2.1设计标准该设计对TIM1定时器进展控制,使之

39、各通道输出插入死区的互补PWM输出,各通道输出频率均为17.57KHz。 I/O口时钟为固定值50MHz,PA8、PA9、PA10、PA11设为推拉模式。其中,通道1输出的占空比为50%,通道2输出的占空比为25%,通道3输出的占空比为12.5%。各通道互补输出为反相输出。TIM1定时器的通道1到4的输出分别对应PA.08、PA.09、PA.10引脚,而通道1到3的互补输出分别对应PB.13、PB.14和PB.15引脚,这些处理器引脚在开发板上已经以插针形式引出。由于TIM1计数器的时钟频率为72MHz,各通道输出频率fTIM1为17.57KHz,根据:fTIM1=TIM1CLK/(TIM1_

40、Period + 1),可得到TIM1预分频器的TIM1_Period为0xFFFF。根据通道输出占空比TIM1_CCRx/(TIM1_Period + 1),可以得到各通道比拟/捕获存放器的计数值。其中:TIM1_CCR1存放器的值0x7FFF、TIM1_CCR2存放器的值为0x3FFF、TIM1_CCR3存放器的值为0x1FFF。程序局部原代码:/* Channel 1, 2,3 and 4 Configuration in PWM mode */ TIM1_OCInitStructure.TIM1_OCMode = TIM1_OCMode_PWM2; TIM1_OCInitStructu

41、re.TIM1_OutputState = TIM1_OutputState_Enable; TIM1_OCInitStructure.TIM1_OutputNState = TIM1_OutputNState_Enable; TIM1_OCInitStructure.TIM1_Pulse = CCR1_Val; TIM1_OCInitStructure.TIM1_OCPolarity = TIM1_OCPolarity_Low; TIM1_OCInitStructure.TIM1_OPolarity = TIM1_OPolarity_Low; TIM1_OCInitStructure.TIM

42、1_OCIdleState = TIM1_OCIdleState_Set; TIM1_OCInitStructure.TIM1_OIdleState = TIM1_OCIdleState_Reset; TIM1_OC1Init(&TIM1_OCInitStructure); TIM1_OCInitStructure.TIM1_Pulse = CCR2_Val; TIM1_OC2Init(&TIM1_OCInitStructure); TIM1_OCInitStructure.TIM1_Pulse = CCR3_Val; TIM1_OC3Init(&TIM1_OCInitStructure);运

43、行过程:(1)使用Keil uVision3 编译工程;(2)点击MDK 的Debug菜单,点击Start/Stop Debug Session;(3)通过示波器观察PA.08、PA.09、PA.10、PB.13、PB.14、PB.15的输出波形,其中PA.08和PB.13为一组,PB.09和PB.14为一组,PB.10和PB.15为一组。4.2.2程序流程图整个设计程序流程如图4-1所示:初始化TIM1设置配置各通道配置为PWM模式否是TIM1计数使能输出使能否 是读通道数据输出第5章测试及结果5.1JTAG仿真器介绍11J-Link是支持仿真ARM内核芯片的JTAG仿真器。配合IAR EW

44、ARM,ADS,KEIL,WINARM,RealView等集成开发环境支持所有ARM7/ARM9内核芯片的仿真,通过RDI接口和各集成开发环境无缝连接,操作方便、连接方便、简单易学,是学习开发ARM最好最实用的开发工具。DQ电子推出的J-LinkV7仿真器采用原版固件,参照原版原理图,经过DQ团队的长时间精工制作,板型合理,元件布局美观大方,走线严谨精致,并且每一个产品都经过功能和老化测试,功能完全与原版一致,支持在线升级。J-Link ARM主要特点:IAR EWARM集成开发环境无缝连接的JTAG仿真器。 支持所有ARM7/ARM9内核的芯片,以及cortexM3,包括Thumb模式。支持

45、ADS,IAR,KEIL,WINARM,REALVIEW等几乎所有的开发环境。下载速度高达ARM7:600kB/s,ARM9:550kB/s,通过 DCC 最高可达 800 kB/s*最高JTAG速度 12MHz。目标板电压X围1.2V3.3V。 自动速度识别功能。监测所有JTAG信号和目标板电压。 完全即插即用。 使用USB电源可接通J12跳线给目标板供电,出厂时未接通。 带USB连接线和20芯JTAG连接排线。 支持多JTAG器件串行连接。 标准20芯JTAG仿真插头。 带J-Link TCP/IP server,允许通过TCP/IP网络使用J-Link 支持的内核: ARM7TDMIRev 1;ARM7TDMIRev 3;ARM7TDMI-SRev 4;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 研究报告 > 设计方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁