PWM电机调速原理及51单片机PWM程序经典教学文稿
直流电机

直流电机的优点一、设计目的1PWM实现直流电机调整的基本方法,掌握直2法。
二、设计要求用已学的知识配合51单片机设计一个可以正转、反转或变速运动的直流电机控制电路,并用示波器观察其模拟变化状况。
三、设计思路及原理利用单片机对PWM信号的软件实现方法。
MCS一51系列典型产品8051具有两个定时计数器。
因为PWM信号软件实现的核心是单片机内部的定时器,所以通过控制定时计数器初值,从而可以实现从8051的任意输出口输出不同占空比的脉冲波形。
从而实现对直流电动机的转速控制。
AT89C51的P1.0—P1.2控制直流电机的快、慢、转向,低电平有效。
P3.0为PWM波输出,P3.1为转向控制输出,P3.2为蜂鸣器。
PWM控制DC电机转速,晶振为12M,利用定时器控制产生占空比可变的PWM波,按K1键,PWM值增加,则占空比增加,电机转快,按K2键,PWM值减少,则占空比减小,电机转慢,当PWM 值增加到最大值255或者最小值1时,四、实验程序#include<reg51.h>unsigned char speed=0;void main(){EA=1;EX0=1;IT0=1;while(1){P2=speed;}}void int0() interrupt 0{if(speed==225);else speed=speed+5;}五、实验结果此次试验通过仿真系统进行了仿真,按下相应的开关,可实现控制直流电机的加速、减速及转向。
六、实验仿真七、实验结论与心得通过软件的设计及运行,实验达到了预期的结果,实现了电机的正转、反转,加速和减速设计。
设计过程中遇到了很多的问题,但是我们没有半途而废,加深了对知识的理解,一点一点的分析。
总而言之,这次课程设计让我受益匪浅。
在摸索该如何设计电路使之实现所需功能的过程中,培养了我的设计思维,增加了实际操作能力,也让深深地体会到了自己学习知识的不足之处,对于知识的理解程度不够深,自己以为明白的实际上不明白。
pwm电机 调速原理

pwm电机调速原理
PWM电机调速原理
PWM(Pulse Width Modulation,脉宽调制)是一种通过改变信号的脉冲宽度来控制电机转速的调速方法。
在PWM调速原理中,控制器向电机输出一段固定频率的方波信号,通过改变方波信号的脉冲宽度来调节占空比,从而达到调速的目的。
具体而言,PWM电机调速原理可以分为以下几个步骤:
1. 设定目标转速:通过设定控制器中的目标转速值,确定电机需要达到的转速。
2. 信号发生器:控制器中的信号发生器会生成一段固定频率的方波信号,频率一般是几十kHz至几百kHz。
3. 脉宽调制:通过调节方波信号的脉冲宽度,即调节方波中高电平的时间长度,来改变方波信号的占空比。
一般来说,脉冲宽度越长,占空比越高,电机转速也就越快。
4. 电机驱动:根据脉宽调制生成的方波信号,控制器会控制电机驱动电路,将相应的电流传递给电机。
5. 反馈控制:为了保持电机转速的稳定,通常会加入反馈控制系统。
通过测量电机转速并与设定的目标转速进行比较,控制器可以对脉宽调制的占空比进行自动调整,以使电机转速保持在设定范围内。
通过不断调整脉宽调制的占空比,控制器可以实现对电机转速的精确调节。
PWM调速原理广泛应用于许多领域,如机械传动、风扇调速、电动车辆等。
51单片机定时器产生pwm波的程序

51单片机定时器产生pwm波的程序PWM(Pulse Width Modulation)是一种调节脉冲信号宽度的技术,通过改变信号的高电平时间和低电平时间的比例来控制输出电压的大小。
在很多应用中,PWM技术被广泛应用于电机控制、LED调光、音频放大器等领域。
在使用51单片机生成PWM波之前,我们首先需要了解51单片机的定时器的工作原理。
51单片机内部集成了多个定时器,其中最常用的是定时器0和定时器1。
这两个定时器都是16位的,可以通过设定定时器的计数值和工作模式来控制定时器的工作。
在使用定时器0和定时器1生成PWM波之前,我们还需要明确一些概念。
占空比是指高电平时间与一个周期的比值,通常用百分比表示。
频率是指一个周期的时间,单位是赫兹(Hz)。
接下来我们以定时器1为例,介绍如何在51单片机上生成PWM波。
我们需要设置定时器1的工作模式。
定时器1的工作模式分为两种:8位自动重装载模式和16位工作模式。
在8位自动重装载模式下,定时器1的计数器值从0到255,然后自动重装载为初始值,重复计数。
在16位工作模式下,定时器1的计数器值从0到65535,然后自动重装载为初始值,重复计数。
在生成PWM波时,我们通常使用16位工作模式。
我们需要设置定时器1的计数值。
定时器1的计数值决定了PWM波的频率。
计数值越大,频率越低;计数值越小,频率越高。
我们可以根据具体的应用需求来设定计数值。
然后,我们需要设置定时器1的占空比。
占空比决定了PWM波的高电平时间与低电平时间的比例。
占空比为50%时,高电平时间和低电平时间相等;占空比小于50%时,低电平时间多于高电平时间;占空比大于50%时,高电平时间多于低电平时间。
我们可以通过改变定时器1的占空比来控制PWM波的输出电压的大小。
我们需要启动定时器1开始工作。
定时器1开始工作后,会自动根据设定的计数值和占空比生成相应的PWM波。
使用51单片机定时器生成PWM波的步骤如下:1. 设置定时器1的工作模式为16位工作模式;2. 设定定时器1的计数值,确定PWM波的频率;3. 设定定时器1的占空比,确定PWM波的输出电压的大小;4. 启动定时器1开始工作。
基于51单片机PWM直流电机无级调速设计PPT课件 (1)

while(sub_speed != 0) {} } if(add_speed == 1) { high--; if(high == 5) high = 5; while(add_speed != 0) {} } }
仿真软件选择Proteus ,在Proteus中画出系统电路图,当程序在Keil C中调试通过 后,会生成以hex为扩展名的文件,这就是使系统能够在Proteus中成功进行仿真的文 件。将些文件加载到单片机仿真系统中,验证是否能完成对直流电机的速度调节。若 不成功,则重新回到软件调试步骤,进行软件调试。找出错误所在,更正后重新运行 系统。硬件仿真电路的设计完全按照论文设计方案进行。 当按下open键时,电机开始工作。若需要加快电机的转速,则按下add_speed键, 直到电机转速适中;相反,需要减慢电机的转速时,则按下sub_speed键,待转速满 意后,放开按键。当然,在某种特定的环境下,还需改变电机的转速,此时,你可以 按一下swap键,以达到改变电机转向的目的。当电机不工作时,则按下close键。 swap close
开始
始
按键查询
OPEN是否按下 时 是
Add_speed是否按下
Sub_是否按下
Swap
close是否 按下
是
是 改变转向 减 关 电机
通过按键实现对电机开关、调速、转向的控制的程序: 通过按键实现对电机开关、调速、转向的控制的程序:
void motor_control() { if(open == 1) EA = 1; if(close == 1) EA = 0; if(swap == 1) { change = ~change; while(swap != 0) {} } if(sub_speed == 1) { high++; if(high == 30) EA=0;
基于51单片机的PWM直流电机调速系统设计PPT课件

ADC0808
调速端
2021
10
总体设计
❖ 电路仿真图如下:
2021
11
系统仿真
由图可以看出滑动变阻器的值为66%即6600欧,占空比为63.6%,此时电 动机的转速为243r/min,电压值为2.92V。
2021
12
系统仿真
❖ 当滑动变阻器的值为80%即8000欧,占空比为81.8%,此时电动机的转 速为304r/min,电压值为3.65V。
5
直流电机的介绍
❖ 直流电机总体结构可以 分成两大部分:静止部 分(称为定子)和旋转 部分(称为转子)。定 子和转子之间存在间隙 (称为空气隙)。定子 由定子铁心、励磁绕组、 机壳、端盖和电刷装置 等组成。
2021
6
51单片机及PWM的简介
❖ 一个完整的计算机包括运算器、控制器、数 据(程序)存储器和输入/输出接口四大部分。 在一个晶体芯片上集成了计算机的四大基本 单位使之变成为一个完整的计算机,称之为 单片机。
2021
7
单片机的主要特性
❖ AT89C51单片机有128*8位内部RAM、32可 编程I/O线、两个16位定时器/计数器、5个中 断源、可编程串行通道、低功耗的闲置和掉 电模式、片内振荡器和时钟电路
2021
8
51单片机及PWM的简介
❖ PWM的基本原理
❖ PWM(脉冲宽度调制)是通过控制固定电压的直流电源开 关频率,改变负载两端的电压,从而达到控制要求的一种电 压调整方法。PWM可以应用在许多方面,比如:电机调速、 温度控制、压力控制等等。
❖ 在PWM驱动控制的调整系统中,按一个固定的频率来接通 和断开电源,并且根据需要改变一个周期内“接通”和“断 开”时间的长短。通过改变直流电机电枢上电压的“占空比”
基于51单片机的大功率直流有刷电机的PWM调速控制

基于51单片机的大功率直流有刷电机的PWM调速控制本人最近一直想用51 单片机来设计制作一个大功率直流有刷电机PWM 调速控制器。
由于平时工作忙,没时间。
所以,这个东东花了我很长时间。
每天晚上下了班,回家就弄,一直搞到十一二点钟才休息。
期间,也花了我不少钱,也失败了N 次。
终于,功夫不负有心人,我终于成功了,哈哈~~。
由于这个是大功率的直流有刷电机PWM 调速控制器,所以就不能用晶体管来驱动了,必须用MOS 管来驱动。
MOS 管不仅驱动能力强,而且效率高。
为了提高系统的稳定性,可靠性,适用范围广等特点,本系统,采用双电源供电。
控制电路一组电源,电压分别为5V 和15V。
功率输出部分一组电源,以适应不同电压的电动机。
至于功率,可以根据实际情况,通过并联MOS 管来决绝,但同时也要修改下驱动电路的相关参数,否则就很有可能炸MOS 管!另外,本人也考虑过在单片机的PWM 脉冲输出端与驱动电路之间,通过光耦来连接,实现光电隔离,提高系统的稳定性。
但后来又担心光耦的频率响应速率,可能会给驱动电路带来信号的衰减或者错误的信号等因素,造成降低系统的效率或者损坏MOS 管。
也许是我多虑了吧。
呵呵,不过我看到网上好多资料都是用的光电隔离。
目前,这个版本的调速控制器,共4 路PWM 脉冲输出,分别提供给:上,下MOS 管驱动电路正转信号。
上,下MOS 管驱动电路反转信号。
待机状态下一个红色的LED 灯闪烁,电机运行的各种状态指示,可以低速,中速,高速三个档运行。
并可以实现刹车和倒车功能。
这个目前可以达到至少100W 不成问题。
我现在采用的是一个12V 80W 的直流有刷电机。
低速运行时的电压为:3.7V,中速时:6.5V,高速时:10.5V。
目前这个东东只是实现了最基本的控制功能。
还不具有其它功能,如,电机过流保护,欠压保护(用蓄电池做电源时,。
基于51单片机的PWM直流调速系统
基于51单片机的PWM直流调速系统摘要:在当今社会,自动控制系统遍及我们生活的各个领域,在工业自动化中的应用也及其普遍,如:数控设备,工业机器人,电动机农业等。
而驱动这些设备的动力系统大多为直流电机,直流电机也因其有良好的启动性能,调速性能被广泛应用。
单片机简单来说就是集CPU(运算、控制)、RAM(数据存储-内存)、ROM(程序存储)、输入输出设备(串口、并口等)和中断系统处于同一芯片的器件,是一种功能强,体积小,可靠性高的大规模集成电路器件,乘法和除法指令,也给编程也带来了便利。
PWM(脉冲宽度调制)调速技术是直流电机中最常见的一种调速技术。
该调速技术有需要的元器件少,电路构造简单,精度高,范围广和无极调速等优点,成为直流电机的主流调速技术之一,同时也促进了工业化的发展。
本文主要介绍直流电机的调速系统,该系统为用51单片机发出PWM信号,通过改变PWM信号占空比来实现直流电机的调速。
并通过L298驱动模块来驱动电机。
在直流电机调速过程中,需要采用一些按键对系统调速进行控制。
在本系统中主要采用的是按键的方式进行控制,将四个按键分别连接到单片机的四个引脚上。
同时通过转速和电流双闭环直流调速系统,采用模糊控制的PID控制器对该系统进行控制,到达一个理想的速度。
关键词:直流电机;单片机;PWM调速;L2981研究背景及意义1.1国内外研究现状电机的历史非常悠久,自从第二次工业革命-电气化时代以来,电机就开始广泛参与人类生活的各个方面。
按工作电源种类来进行划分,电机可以分为交流电机与直流电机两大种类。
电机的转速控制是电机控制的最终目标,对应于电机的控制,交流调速系统与直流调速系统是电机自动控制系统中的两个重要组成部分。
直流调速系统与交流调速系统相比,具有调速精度高、调速范围广的特点,并且其变流装置控制简单,并具有更好的启动与制动性能。
在调速性能要求比较高、大功率、大扭矩的场合,如轧钢厂,海上钻井平台,直流调速系统仍占据主导地位。
pwm调速的工作原理
pwm调速的工作原理
PWM调速的工作原理时通过控制脉冲宽度的方式来调节电机
的速度。
具体来说,PWM调速是利用时序数字信号控制电源
电压的一种方法。
当电源的电压不变时,改变脉冲的占空比可以改变负载的平均电压,从而实现调速的目的。
在PWM调速中,调速器根据需要调节的速度设定一个周期T,在每个周期内会出现若干个脉冲,每个脉冲的宽度决定了开关元件导通时间的长短。
当脉冲宽度为0时,开关元件不导通,即电源断开,负载断电;当脉冲宽度为T时,开关元件一直
导通,即电源一直连接,负载通电。
通过改变脉冲宽度,即改变每个脉冲中导通的时间长度,可以控制负载的输出电压。
具体实现PWM调速的方法有多种,其中一种常见的方法是通
过微控制器。
微控制器可以通过改变输出引脚的电平来控制开关元件的导通与断开,从而产生PWM信号。
通过调整微控制
器的输出引脚电平和脉宽,可以实现对负载的调速控制。
总结起来,PWM调速的工作原理是通过改变脉冲宽度来实现
对负载输出电压的调节。
通过调节脉冲宽度,即调节导通的时间长度,可以实现负载的不同速度控制。
51单片机H桥电路控制电机正反转和PWM调速
51单片机H桥电路控制电机正反转和PWM调速搭了个H桥电路,控制电机的正反转和PWM调速,程序是网上的,改改引脚就能用,电路和源程序如下:功能:P1.1按键停止,P1.2左转,P1.3右转,P1.0调速#include;#define uchar unsigned char#define uintunsigned intsbit PW1=P0^0 ;sbit PW2=P0^1 ;//控制电机的两个输入sbit accelerate=P1^0 ;//调速按键sbit stop=P1^1 ;//停止按键sbit left=P1^2 ;//左转按键sbit right=P1^3 ;//右转按键#define right_turn PW1=0;PW2=1//顺时针转动#define left_turn PW1=1;PW2=0//逆向转动#define end_turnPW1=1;PW2=1//停转uint t0=25000,t1=25000;//初始时占空比为50%uint a=25000;//设置定时器装载初值25ms设定频率为20Hzuchar flag=1;//此标志用于选择不同的装载初值uchar dflag;//左右转标志uchar count;//用来标志速度档位void keyscan();//键盘扫描void delay(uchar z);void time_init();//定时器的初始化void adjust_speed();//通过调整占空比来调整速度//**********************************//void main(){time_init();//定时器的初始化while(1){keyscan();//不断扫描键盘程序,以便及时作出相应的响应}}//*************************************// void timer0()interrupt 1 using 0{if(flag){flag=0;end_turn;a=t0;//t0的大小决定着低电平延续时间TH0=(65536-a)/256;TL0=(65536-a)%256;//重装载初值}else{flag=1;//这个标志起到交替输出高低电平的作用 if(dflag==0)right_turn;//右转}else{left_turn; //左转}a=t1;//t1的大小决定着高电平延续时间 TH0=(65536-a)/256;TL0=(65536-a)%256;//重装载初值}void time_init(){TMOD=0x01; //工作方式寄存器软件起动定时器定时器功能方式1 定时器0 TH0=(65536-a)/256;TL0=(65536-a)%256;//装载初值ET0=1;//开启定时器中断使能EA=1;// 开启总中断TR0=0;}//****************************************// void delay(uchar z)//在12M下延时z毫秒{uint x,y;for(x=z;x>;0;x--)for(y=110;y>;0;y--);//******************************// void keyscan(){if(stop==0){TR0=0;//关闭定时器0即可停止转动end_turn;}if(left==0){TR0=1;dflag=1;//转向标志置位则左转}if(right==0){TR0=1;dflag=0;//转向标志复位则右转}if(accelerate==0){delay(5) ; //延时消抖if(accelerate==0){while(accelerate==0) ; //等待松手count++;if(count==1){t0=20000;t1=30000;//占空比为百分之60}if(count==2){t0=15000;t1=35000;//占空比为百分之70}if(count==3){t0=10000;t1=40000;//占空比为百分之80}if(count==4){t0=5000;t1=45000;//占空比为百分之90}if(count==5){count=0;}}} }。
pwm电机调速原理
pwm电机调速原理PWM电机调速原理。
PWM(Pulse Width Modulation)是一种常用的调制技术,它通过改变脉冲的宽度来控制电机的转速。
在PWM电机调速原理中,我们将介绍PWM技术的基本原理、工作原理和应用场景。
首先,让我们来了解一下PWM技术的基本原理。
PWM技术是通过改变脉冲信号的占空比来控制电机的转速。
脉冲信号是由高电平和低电平组成的,高电平的持续时间就是脉冲的宽度,而一个完整的脉冲周期包括了一个高电平和一个低电平。
通过改变高电平的持续时间,我们可以控制电机的平均电压,从而实现对电机转速的调节。
其次,我们来了解PWM技术的工作原理。
当PWM信号的占空比增大时,电机接收到的平均电压也会增大,从而使得电机的转速增加;反之,当PWM信号的占空比减小时,电机接收到的平均电压减小,电机的转速也会减小。
因此,通过改变PWM信号的占空比,我们可以实现对电机转速的精确控制。
接下来,我们将介绍PWM技术在电机调速中的应用场景。
PWM技术广泛应用于直流电机和交流电机的调速控制中。
在直流电机中,PWM技术可以通过改变直流电源的开关频率和占空比来控制电机的转速;在交流电机中,PWM技术可以通过变频器来控制电机的转速,实现对电机的精确调速。
除了在电机调速中的应用,PWM技术还被广泛应用于电源控制、LED调光、温度控制等领域。
由于PWM技术具有调节范围广、控制精度高、效率高等优点,因此在工业控制和电子设备中得到了广泛的应用。
综上所述,PWM电机调速原理是通过改变脉冲信号的占空比来控制电机的转速。
PWM技术具有调节范围广、控制精度高、效率高等优点,因此在电机调速、电源控制、LED调光、温度控制等领域得到了广泛的应用。
希望通过本文的介绍,读者能对PWM电机调速原理有一个更加深入的了解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PWM电机调速原理及
51单片机PWM程序经
典
精品文档
收集于网络,如有侵权请联系管理员删除
Pwm电机调速原理
对于电机的转速调整,我们是采用脉宽调制(PWM)办法,控制电机的时候,
电源并非连续地向电机供电,而是在一个特定的频率下以方波脉冲的形式提供
电能。不同占空比的方波信号能对电机起到调速作用,这是因为电机实际上是
一个大电感,它有阻碍输入电流和电压突变的能力,因此脉冲输入信号被平均
分配到作用时间上,这样,改变在始能端PE2 和PD5 上输入方波的占空比就
能改变加在电机两端的电压大小,从而改变了转速。
此电路中用微处理机来实现脉宽调制,通常的方法有两种:
(1)用软件方式来实现,即通过执行软件延时循环程序交替改变端口某个二
进制位输出逻
辑状态来产生脉宽调制信号,设置不同的延时时间得到不同的占空比。
(2)硬件实验自动产生PWM 信号,不占用CPU 处理的时间。
这就要用到ATMEGA8515L 的在PWM 模式下的计数器1,具体内容可参考
相关书籍。
51单片机PWM程序
产生两个PWM,要求两个PWM波形占空都为80/256,两个波形之间要错开,
不能同时为高电平!高电平之间相差48/256,
PWM这个功能在PIC单片机上就有,但是如果你就要用51单片机的话,也是
可以的,但是比较的麻烦.可以用定时器T0来控制频率,定时器T1来控制占空
比:大致的的编程思路是这样的:T0定时器中断是让一个I0口输出高电平,
在这个定时器T0的中断当中起动定时器T1,而这个T1是让IO口输出低电
平,这样改变定时器T0的初值就可以改变频率,改变定时器T1的初值就可以
改变占空比。
*程序思路说明: *
* *
*关于频率和占空比的确定,对于12M晶振,假定PWM输出频率为1KHZ,这
样定时中断次数 *
精品文档
收集于网络,如有侵权请联系管理员删除
*设定为C=10,即0.01MS中断一次,则TH0=FF,TL0=F6;由于设定中断时间
为0.01ms,这样*
*可以设定占空比可从1-100变化。即0.01ms*100=1ms *
******************************************************************************/
#include
#define uchar unsigned char
/*****************************************************************************
* TH0和TL0是计数器0的高8位和低8位计数器,计算办法:TL0=(65536-
C)%256; *
* TH0=(65536-C)/256,其中C为所要计数的次数即多长时间产生一次中断;
TMOD是计数器*
* 工作模式选择,0X01表示选用模式1,它有16位计数器,最大计数脉冲为
65536,最长时 *
* 间为1ms*65536=65.536ms *
******************************************************************************/
#define V_TH0 0XFF
#define V_TL0 0XF6
#define V_TMOD 0X01
void init_sys(void); /*系统初始化函数*/
void Delay5Ms(void);
unsigned char ZKB1,ZKB2;
void main (void)
{
init_sys();
ZKB1=40; /*占空比初始值设定*/
ZKB2=70; /*占空比初始值设定*/
while(1)
精品文档
收集于网络,如有侵权请联系管理员删除
{
if (!P1_1) //如果按了+键,增加占空比
{
Delay5Ms();
if (!P1_1)
{
ZKB1++;
ZKB2=100-ZKB1;
}
}
if (!P1_2) //如果按了-键,减少占空比
{
Delay5Ms();
if (!P1_2)
{
ZKB1--;
ZKB2=100-ZKB1;
}
}
/*对占空比值限定范围*/
if (ZKB1>99) ZKB1=1;
if (ZKB1<1) ZKB1=99;
}
}
/******************************************************
*函数功能:对系统进行初始化,包括定时器初始化和变量初始化*/
void init_sys(void) /*系统初始化函数*/
{
/*定时器初始化*/
TMOD="V"_TMOD;
TH0=V_TH0;
TL0=V_TL0;
TR0=1;
精品文档
收集于网络,如有侵权请联系管理员删除
ET0=1;
EA="1";
}
//延时
void Delay5Ms(void)
{
unsigned int TempCyc = 1000;
while(TempCyc--);
}
/*中断函数*/
void timer0(void) interrupt 1 using 2
{
static uchar click="0"; /*中断次数计数器变量*/
TH0=V_TH0; /*恢复定时器初始值*/
TL0=V_TL0;
++click;
if (click>=100) click="0";
if (click<=ZKB1) /*当小于占空比值时输出低电平,高于时是高电平,从而实
现占空比的调整*/
P1_3=0;
else
P1_3=1;
if (click<=ZKB2)
P1_4=0;
else
P1_4=1;
} <
精品文档
收集于网络,如有侵权请联系管理员删除
1.下面是AVR的程序,51产生PWM波麻烦,可以用AVR。主要是设置存放
的TOP值 (OCR1A的值),然后你要多大的占空比 再设置OCR1B的值,
至于持续时间就更简单了,你要产生多久,就调用此函数就可以了哈
2.产生方波的频率计算公式(KHZ)
f=fclk(晶振)/{*N(1+OCRNA)}
N:代表分频因子
根据你要的产生方波的频率,就能算出OCRNA的值,就可以了!
/***************在OCR1B(PD4)上可测到100HZ的PWM波
***********************/
/***************在OCR1A(PD5)上可测到50HZ的方波************************/
#include
#include
void PWM()
{
DDRD=0X30;//设置OC1B(PD4)和OC1A(PD5)为输出
TCCR1A=0X63;
TCCR1B=0X1B;
OCR1A=7;//得到10KHZ的PWM波
OCR1B=5;//得到2ms(1810/5)的高电平时间
}