毕设 无极调速电机控制器设计_第1页
毕设 无极调速电机控制器设计_第2页
毕设 无极调速电机控制器设计_第3页
毕设 无极调速电机控制器设计_第4页
毕设 无极调速电机控制器设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编号: 嵌入式系统综合实训说明书题 目: 无极调速电机控制器设计 院(系): 信息与通信学院 专 业: 电子信息工程 学生姓名: 学 号: 指导教师: 2014 年 12 月 31 日桂林电子科技大学实训说明书专用纸摘 要脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。直流电动机是将直流电能转换为机械能的电动机,因其良好的调速性能而在电力拖动中得到广泛应用。本课题设计 PWM 信号发生器控制直流电机,采用新唐 Nuc140 开

2、发板的 PWM 模块、LCD 液晶显示模块和键盘输入模块,利用按键输入控制 PWM 输出到直流电机,控制直流电机的无级调速,并在液晶 LCD 上显示。两个按键分别调节直流电机的速度增加和速度减小。关键字:PWM;nuc140 开发板;直流电机;按键;LCD;无级调速桂林电子科技大学实训说明书专用纸AbstractThe Pulse Width Modulation (PWM), is English Width Modulation abbreviation of points, abbreviation Pulse Width Modulation is the use of the mic

3、roprocessor digital output to analog circuits to control an effective technology, widely used in from measurement, communication to power control and transform in many areas. DC motor is a DC electric energy into mechanical energy of the motor, due to its good speed performance and has been widely u

4、sed in electric drive.The design of PWM signal generator to control the DC motor, using the Nuvoton Nuc140 development board chip PWM module, LCD display module and a keyboard input module, using the key input control PWM output to a DC motor, stepless speed control of DC motor, and displayed in the

5、 LCD. The two keys are adjusting the speed of DC motor speed increase and decrease. Keywords:PWM; Nuc140 development board; Dc motor; Button; LCD;stepless speed regulation桂林电子科技大学实训说明书专用纸目 录引言.11 设计任务.22 设计平台.22.1 开发板 NU-LB-NUC140 介绍.32.2 NU-LB-NUC140 板的框图.32.3 NU-LB-NUC140 板的主要组成部分.33 硬件设计.43.1 总体设

6、计方案与系统构成.43.2 NUC140VE3CN 芯片.53.2.1NUC140VE3CN 管脚.53.2.2NUC140VE3CN 芯片主要性能.53.2.3NUC140VE3CN 的应用.63.3 PWM 模块 .73.3.1PWM 特性.73.3.2PWM 框图.83.3.3PWM 定时器操作.93.3.4PWM 双缓存,自动重载以及单触发模式.103.3.5 可调占空比.103.3.6PWM 定时器开启过程.113.3.7PWM 定时器关闭过程.113.4 直流电机和驱动模块.123.4.1 直流电机驱动模块驱动的实现.123.4.2 直流电机类型.123.4.3 直流电机结构.12

7、3.4.4 直流电机工作原理.123.4.5 直流电机主要技术参数.133.5 按键模块和液晶显示模块.134 软件设计.134.1 软件设计流程及分析.144.2 初始化程序.154.3 PWM 频率的设定.154.4 PWM 占空比的计算.16桂林电子科技大学实训说明书专用纸4.5 程序的实现.16结论.18谢辞.19参考文献.20附录 1.21附录 2.26桂林电子科技大学实训说明书专用纸0引言脉冲宽度调制是一种模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处

8、理器的数字输出来对模拟电路进行控制的一种非常有效的技术。 随着电力半导体交流技术的日益发展成熟,直流电机在许多领域已被整流装置代替,但直流电动机具有良好的启动、调速和正反转特性,能满足生产过程中的各种特殊要求,因而在需要宽广调速的场合及特殊要求的自动化控制系统中占有一定得应用地位。桂林电子科技大学实训说明书专用纸11 设计任务(1)输出PWM信号。(2)PWM信号频率通过按键(周期)可调。(3)PWM信号输出控制电机无级调速。(4)PWM 信号频率通过 LCD 显示。2 设计平台2.1 开发板 NU-LB-NUC140 介绍 NU-LB-NUC140 是基于 NUC100 系列单片机为新唐科技

9、的的 Cortex-M0 电路板,并提供了完整的开发环境,NUC140 微控制器具有 4K/8K/16K 字节的内部 SRAM 和32K/64K/128K 字节的嵌入式闪存,内置的 1.8V LDO,集成定时器,看门狗定时器,RTC,PDMA,UART,SPI/ SSP,I2C,PWM 定时器,GPIO,LIN,CAN,USB2.0 FS 设备,12 位 ADC,模拟比较器,低电压探测器和欠压检测功能。它支持掉电检测。 NU-LB-NUC140 学习板类似于其他开发板。用户可以用它来开发和验证应用程序来模拟真实的行为。本用户手册提供有关硬件的功能和有关使用该学习板信息。下图显示了 NU-LB-

10、NUC140 开发板。图 2.1 NU-LB-NUC140 开发板2.2 NU-LB-NUC140 板的框图 图 3.2 显示了 NU-LB-NUC140 板的框图。桂林电子科技大学实训说明书专用纸2 图 2.2 NU-LB-NUC140 板的框图2.3 NU-LB-NUC140 板的主要组成部分 主要成分: (1)MCU:NuMicroTM NUC140 MCU,它可以运行高达 50MHz 的运行速度。 (2)GPIO 扩展插槽:支持所有的 GPI/ O 引脚接口,GPIO 扩展插槽。 (3)AUDIO:WAU8822 音频编解码器。 (4)I2C EEPROM:24LC64 I2C E2P

11、ROM。 (5)SPI FLASH:25Q16 SPI 串行 FLASH 用于数据存储。 (6)UART:UART 端口 0 连接到 DSUB-9 连接器。 (7)SD 卡插槽:通过 SPI 端口 1 支持一个 SD 卡插槽。(8)LCD 连接器:支持 LCD 模块。 (9)直流电源插孔:5V/1A 电源适配器输入。 (10)LDO:5V 至支持 NUC140 和车载设备 3.3V/1A LDO。 (11)USB:USB 连接功能。 (12)蜂鸣器。 (13)按键矩阵。 (14)7 段 LED。(15)CAN 接口。(16)可变电阻。桂林电子科技大学实训说明书专用纸3(17)PWM/Captu

12、re 。 (18)4K/8K/16K 字节内建 SRAM。3 硬件设计3.1 总体设计方案与系统构成本次实训课题 基于嵌入式 ARM 的无极调速电机控制器设计。软件程序从下载口接入 Nu-LB-NUC140 开发板,通过 PWM 专用的标准定时器还有匹配器以及按键控制电路来实现 PWM 的输出控制直流电机的转动。电路系统构成框图如图2.1所示。图 3.1 电路系统构成3.2 NUC140VE3CN 芯片本系统主要由嵌入式ARM Cortex M0芯片NUC140VE3CN构成,按键输入控制输出电机的无极调速,液晶LCD显示状态。芯片NUC140VE3CN是该系统的主要部分。3.2.1NUC14

13、0VE3CN管脚 NUC140VE3CN 芯片管脚图如图 3.3.1 所示主控模块nuc140ve3cn芯片LCD 显示驱动电机按键输入程序下载桂林电子科技大学实训说明书专用纸4图 3.3.1 NUC140VE3CN 芯片管脚图3.2.2NUC140VE3CN 芯片主要性能(1)ARM Cortex M0 内核最高运行50 MHz的为微型处理器。 (2)4K/8K/16K 字节内建SRAM。 (3)最多支持2组I2C 设备,一组12Mbps的USB 2.0 FS 设备,持4组SPI 控制器。(4)EmbeddedICE RT和嵌入式跟踪接口可实时调试和高速跟踪执行代码。 (5)12位ADC,转

14、换速率达700K SPS, 最多8通道单端模式输入或4通道差分模式输入。(6)通过频率补偿寄存器(FCR) 支持软件频率补偿功。 (7)四个16位PWM产生器,可输出8路PWM或4组互补配对PWM,8路16位捕捉定时器桂林电子科技大学实训说明书专用纸5(共享PWM定时器)提供8路输入的上升/下降沿的捕捉功能,。 (8)支持4组32位定时器, 每个定时器有一个24位向上计数定时器和一个8位预分频计数器。 (9)支持EBI可访问的空间: 8位模式为64KB 或16位模式为128KB。 (10)支持四级检测电压:4.5 V/3.8 V/2.7 V/2.2 V 。 (11)看门狗定时溢出的中断/复位选

15、择。 (12)通过片内PLL可实现最大为60MHz 的 CPU操作频率,PLL的稳定时间为100us。 (13)支持一组PLL, 高至50 MHz, 用于高性能的系统运行,外部424 MHz 晶振输入用于USB 和精准的定时操作,外部32.768 kHz 晶振输入用于RTC 及低功耗模式操作。 (14)2组模拟比较器模块。(15)可通过个别使能/禁止外部功能和降低外部时钟来优化功耗。 (16)通过外部中断将处理器从掉电模式中唤醒。 (17)单个电源供电,含有上电复位(POR)和掉电检测(BOD)电路。3.2.3NUC140VE3CN 的应用(1)工业控制(2)医疗系统(3)访问控制(4)军事设

16、备(5)无线通讯领域(6)ARM 开发(7)一般性应用(8)消费类电子产品3.3 PWM 模块NUC140 有 2 组PWM,支持4 组PWM 发生器,这些发生器可以配置成8 个独立的桂林电子科技大学实训说明书专用纸6PWM 输出PWM0PWM7,或4 组互补的PWM 对,(PWM0, PWM1), (PWM2, PWM3), (PWM4, PWM5) 和(PWM6, PWM7) 带 4 个可编程的死区发生器。每组 PWM 发生器带有一个8-位预分频,一个提供5级时钟源(1, 1/2, 1/4, 1/8, 1/16) 的时钟除频器,两个包含2 个时钟选择的PWM 定时器,两个用于 PWM 周期

17、控制的16 位 PWM 向下计数计数器,两个16 位比较器用于PWM 占空比控制及死区发生器。4组PWM 发生器提供8个独立的由硬件置位的PWM 中断标志,当相应的PWM 向下计数周期达到0 时触发中断。每个PWM 中断源通过相应的使能位允许CPU 来请求PWM 中断。PWM 发生器可以定义为产生单周期PWM 周期信号的单触发模式或连续输出PWM 波形的连续模式。PWM-定时器其中之一特性是数字输入捕捉功能。若捕捉功能使能,则PWM 的输出管脚会被切换成捕捉输入模式。捕捉器0 和PWM0 共用PWM0 中的定时器;捕捉器1 和PWM1 共用PWM1 定时器,以此类推。因此用户在使用捕捉功能之前

18、,必须预先配置PMW定时器。3.3.1PWM 特性1. PWM 功能特性:(1)PWM 组有两个PWM发生器。每个PWM支持8-位预分频器,一个时钟除频器,两个PWM 定时器(向下计数),一个死区发生器和两个PWM 输出。(2)最高 16-位解析度。(3)PWM 中断请求与PWM 周期同步(4)One-shot 或Auto-reload 模式(5)最高 2 个 PWM 组(PWMA/PWMB) 可支持 8 路PWM 通道或4 对PWM 通道2. 捕捉功能特征:(1)与 PWM 发生器共用定时器模块。(2)支持 8 个捕捉输入通道,共享8 个PWM 输出通道。(3)每个通道支持1 个上升沿锁存寄

19、存器(CRLR),一个下降沿锁存寄存器(CFLR) 和捕捉中断标志(CAPIFx)。3.3.2PWM 框图 本系统只使用了PWM发生器0,下图3.4.2.1和图3.4.2.2分别为PWM发生器0时桂林电子科技大学实训说明书专用纸7钟源控制框图和PWM发生器0结构框图。图3.3.2.1 PWM发生器0时钟源控制框图图3.3.2.2 PWM发生器0结构框图3.3.3PWM 定时器操作 PWM 周期和占空比控制由向下计数的 PWM 寄存器 (CNR) 和 PWM 比较寄存器(CMR) 桂林电子科技大学实训说明书专用纸8配置。 PWM-定时器工作时序如图 5-42。脉宽调制的公式如下,PWM-定时器的

20、图例如图 5-41。注: 在 PWM 功能使能前,MCU 相应的 GPIO 管脚必须配置成 PWM 功能(使能 POE 并禁用 CAPENR)。 PWM 频率= PWMxy_CLK/(prescale+1)*(clock divider)*(CNR+1); xy 代表 01, 23, 45 或 67,取决于所选择的 PWM 通道。 占空比 = (CMR+1)/(CNR+1) CMR = CNR: PWM 输出为高 CMR CNR: PWM 低脉宽= (CNR-CMR) unit1; PWM 高脉宽= (CMR+1) unit CMR = 0: PWM 低脉宽= (CNR) unit; PWM

21、高脉宽= 1 unit 下图 3.3.3.1 为 PWM 定时器内部比较器输出。图 3.3.3.1 PWM 定时器内部比较器输出下图 3.3.3.2 为 PWM 定时器操作时序。桂林电子科技大学实训说明书专用纸9图 3.3.3.2 PWM 定时器操作时序3.3.4PWM 双缓存,自动重载以及单触发模式 PWM 定时器具有双缓存功能。寄存器预先设定的值,在一个周期完成后,可以自动重载。PWM 计数器的值写入 CNRx,并可从 PDRx 读出当前 PWM 计数器的值。PWM 控制寄存器(PCR) 中 CH0MOD 位定义 PWM0 是自动重载模式或是单触发模式。如果 CH0MOD 设为 1,当 P

22、WM 计数器计到 0,自动重载 CNR0 值到 PWM 计数器。如果CNR0 设为 0,PWM 计数器计数到 0 后,将暂停运行。如果此时 CH0MOD 也设为 0,计数器会立即停止。PWM1PWM7 运行状态与 PWM0 相同。下图 3.3.4 为 PWM 双缓存图解。图 3.3.4 PWM 双缓存图解3.3.5 可调占空比双缓存允许 CMRx 字在当前周期的任意时刻改写。导入值会在下一个周期生效。下图 3.3.5 为 PWM 控制输出占空比图。桂林电子科技大学实训说明书专用纸10图 3.3.5 PWM 控制输出占空比图3.3.6PWM 定时器开启过程 使用下列步骤用于启动 PWM。 1.

23、设置时钟选择(CSR)。 2. 设置预分频器(PPR)。 3. 设置反转打开/关闭,死区发生器打开/关闭,自动重载/单触发模式以及停止PWM-定时器(PCR)。 4. 设置比较器寄存器(CMR) 来设定 PWM 占空比。 5. 设置 PWM 向下计数计数器寄存器(CNR) 来设定 PWM 周期。 6. 设置中断使能寄存器(PIER)。 7. 设置相应 GPIO 管脚为 PWM 功能(使能 POE 并禁用 CAPENR)用于 PWM 通道。8. 使能 PWM 定时器开始运行(设置 PCR 中的 CHxEN = 1)。3.3.7PWM 定时器关闭过程 本程序所使用的关闭方法为设置 16-位向下计数

24、计数器(CNR) 为 0,并查看 PDR (16-位向下计数计数器的当前值)。当 PDR 达到 0,禁用 PWM-定时器(PCR 的 CHxEN 位)。3.4 直流电机和驱动模块3.4.1 直流电机驱动模块驱动的实现 本系统的直流电机驱动模块为 L298 电机驱动模块。板上有个三端稳压器 L7805,当如果需要用电机的电源为控制部分供电的情况下可以把短路帽短路上,这样板上就可以输出一路 5V 电压为控制部分电,但这样的话隔离芯片就起不到隔离作用,所以短桂林电子科技大学实训说明书专用纸11路帽就起到隔离使能的作用。该模块具有信号指示,可驱动直流 5-30V 之间电压的电机,最大输出电流 2A (

25、瞬间峰值电流 3A),最大输出功率 25W;可输出 l 路 5V 电压为控制板供电;带光耦隔离,抗干扰能力强,具有续流保护等功能。3.4.2 直流电机类型 直流电机可按其结构、工作原理和用途等进行分类,其中根据直流电机的用途可分为以下几种: 直流发电机(将机械能转化为直流电能)、直流电动机(将直流电能转化为机械能)、直流测速发电机(将机械信号转换为电信号)、直流伺服电动机(将控制信号转换为机械信号) 。下面以直流电动机作为研究对象。3.4.3 直流电机结构 直流电机由定子和转子两部分组成。在定子上装有磁极(电磁式直流电机磁极由绕在定子上的磁绕提供,其转子由硅钢片叠压而成,转子外圆有槽,槽内嵌有

26、电枢绕细,绕细通过换向器和电刷引出,直流电机结构如图3.4.2 所示。图3.4.3 直流电机结构3.4.4 直流电机工作原理 直流电机电路模型如下图3.4.4所示,磁极N、S 间装着一个可以转动的铁磁圆柱体,圆柱体的表面上固定着一个线圈abed。当线圈中流过电流时, 线圈受到电磁力作用,从而产生旋转。根据左手定则可知,当流过线圈中电流改变方向时, 线圈的受方向也将改变,因此通过改变线圈电路的方向实现改变电机的方向。桂林电子科技大学实训说明书专用纸12图 3.4.4 直流电机电路模型3.4.5 直流电机主要技术参数直流电机的主要额定值有:额定功率Pn:在额定电流和电压下,电机的负载能力。额定电斥

27、Ue:长期运行的最高电压。额定电流le : 长期运行的最大电流。额定转速n : 单位时间内的电机转动快慢。以r/min 为单位。励磁电流E:施加到电极线圈上的电流。3.5 按键模块和液晶显示模块本设计系统使用了NU140开发板的33键盘的K1和K2两个按键作为电机控制输入,以及显示所需要的12864点阵LCD面板。4 软件设计4.1 软件设计流程及分析总体软件设计流程图如图 4.1 所示。开始初始化程序设置 PWM 寄存器产生 PWM 信号并输出扫描按键K1 按下K2 按下LCD 显示输出转速减小,松开停留转速增大,松开停留桂林电子科技大学实训说明书专用纸13 图 4.1 总体软件设计流程图

28、系统总体的设计开始初始化系统,设置PWM寄存器产生PWM信号并输出,检测按键,若K1按下,输出改变控制直流电机的转速持续减小,松开按键,电机转速停留在此刻速度不改变,LCD显示输出;当按下K2,输出改变控制直流电机的转速持续增大,松开按键,电机转速停留在此刻速度不改变,LCD显示输出。4.2 初始化程序初始化程序如下#include #INCLUDE PWM.H #INCLUDE LCD.H #INCLUDE SCANKEY.H INIT_LCD(); CLEAR_LCD();桂林电子科技大学实训说明书专用纸14 PRINT_LINE(0,PWM_DCMOTOR); OPENKEYPAD();

29、INIT_PWM(0, 0, 119, 4); /初始化 PWM0(GPA12)输出 1MHZ 的方波CLOCK = 12000000;PRESCALER = 119;CLOCKDIVIDER = 1;DUTYCYCLE = 50; TONE=0;4.3 PWM 频率的设定 uint32_t Frequency; uint32_t tone; uint32_t Clock;uint8_t PreScaler;uint8_t ClockDivider;uint8_t DutyCycle;uint16_t CNR, CMR; init_PWM(0, 0, 119, 4); Clock = 1200

30、0000;PreScaler = 119;ClockDivider = 1;DutyCycle = 50; tone=7000;Frequency = tone;初始化 PWM0 输出 1MHZ 的方波,设定初始 PWM 频率为 7000。4.4 PWM 占空比的计算 CNR = Clock / Frequency / (PreScaler + 1) / ClockDivider - 1; CMR = (CNR +1) * DutyCycle /100 - 1;桂林电子科技大学实训说明书专用纸15PWM_Out(0, CNR, CMR);计算占空比并调用库函数 PWM_Out()进行输出。4.

31、5 程序的实现 init_PWM(0, 0, 119, 4);Clock = 12000000;PreScaler = 119;ClockDivider = 1;DutyCycle = 50; tone=7000;while(1) number = ScanKey();if(number = 1)print_Line(2,Speed decreasing);tone=tone+100; if(tone18000)tone=18000;if(number = 2)print_Line(2,Speed increasing);tone=tone-100; if(tone0)tone=0;DrvSY

32、S_Delay(10000000);设定初始 PWM 输出频率为 7000,此时电机转速为中等速度,若 K1 键按下输出频率增加,占空比改变,输出电压持续减小,电机转速减小,松开,输出频率不变,电机转速不变;若 K2 键按下输出频率减小,占空比改变,输出电压持续增大,电机转速增加,松开,输出频率不变,电机转速不变,实现简单的无极电机转速的控制。桂林电子科技大学实训说明书专用纸16结论这次实训匆忙的结束了。由于学期末考试的原因使得这次实训时间有点仓促,且在这个过程中遇到了好多困难,但总的来说,我基本按要求完成了无极调速电机控制器设计的要求。尽管这次基本能完成了设计的要求,但我觉得我还有很多需要改

33、进的地方,以后很长一段时间,还需加强这方面的学习。在这实训中,把理论和实践相结合,我学到了许多新的知识。首先,完成这次实训之前选择性地学习了本次实训所使用的开发板的相关知识,同时深刻认识到自己很多知识的不足,比如C语言相关编程等知识的薄弱,查阅和复习了很多有关的知识。设计过程,首先考虑的是使用直流电机还是步进电机,因为自己是第一次使用嵌入式芯片,直流电机相对简单,因此选择了直流电机。在编写程序的时候,遇到的问题最多,由于我是第一次嵌入式芯片,刚开始只是先学习开发板的相关例程,然后才一点点地从例程出发,不断地修改编写,遇到困难和、老师讨论,不断地克服困难,并且恶补了自己的C语编程知识。 经过这次

34、设计,我觉得自己真的学到了不少东西。同时学会了怎样查阅资料和利用工具书。在这次设计过程中经常遇到一些不曾学过的东西,但能有针对性地查找资料,然后加以吸收利用,提高了自己的应用能力,而且还增长了自己的见识,补充了专业知识,增强了自己的动手能力,而且还磨练了自己的耐性。收获颇多。桂林电子科技大学实训说明书专用纸17谢 辞通过本次设计不仅是对我们的专业知识的检查与总结,而且是对今后学习研究的一种的激励。过程中得到刘争红老师的悉心指导,多次询问研究进程,并为我提供了大量宝贵的建议和相关的文献资料,帮助我开拓研究思路,精心点拨、热忱鼓励。同时也要感谢热心帮助我的同学,帮助我克服了很多困难。紧张的日子也总

35、算告一段落,回味起来,感触颇多。在此过程中,我遇到了许多问题,通过老师和同学的帮助以及自己查阅资料等多种途径,解决了许多问题,也提高了自己独立思考问题、分析问题、解决问题的能力,同时也提高了实践能力。最后我要感谢这段时间来所有帮助过我的老师、同学和朋友,是你们让我的不断发现自己的不足并帮助我解决一个个设计上的问题,给我留下了美好的回忆。非常感谢!桂林电子科技大学实训说明书专用纸18参考文献1 崔更申 孙安青.ARM 嵌入式系统开发与实践M.北京:中国电力出版社,2008.2 赵俊. ARM Cortex-M0 从这里开始M. 北京:北京航空航天大学出版社,2012.3 杨宗德. 嵌入式 ARM

36、 系统原理与实例开发M. 北京:北京大学出版社,2007. 4 刘天时等 .ARM7 嵌入式开发基础实验M. 北京:北京航空航天大学出版社,2007. 5 杜春雷.ARM 体系结构与编程M.北京:清华大学出版社,2003.6 谭建成.电机控制专用集成电路M.北京:机械工业出版社,1997.7 张绮文. ARM 嵌入式常用模块与综合系统设计实例精讲.北京:电子工业出版社,2007.8 欧阳禹.ARM7 嵌入式系统实训教程.北京:清华大学出版社,2008.9 周立功.常用 ARM 指令及汇编M.广州:广州周立功单片机发展有限公司,2003.10 姜换新.ARM 嵌入式系统 C 语言编程J.Tsin

37、ghua Tongfang Optical Disc Co,2002(5):1553. 桂林电子科技大学实训说明书专用纸19附 录 11.主程序代码#include #include NUC1xx.h#include GPIO.h#include SYS.h#include PWM.h#include LCD.h#include Note_Freq.h#include Scankey.hint32_t main (void) uint8_t number; int tone; uint32_t Clock; uint32_t Frequency; uint8_t PreScaler; uint

38、8_t ClockDivider; uint8_t DutyCycle; uint16_t CNR, CMR;char TEXT116,TEXT216,TEXT316;UNLOCKREG();SYSCLK-PWRCON.XTL12M_EN = 1;SYSCLK-CLKSEL0.HCLK_S = 0;LOCKREG();init_LCD();clear_LCD(); print_Line(0,PWM_DCmotor);OpenKeyPad();桂林电子科技大学实训说明书专用纸20init_PWM(0, 0, 119, 4); Clock = 12000000;PreScaler = 119;Cl

39、ockDivider = 1;DutyCycle = 50; tone=0;while(1) number = ScanKey();if(number = 1)print_Line(2,Speed decreasing);tone=tone+100; if(tone18000)tone=18000;if(number = 2)print_Line(2,Speed increasing);tone=tone-100; if(tone0)tone=0;DrvSYS_Delay(10000000);/Delay 1 Second Frequency = tone; CNR = Clock / Frequency / (PreScaler + 1) / ClockDivider - 1; CMR = (CNR +1) * DutyCycle /100 - 1; PWM_Out(0, CNR, CMR); if (Frequency=0) PWM_Stop(0); sprintf(TEXT1,Freq= %5dHz,tone); print_Line(1, TEXT1);桂林电子科技大学实训说明书专用纸212.Scan

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论