PIC16F72单片机引脚功能介绍
电动车控制器原理及编程
电动车控制器原理及编程2008-10-29 15:34电动车控制器原理及编程/html/blog/7597/45892.htm云翔电动车维修的BLOG 原信息URL:/html/blog/7597/45892.htm控制器无刷控制器硬件电路详解电动车无刷电机是目前最普及的电动车用动力源,无刷电机以其相对有刷电机长寿,免维护的特点得到广泛应用,然而由于其使用直流电而无换向用的电刷,其换向控制相对有刷电机要复杂许多,同时由于电动车负载极不稳定,又使用电池作电源,因此控制器自身的保护及对电机,电源的保护均对控制器提出更多要求。
自电动车用无刷电动机问世以来,其控制器发展分两个阶段:第一阶段为使用专用无刷电动机控制芯片为主组成的纯硬件电路控制器,这种电路较为简单,其中控制芯片的代表是摩托罗拉的MC33035,这个不是这里的主题,所以也不作深入介绍。
第二阶段是以MCU为主的控制芯片。
这是这篇文章介绍的重点,在MCR 版本的设计中,揉和了模拟、数字、大功率MOSFET驱动等等许多重要应用,结合MCU智能化控制,是一个非常有启迪性的设计。
今以应用最广泛的以PIC16F72为智能控制中心,350W的整机电路为例,整机电路如图1:图1:350W整机电路图整机电路看起来很复杂,我们将其简化成框图再看看:图2:电路框图电路大体上可以分成五部分:一、电源稳压,供应部分;二、信号输入与预处理部分;三、智能信号处理,控制部分;四、驱动控制信号预处理部分;五、功率驱动开关部分。
下面我们先来看看此电路最核心的部分:PIC16F72组成的单片机智能处理、控制部分,因为其他电路都是为其服务或被其控制,弄清楚这部分,其它电路就比较容易明白。
图3:PIC16F72在控制器中的各引脚应用图我们先来简单介绍一下PIC16F72的外部资源:该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第13脚是CCP1输出口,可输出最大分辨率达10BIT的可调PWM信号,另有AN0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
电动车无刷控制器电路图(高清)
今以应用最广泛的以PIC16F72为智能控制中心,350W的整机电路为例,整机电路如图1 :(原文件名:1.gif)图1:350W 整机电路图整机电路看起来很复杂,我们将其简化成框图再看看:(原文件名:2.gif)图2:电路框图种旌用制肌抽输扎 ©卫再想罟输入电路大体上可以分成五部分:一、 电源稳压,供应部分;二、 信号输入与预处理部分;三、 智能信号处理,控制部分;四、 驱动控制信号预处理部分;五、 功率驱动开关部分。
下面我们先来看看此电路最核心的部分: PIC16F72组成的单片机智能处理、控 制部分,因为其他电路都是为其服务或被其控制, 弄清楚这部分,其它电路就比 较容易明白。
唯丿;机冲沖I「心 7\ 电從放嵐部井 『朕世述*扎剧喉输入PtC'l4FT2(原文件名:3.gif )图3:PIC16F72在控制器中的各引脚应用图我们先来简单介绍一下PIC16F72的外部资源:该单片机有28个引脚,去掉电 源、复位、振荡器等,共有22个可复用的IO 口,其中第13脚是CCP1输出口, 可输出最大分辨率达10BIT 的可调PWM 信号,另有AN0-AN4共5路AD 模数 转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事 件。
内部软件资源我们在软件部分讲解,这里并不需要很关心。
各引脚应用如下:I : MCLR 复位/烧写高压输入两用口2:模拟量输入口:放大后的电流信号输入口,单片机将此信号进行 A-D 转换后 经过运算来控制PWM 的输出,使电流不致过大而烧毁功率管。
正常运转时电压 应在0-1.5V 左右 3:模拟量输入口:电源电压经分压后的输入口,单片机将此信号进行 A-D 转换 后判断电池电压是否过低,如果低则切断输出以保护电池,避免电池因过放电而 损坏。
正常时电压应在3V 以上4 :模拟量输入口:线性霍尔组成的手柄调速电压输入口,单片机根据此电压高 低来控制输出给电机的总功率,从而达到调整速度的目的。
MICROCHIP PIC16F723单片机在线调试烧录指引(SP-178)
一、烧录工具
1.编程器:PRO ICD2一个,USB连接线1条,5pin连接线1条
2. PC电脑一台
二、烧录软件版本信息
MPLAB IDE V8.10
三、适用芯片
MICROCHIP PIC16F723-I/SS单片机适用于SP-178主板在线烧录
四、调试方法:
1.取编程器,一端连PC电脑,另一端连接待烧录主板,连接线第一脚与SP-178主板上的
JP2第一脚“VPP”对应;
2.取得研发工程师提供的烧录文件,将其存放在除系统盘外的其它盘符内,注意存放路径
只能用英文或数字命名,不能含有中文;
图1
3.双击打开Microchip MPLAB.Workspace文件,如图2,检查Checksum是否与《芯片拷贝
申请记录表》上的校验码一致;
4.确认校验码一致后,点击烧录图标,屏幕显示正确烧录结果;
图14
(注:若上图出现非黑色字体的编译信息,则说明编译出错,则需检查下载连接及设置是否正确)
5.烧录完毕,在烧录OK的芯片上方打点做标记,取下PCBA,重复第4步,进行下一轮烧
写;
五、注意事项:
1.烧录过程中,需配带防静电手腕扣,并确保静电腕扣接地良好;
2.烧录过程中,校验码不能变化,如有误,须立即停止烧录;
3.烧录过程中,注意做好区分标识,不可混装;
六、相关文件及表单:
1.《芯片拷贝申请记录表》。
电动车无刷控制器电路图(高清)精编版
今以应用最广泛的以PIC16F72为智能控制中心,350W的整机电路为例,整机电路如图1:(原文件名:1.gif)图1:350W整机电路图整机电路看起来很复杂,我们将其简化成框图再看看:(原文件名:2.gif)图2:电路框图电路大体上可以分成五部分:一、电源稳压,供应部分;二、信号输入与预处理部分;三、智能信号处理,控制部分;四、驱动控制信号预处理部分;五、功率驱动开关部分。
下面我们先来看看此电路最核心的部分:PIC16F72组成的单片机智能处理、控制部分,因为其他电路都是为其服务或被其控制,弄清楚这部分,其它电路就比较容易明白。
(原文件名:3.gif)图3:PIC16F72在控制器中的各引脚应用图我们先来简单介绍一下PIC16F72的外部资源:该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第13脚是CCP1输出口,可输出最大分辨率达10BIT的可调PWM信号,另有AN0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
内部软件资源我们在软件部分讲解,这里并不需要很关心。
各引脚应用如下:1:MCLR复位/烧写高压输入两用口2:模拟量输入口:放大后的电流信号输入口,单片机将此信号进行A-D转换后经过运算来控制PWM的输出,使电流不致过大而烧毁功率管。
正常运转时电压应在0-1.5V左右3:模拟量输入口:电源电压经分压后的输入口,单片机将此信号进行A-D转换后判断电池电压是否过低,如果低则切断输出以保护电池,避免电池因过放电而损坏。
正常时电压应在3V以上4:模拟量输入口:线性霍尔组成的手柄调速电压输入口,单片机根据此电压高低来控制输出给电机的总功率,从而达到调整速度的目的。
5:模拟/数字量输入口:刹车信号电压输入口。
可以使用AD转换器判断,或根据电平高低判断,平时该脚为高电平,当有刹车信号输入时,该脚变成低电平,单片机收到该信号后切断给电机的供电,以减少不必要的损耗。
PIC16F单片机内置AD采样+外部基准参考电压
一、ADC参考电压
大家在使用单片机采集模拟量信号时,经常会使用低成本方案,即使用单片机内置AD模块进行模拟量的转换。
对于精度要求不高的产品或许还能满足要求,但对于精度稍高些的,又不想用外部AD转换芯片的,那么只能在单片机的基准口加一个基准稳压芯片,如TI的REF系列基准稳压芯片。
基准稳压芯片原理图
PIC16F685单片机
二、端口复用
此处以PIC16F685单片机为例,通过手册中的引脚图可以看出RA1接口有个功能是Vref,这个引脚功能如图所示,其中VREF就是ADC 的参考电压输入引脚。
在使用时,我们需要将基准稳压芯片的输出端连接到单片机的RA1端口,这样就将输出电压便可以为单片机的ADC提供参考电压。
RA1引脚功能
RA1端口功能框图
三、配置寄存器
硬件连接好,接下来就需要配置寄存器了。
通过ADC功能框图可以看出,ADC参考电压可以是单片机的工作电压VDD,也可以是VREF,它们之间的切换是通过VCFG这个寄存器来控制的,所以此处我们需将该配置为设置为1。
VDFG=1;//使用VREF作为参考电压
VCFG=0;//使用VDD作为参考电压
ADC功能框图
注意:使用VREF作为参考电压时,注意单片机工作电压VDD需大于VREF,这样采样转换的数据才准确稳定,原因为VDD<VREF时,会使采样不准,有兴趣的同学也可以使用Proteus软件进行仿真。
单片机引脚说明-按其引脚功能分为四部分叙述这40条引脚的功能
单片机引脚说明-按其引脚功能分为四部分叙述这40条引脚的功能下面按其引脚功能分为四部分叙述这40条引脚的功能。
1、主电源引脚VCC和VSSVCC——(40脚)接+5V电压;VSS——(20脚)接地。
2、外接晶体引脚XTAL1和XTAL2XTAL1(19脚)接外部晶体的一个引脚。
在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。
当采用外部振荡器时,对HMOS单片机,此引脚应接地;对CHMOS单片机,此引脚作为驱动端。
XTAL2(18脚)接外晶体的另一端。
在单片机内部,接至上述振荡器的反相放大器的输出端。
采用外部振荡器时,对HMOS单片机,该引脚接外部振荡器的信号,即把外部振荡器的信号直接接到内部时钟发生器的输入端;对XHMOS,此引脚应悬浮。
3、控制或与其它电源复用引脚RST/VPD、ALE/PROG、PSEN和EA/VPP①RS T/VPD(9脚)当振荡器运行时,在此脚上出现两个机器周期的高电平将使单片机复位。
推荐在此引脚与VSS引脚之间连接一个约8.2k的下拉电阻,与VCC引脚之间连接一个约10μF的电容,以保证可靠地复位。
VCC掉电期间,此引脚可接上备用电源,以保证内部RAM的数据不丢失。
当VCC主电源下掉到低于规定的电平,而VPD在其规定的电压范围(5±0.5V)内,VPD就向内部RAM 提供备用电源。
②ALE/PROG(30脚):当访问外部存贮器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。
即使不访问外部存储器,ALE端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的1/6。
因此,它可用作对外输出的时钟,或用于定时目的。
然而要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。
ALE端可以驱动(吸收或输出电流)8个LS型的TTL输入电路。
对于EPROM单片机(如8751),在EPROM编程期间,此引脚用于输入编程脉冲(PROG)。
③PSEN(29脚):此脚的输出是外部程序存储器的读选通信号。
单片机各个引脚功能概述
单片机各个引脚功能概述
1、VCC和GND:VCC是电源正极,GND是电源负极,需要将它们接上相应的正负极,
以便正常供电和操作。
2、XTAL1和XTAL2:是晶振输入引脚,为外接振荡器所用,可兼容内部晶振。
3、RESET:复位信号引脚,若短接RESET和GND,则使MICROCONTROLLER复位。
4、ALE、A0-A13:地址线输出端引脚,相应芯片模式下,取出地址信息,即从数据总
线上输出地址信息,也可位当前器件的复位端。
5、RD、WR:读写控制信号引脚,控制内部存储器端数据的读写操作。
6、T0、T1:定时器脚,如想使用定时器,则需要把T0与T1连接起来。
7、INT、NMI:中断引脚,可连接外部中断源,以触发中断事件,也可选择不产生中
断事件。
8、P0、P2……P15:通用IO口,可控制或输出信号。
9、RST:复位口,可用于复位电路,也可做为可编程IO口。
10、PSEN:片选信号,用于使总线上的片选控制站可以工作。
11、CLK:时钟信号,用于控制系统内部计时器工作。
12、EXEN:外部状态机使能信号,可用于LED显示器、键盘等外围设备的使能。
13、EA/VPP:电场/高压功能有多种,根据具体芯片来定,一般用于CPU的复位、高
低电平转换等操作。
14、VSS、VDD:高低电压夹电源,用来调节内部器件电源电压及提高稳定性。
15、S0-S3:模式控制口,用于连接专用信号线,以确定单片机的工作模式。
16、PS:开关控制接口,用于控制某些单片机的工作状态,如打断状态、启动状态等。
电动车充电器常见故障维修方法
电动车充电器常见故障维修方法 (2021-08-13 12:30:42)转载▼标签:杂谈分类:电动车充电器技术资料1:电源不启动:插电源,大电容有300V电压、拔掉电源再次测量大电容2端还是300V电压不下降。
给电容放电后,将启动电阻换掉即可。
启动电阻在电源输入局部,阻值150K,功率2W,2: 电源不启动:插电,大电容2端有300V电压,拔掉电源,大电容电压慢慢下降,将电路板全部检查是否有脱焊的现象,补焊完成后,将3842换成新的,通电试机即可,3:闪灯:先将电路板补焊一遍,再次试机,如果还是闪灯,请检查输出端取样电阻。
0.1欧。
3W功率。
接在输出线的负极端,将此电阻换新即可,4:输出电压高,通电,电压高于70多V,充电不转灯,先将电路板补焊一遍,再次试机,如果还是电压高,请更换光电耦合器、再次试机、还是输出高,更换431基准稳压器,再次试机5:吱吱叫,发热,充电缺乏:通电测量大电容电压,只要低于300V,一般电容失效,更换即可,6:严重发热,请将风扇换新即可,7:输出电压不稳定,先将电路板补焊一遍,后试机,然后将输出端电容63V470UF电容换新试机即可,8:充电不转灯,用检测仪测试各项数据,然后将358或者324换新试机,9:充电不稳定,有时候能充,有时候不能冲,用测试仪检测各项数据,然后将输入输出电源线,全部换新,补焊线路板试机10:通电烧保险:先检测功率管击穿没有,没有的话将4个整流二极管全部换新,试机,11:通电无输出,通电试机,大电容2端有300V电压,且慢慢下降,首先检测输出端大二极管击穿没有,补焊,再次试机12:通电亮2个红灯:通电试机,空载电压是否正常,然后将358或324换新试机,13:通电无输出,能正常启动,指示灯正常,先将输出线换新,对于有继电器的充电器直接短路继电器试机,14:通电闪灯,请补焊变压器各引脚,然后试机,如果依旧,请检查431、光电耦合器、输出局部各二极管是否短路,变压器磁芯是否松动,电源输入局部10欧小电阻是否开路。
电动车无刷控制器电路图(高清)资料
今以应用最广泛的以PIC16F72为智能控制中心,350W的整机电路为例,整机电路如图1:(原文件名:1.gif)图1:350W整机电路图整机电路看起来很复杂,我们将其简化成框图再看看:(原文件名:2.gif)图2:电路框图电路大体上可以分成五部分:一、电源稳压,供应部分;二、信号输入与预处理部分;三、智能信号处理,控制部分;四、驱动控制信号预处理部分;五、功率驱动开关部分。
下面我们先来看看此电路最核心的部分:PIC16F72组成的单片机智能处理、控制部分,因为其他电路都是为其服务或被其控制,弄清楚这部分,其它电路就比较容易明白。
(原文件名:3.gif)图3:PIC16F72在控制器中的各引脚应用图我们先来简单介绍一下PIC16F72的外部资源:该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第13脚是CCP1输出口,可输出最大分辨率达10BIT的可调PWM信号,另有AN0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
内部软件资源我们在软件部分讲解,这里并不需要很关心。
各引脚应用如下:1:MCLR复位/烧写高压输入两用口2:模拟量输入口:放大后的电流信号输入口,单片机将此信号进行A-D转换后经过运算来控制PWM的输出,使电流不致过大而烧毁功率管。
正常运转时电压应在0-1.5V左右3:模拟量输入口:电源电压经分压后的输入口,单片机将此信号进行A-D转换后判断电池电压是否过低,如果低则切断输出以保护电池,避免电池因过放电而损坏。
正常时电压应在3V以上4:模拟量输入口:线性霍尔组成的手柄调速电压输入口,单片机根据此电压高低来控制输出给电机的总功率,从而达到调整速度的目的。
5:模拟/数字量输入口:刹车信号电压输入口。
可以使用AD转换器判断,或根据电平高低判断,平时该脚为高电平,当有刹车信号输入时,该脚变成低电平,单片机收到该信号后切断给电机的供电,以减少不必要的损耗。
PIC16F72单片机引脚功能介绍
1:MCLR复位/烧写高压输入两用口
2:模拟量输入口:放大后的电流信号输入口,单片机将此信号进行A-D转换后经过运算来控制PWM的输出,使电流不致过大而烧毁功率管。正常运转时电压应在0-1.5V左右
3:模拟量输入口:电源电压经分压后的输入口,单片机将此信号进行A-D转换后判断电池电压是否过低,如果低则切断输出以保护电池,避免电池因过放电而损坏。正常时电压应在3V以上
6:数字量输入口:1+1助力脉冲信号输入口,当骑行者踏动踏板使车前行时,该口会收到齿轮传感器发出的脉冲信号,该信号被单片机接收到后会给电机输出一定功率以帮助骑行者更轻松地往前走。
7:模拟/数字量输入口:由于电机的位置传感器排列方法不同,该口的电平高低决定适合于哪种电机,目前市场上常见的有所谓120?和60?排列的电机。有的控制器还可以根据该口的电压高低来控制起动时电流的大小,以适合不同的力度需求。
PIC16F72单片机引脚功能介绍
PIC16F72该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第13脚是CCP1输出口,可输出最大分辨率达10BIT的可调PWM信号,另有AN0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
4:模拟量输入口:线性霍尔组成的手柄调速电压输入口,单片机根据此电压高低来控制输出给电机的总功率,从而达到调整速度的目的。
5:模拟/数字量输入口:刹车信号电压输入口。可以使用AD转换器判断,或根据电平高低判断,平时该脚为高电平,当有刹车信号输入时,该脚变成低电平,单片机收到该信号后切断给电机的供电,以减少不必要的损耗。
8:单片机电源地。
9:单片机外接振荡器输入脚。
10:单片机外接振荡器反馈输出脚。:功能开关2
PIC各个引脚以及应用
标题:PIC系列单片机各引脚功能及其应用2011-06-29 14:58:21Microchip公司的PIC系列单片机具有实用、低价、易学、省电、高速和体积小等特点。
该系列单片机不是单纯的功能堆积,而是以多型号来满足不同层次的需要,并可提供低价的O TP芯片。
另外,该系列单片机还具有低功耗睡眠功能、掉电复位锁定、上电复位电路、看门狗电路等功能,而且外围器件少、占用空间小;成本低,保密技术也十分可靠,可最大限度地保护开发者的利益。
因此,在工业控制、仪器仪表、计算机、家电等诸多领域具有极其广阔的发展前景。
Microchip公司生产的PIC16C72是一款基于EPROM的8位高性能微控制器。
与其它价格相当的微控制器相比,它在执行速度和代码压缩方面都有很大的改进。
由于随时可以买到需要的OPT(一次性编程)产品,因而缩短了利用PIC16C73进行产品设计开发的周期。
PIC16C73微控制器所具有的优越性能主要归功于它的精简指令集(RISC)和所采用的哈佛(Harvard)结构,它具有分离的程序储器空间(12位宽指令)和数据存储器空间(8位宽数据)。
同时可运用两级流水线指令进行取数和执行,除了跳转指令需要两个周期外,其余所有的指令都可在单周期内执行。
PIC16C73分离的程序和数据空间可使指令字优化为任意宽度,从而使指令具有单字长的特性,且允许指令码的数据位数多于8位,这样,就可达到2:1的代码压缩和4:1的速度。
2 结构特点及工作原理PIC16C73 PIC16xx系列微控制器中的一种,它由高性能RISC结构的CPU、存储器、I/O接口和复位电路等组成。
2.1 外部结构特点PIC16C73是28脚双列直插式大规模集成芯片。
各引脚功能如下:OSC1/CLKIN:为晶体振荡器输入/外部时钟源输入引脚。
OSC2/CLKOUT:晶体振荡器输出/外部时钟源输出引脚。
在晶体振荡器方式下,接晶体或陶瓷振荡器;在RC振荡方式,输出1/4fosc。
电动车无刷马达控制器硬件电路详解
电动车无刷马达控制器硬件电路详解本文以PIC16F72为智能控制中心,350W的整机电路为例,整机电路如图图1:350W整机电路图整机电路看起来很复杂,我们将其简化成框图再看看:图2:电路框图电路大体上可以分成五部分:一、电源稳压,供应部分;二、信号输入与预处理部分;三、智能信号处理,控制部分;四、驱动控制信号预处理部分;五、功率驱动开关部分。
下面我们先来看看此电路最核心的部分:PIC16F72组成的单片机智能处理、控制部分,因为其他电路都是为其服务或被其控制,弄清楚这部分,其它电路就比较容易明白。
图3:PIC16F72在控制器中的各引脚应用图我们先来简单介绍一下PIC16F72的外部资源:该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第13脚是CCP1输出口,可输出最大分辨率达10BIT 的可调PWM信号,另有AN0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
内部软件资源我们在软件部分讲解,这里并不需要很关心。
字串1各引脚应用如下:1:MCLR复位/烧写高压输入两用口2:模拟量输入口:放大后的电流信号输入口,单片机将此信号进行A-D转换后经过运算来控制PWM的输出,使电流不致过大而烧毁功率管。
正常运转时电压应在0-1.5V左右3:模拟量输入口:电源电压经分压后的输入口,单片机将此信号进行A-D转换后判断电池电压是否过低,如果低则切断输出以保护电池,避免电池因过放电而损坏。
正常时电压应在3V以上4:模拟量输入口:线性霍尔组成的手柄调速电压输入口,单片机根据此电压高低来控制输出给电机的总功率,从而达到调整速度的目的。
5:模拟/数字量输入口:刹车信号电压输入口。
可以使用AD转换器判断,或根据电平高低判断,平时该脚为高电平,当有刹车信号输入时,该脚变成低电平,单片机收到该信号后切断给电机的供电,以减少不必要的损耗。
6:数字量输入口:1+1助力脉冲信号输入口,当骑行者踏动踏板使车前行时,该口会收到齿轮传感器发出的脉冲信号,该信号被单片机接收到后会给电机输出一定功率以帮助骑行者更轻松地往前走。
PIC16F72单片机控制的电动自行车C源程序
PIC16F72单片机控制的电动自行车C源程序,原理图及设计说明[table=98%][tr][td][color=black][u]PIC16F72单片机控制的电动自行车C源程序,原理图及设计说明[/u][/color][/td][/tr][tr][td][table=95%][tr][td]PIC16F72单片机控制的电动自行车驱动系统C程序PIC单片机控制的电动自行车驱动系统C程序.46.#include <pic.h>//电动车双闭环程序,采用双闭环方式控制电机,以得到最好的zh 转速性能,并且可以//限制电机的最大电流。
本应用程序用到两个CCP 部件,其中CCP1 用于PWM 输出,以控//制电机电压;CCP2 用于触发AD,定时器TMR2、TMR1,INT 中断,RB 口电平变化中断,//看门狗以及6 个通用I/O 口#define AND 0xe0 //状态采集5,6,7 位#define CURA 0X0a //电流环比例和积分系数之和#define CURB 0X09 //电流环比例系数#define THL 0X6400 //电流环最大输出#define FULLDUTY 0X0FF //占空比为1 时的高电平时间#define SPEA 0X1d //转速环比例和积分系数之和#define SPEB 0X1c //转速环比例系数#define GCURHILO 0X0330 //转速环最大输出#define GCURH 0X33 //最大给定电流#define GSPEH 0X67 //最大转速给定#define TSON 0X38 //手柄开启电压1.1 V,TSON*2 为刹车后手柄开启电压,即//2.2 V#define VOLON 0X4c //低电压保护重开电压3.0 V 即33 V#define VOLOFF 0X49 //低电压保护关断电压2.86 V 即31.5 Vvolatile unsigned char DELAYH,DELAYL,oldstate,speed,speedcount,tsh,count_ts,count_vol,gcur,currenth,voltage; //寄存器定义static bit sp1,spe,ts,volflag,spepid,lowpower,off,shutdown,curpid; //标志位定义static volatile unsigned char new[10]={0xaf,0xbe,0xff,0x7e,0xcf,0xff,0xd7,0x77,0xff,0xff}; //状态寄存器表//------------PIC16F877 初始化子程序------------void INIT877(){PORTC=0X0FF; //关断所有MOSFETTRISC=0X02; //设置C 口输出PIE1=0X00; //中断寄存器初始化,关断所有中断TRISA=0XCF; //设置RA4,RA5 输出TRISB=0XEF; //RB 口高三位输入,采集电机三相的霍尔信号PORTC=new[(PORTB&AND)>>5]; //采集第一次霍尔信号,并输出相应的信号,导通//两个MOS 管T2CON=0X01; //TMR2 4 分频CCPR1L=0X0FF; //初始时PWM 输出全高CCP1CON=0X0FF; //CCP1 设置为PWM 方式CCP2CON=0X0B; //CCP2 设置为特殊方式,以触发ADADCON0=0X81; //AD 时钟为32 分频,且AD 使能,选择AN0 通道采集手//柄电压TMR2=0X00; //TMR2 寄存器初始化TMR1H=0X00; //TMR1 寄存器初始化TMR1L=0X00;T1CON=0X00; //TMR1 为1 分频CCPR2H=0X08;CCPR2L=0X00; //电流采样周期设置为TAD=512 μsPR2=0XC7; //PWM 频率设置为5 kHzADCON1=0X02; //AD 结果左移OPTION=0XFB; //INT 上升沿触发TMR2ON=1; //PWM 开始工作INTCON=0XD8; //中断设置GIE=1,PEIE=1,RBIE=1ADIE=1; //AD中断使能speedcount=0x00; //转速计数寄存器speed=0x7f; //转速保持寄存器spe=1; //低速标志位sp1=1; //低速标志位oldstate=0x0ff; //初始状态设置,区别于其他状态count_ts=0x08; //电流采样8 次,采集1 次手柄count_vol=0x00; //采样256 次手柄,采集1 次电池电压ts=1; //可以采集手柄值的标志位ADGO=1; //AD采样使能TMR1ON=1; //CCP2 部件开始工作}//------------延时子程序---------------#pragma interrupt_level 1void DELAY1(x)char x;{DELAYH=x; //延时参数设置#asmDELAY2 MOVLW 0X06MOVWF _DELAYLDELAY1 DECFSZ _DELAYLGOTO DELAY1DECFSZ _DELAYHGOTO DELAY2#endasm}//-----------状态采集子程序----------------------void sample(){char state1,state2,state3,x;do {x=1;state1=(PORTB&AND); //霍尔信号采集DELAY1(x);state2=(PORTB&AND);}while(state1-state2); //当三次采样结果不相同时继续采集状态if(state1-oldstate!=0) //看本次采样结果是否与上次相同,不同//则执行{oldstate=state1; //将本次状态设置为旧状态state1=(oldstate>>5);PORTC=new[state1]; //C 口输出相应的信号触发两个MOS 管if(sp1==1){spe=1;sp1=0;}else { //如果转速很低,则spe 置1spe=0;sp1=0;speedcount<<=1;state3=(TMR1H>>2); //否则,spe=0,计转速speed=speedcount+state3; //speed 寄存器为每256 μs加1}speedcount=0;}}//-----------------AD 采样子程序----------------------void AD(){char x;ADIF=0; //清AD 中断标志位if(ts==1){ //如果为手柄采样,则采样手柄值CHS0=1; //选择电流采样通道count_vol=count_vol+1; //电池采样计数寄存器spepid=1; //置转速闭环运算标志ts=0;tsh=ADRESH; //存手柄值if(count_vol==0) { //如果电池采样时间到,则选择AN2 通道,采集电池电压CHS0=0;CHS1=1;volflag=1;x=1;DELAY1(x);ADGO=1;}}else if(volflag==1) { //电池采样完毕,进行相应的处理CHS1=0;CHS0=1;volflag=0;voltage=ADRESH;lowpower=1;}else { //否则,中断为采样电流中断speedcount=speedcount+1; //speedcount 寄存器加1,作为测量转速用if(speedcount>0x3d) sp1=1; //如果转速低于1 000 000 μs/(512 μs*3eh*3)// 则认为为低速状态currenth=ADRESH;curpid=1;count_ts=count_ts-1;if(count_ts==0) { //如果手柄时间到,则转入手柄采样通道CHS0=0;count_ts=0x08;ts=1;x=1;DELAY1(x);ADGO=1;}}}//-------------刹车处理子程序------------------void BREAKON(){char x;off=0; //off清零,如果是干扰则不复位shutdown=0;if(RB0==1) { //如果刹车信号为真,则停止输出电压ADIE=0; //关AD 中断INTE=0; //关刹车中断CCPR1L=FULLDUTY; //输出电压0TMR1ON=0; //关CCP2,不再触发ADfor(;ADGO==1;) continue;//如正在采样,则等待采样结束ADIF=0; //ADIF 位清零CHS0=0; //选择通道0 采样手柄CHS1=0;x=1;DELAY1(x);do {ADGO=1;for(;ADIF==0;)continue;ADIF=0;CCPR1L=FULLDUTY;asm("CLRWDT");tsh=(ADRESH>>1);}while(tsh>TSON||RB0==1); //当手柄值大于2.2 V 或刹车仍旧继续时,执行以//上语句off=1; //置复位标志}}//---------欠保护子程序-------------------void POWER(){char x;lowpower=0;voltage>>=1; //电压值换为7 位,以利于单字节运算if(voltage<VOLOFF) { //电池电压小于3*k(V)时保护ADIE=0;INTE=0;TMR1ON=0;CCPR1L=FULLDUTY;for(;ADGO==1;)continue;ADIF=0;CHS0=0;CHS1=1;x=1;DELAY1(x);do{ADGO=1;for(;ADIF==0;)continue;ADIF=0;voltage=(ADRESH>>1);CCPR1L=FULLDUTY;asm("CLRWDT");}while(voltage<VOLON); //电池电压小于35 V 时继续保护off=1; //置复位标志}}//------------电流环运算子程序-----------------void CURPI(){ static int curep=0x00,curek=0x00,curuk=0x00;union data{int pwm;char a[2];}b; //定义电流环运算寄存器curpid=0; //清电流运算标志curep=curek*CURB; //计算上一次偏差与比例系数的积if(currenth<2)currenth=2; //如果采样电流为零,则认为有一个小电流以利于//使转速下降currenth>>=1;curek=gcur-currenth; //计算本次偏差curuk=curuk+curek*CURA-curep; //按闭环PI 运算方式得到本次输出结果,下//面对结果进行处理if(curuk<0x00) { //如果输出小于零,则认为输出为零curuk=0;CCPR1L=FULLDUTY;CCP1X=0;CCP1Y=0;}else if(curuk-THL>=0) { //如果输出大于限幅值,则输出最大电压curuk=THL;CCPR1L=0;CCP1X=0;CCP1Y=0;}else { //否则,按比例输出相应的高电平时间到CCPR1 寄存器b.pwm=THL-curuk;b.pwm<<=1;CCPR1L=b.a[1]; //CCPR1L=(b.pwm>>8)&0x0ff;将PWM 寄存器的高半字节if(b.pwm&0x80!=0) CCP1X=1;else CCP1X=0;if(b.pwm&0x40!=0) CCP1Y=1;else CCP1Y=0;}}//---------------转速环运算子程序-----------------------void SPEPI(){ static int speep=0x00,speek=0x00,speuk=0x00;int tsh1,speed1; //转速寄存器定义spepid=0; //清转速运算标志if(spe==1) speed1=0x00; //若转速太低,则认为转速为零else speed1=0x7f-speed; //否则计算实际转速if(speed1<0) speed1=0;speep=speek*SPEB;tsh1=tsh-0x38; //得到计算用的手柄值speek=tsh1-speed1;if(tsh1<0) {speuk=0;gcur=0;} //当手柄值低于1.1 V 时,则认为手柄给定为零else { //否则,计算相应的转速环输出if(tsh1>=GSPEH) //限制最大转速tsh1=GSPEH;speuk=speuk+speek*SPEA-speep; //计算得转速环输出if(speuk<=0X00) {speuk=0x00;gcur=0x00;}//转速环输出处理else if(speuk>GCURHILO) { //转速环输出限制,即限制最大电流约12 A speuk=GCURHILO;gcur=GCURH;}else { //调速状态时的输出gcur=(speuk>>4)&0x0ff;}}}//-----------主程序-------------------------main(){for(;;){INIT877(); //单片机复位后,先对其进行初始化off=0; //清复位标志for(;off==0;) { //复位标志为零,则执行下面程序,否则复位if(curpid==1) CURPI(); //电流PI 运算else if(spepid==1) SPEPI(); //转速PI 运算else if(lowpower==1) POWER();else if(shutdown==1) BREAKON();asm("CLRWDT");}}}//---------中断服务子程序---------------------#pragma interrupt_level 1void interrupt INTS(void){if(RBIF==1) {RBIF=0;sample();}else if(ADIF==1) AD();else if(INTF==1) {shutdown=1;INTF=0;} //刹车中断来,置刹车标志设计思路:目的目前电动车市场各种功能无刷控制器琳琅满目,种类繁多。
pic16f716引脚介绍
pic16f716引脚介绍我用单片机PIC16F1933的内部4M Hz振荡,想通过单片机的串口脚TX发送数据出去。
程序如下://PIC16F1933无外部晶振,使用内部4M振荡//RC6做TX,RC7做RX#include//配置字1__CONFIG(FOSC_INTOSC&WDTE_OFF&PWRTE_ON&MCLRE_ON&CP_ON&C PD_ON&BOREN_ON&CLKOUTEN_OFF&IESO_OFF&FCMEN_OFF);//配置字2__CONFIG(WRT_ALL&VCAPEN_OFF&PLLEN_OFF&STVREN_ON&BORV_25 &LVP_ON);typedef unsigned char UCHAR;typedef unsigned int UINT;volatile UCHAR cRC_Dat[30];void PortInit1933(void);void UARTinit(void);void DLYxmS(UCHAR ci);void DLYx10mS(void);void PortInit1933(void){ANSELA=0x0;SRCON0=0x0;TRISA=0x8;//RA4接Busy输出,RA3接/strobe输入LATA=0x8;//RA4 0,RA3 1ANSELB=0x0;TRISB=0x3;//RB0接LATB=0xc3;//RB7,RB6是ISP引脚RB0输入,RB1输入OPTION_REG=0x0;//允许弱上拉WPUB=0x3;//RB0、RB1上拉LCDCON=0x0;//禁止LCDTRISC=0xff;//RC7-RX in,RC6-TX out,RC5~0 inLATC=0xff;//}void UARTinit(void){SPBRGH=0x0;SPBRGL=25;//9600bpsBAUDCON=0x0;//BRG16=0//bit4:SYNC 0=异步模式,bit3:SENDB 1=在下一次发送时发送同步间隔字符(完成时由硬件清零)//bit2:高波特率选择位,1=高速;;bit1:TRMT发送移位寄存器状态位,1=TSR为空//bit0:TX9D发送数据的第9位TXSTA=0xc;//,RCSTA=0x80;//bit7:SPEN=1使能串口,bit4:CREN连续接收使能位0=禁止接收器}void DLYxmS(UCHAR ci){UINT ix;for(;ci!=0;ci--){for(ix=0x7fff;ix!=0;ix--)//ix=0x145{asm("nop");}}}void DLYx10mS(void){UINT ix;for(ix=0x589;ix!=0;ix--)//ix=0x145{asm("nop");}}void main(void){volatile UCHAR ci;OSCCON=0x6a;//4MHz 01101010do{asm("nop");ci=OSCSTAT;//bit 4 HFIOFR:高频内部振荡器就绪位,1=HFINTOSC就绪}while(!(ci&0x10));//Internal Clock Oscillator Status Stable bitDLYx10mS();PortInit1933();UARTinit();for(;;){TXEN=1;for(ci=0;ci<25;ci++){cRC_Dat[ci]=ci; TXREG=cRC_Dat[ci]; DLYx10mS();}DLYxmS(250); TXEN=0;DLYxmS(250);}}。
电动车无刷控制器电路图(高清)
今以应用最广泛的以PIC16F72为智能控制中心,350W的整机电路为例,整机电路如图1:(原文件名:1.gif)图1:350W整机电路图整机电路看起来很复杂,我们将其简化成框图再看看:(原文件名:2.gif)图2:电路框图电路大体上可以分成五部分:一、电源稳压,供应部分;二、信号输入与预处理部分;三、智能信号处理,控制部分;四、驱动控制信号预处理部分;五、功率驱动开关部分。
下面我们先来看看此电路最核心的部分:PIC16F72组成的单片机智能处理、控制部分,因为其他电路都是为其服务或被其控制,弄清楚这部分,其它电路就比较容易明白。
(原文件名:3.gif)图3:PIC16F72在控制器中的各引脚应用图我们先来简单介绍一下PIC16F72的外部资源:该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第13脚是CCP1输出口,可输出最大分辨率达10BIT的可调PWM信号,另有AN0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
内部软件资源我们在软件部分讲解,这里并不需要很关心。
各引脚应用如下:1:MCLR复位/烧写高压输入两用口2:模拟量输入口:放大后的电流信号输入口,单片机将此信号进行A-D转换后经过运算来控制PWM的输出,使电流不致过大而烧毁功率管。
正常运转时电压应在0-1.5V左右3:模拟量输入口:电源电压经分压后的输入口,单片机将此信号进行A-D转换后判断电池电压是否过低,如果低则切断输出以保护电池,避免电池因过放电而损坏。
正常时电压应在3V以上4:模拟量输入口:线性霍尔组成的手柄调速电压输入口,单片机根据此电压高低来控制输出给电机的总功率,从而达到调整速度的目的。
5:模拟/数字量输入口:刹车信号电压输入口。
可以使用AD转换器判断,或根据电平高低判断,平时该脚为高电平,当有刹车信号输入时,该脚变成低电平,单片机收到该信号后切断给电机的供电,以减少不必要的损耗。
电动车控制器原理及编程
电动车控制器原理及编程控制器无刷控制器硬件电路详解电动车无刷电机是目前最普及的电动车用动力源,无刷电机以其相对有刷电机长寿,免维护的特点得到广泛应用,然而由于其使用直流电而无换向用的电刷,其换向控制相对有刷电机要复杂许多,同时由于电动车负载极不稳定,又使用电池作电源,因此控制器自身的保护及对电机,电源的保护均对控制器提出更多要求。
自电动车用无刷电动机问世以来,其控制器发展分两个阶段:第一阶段为使用专用无刷电动机控制芯片为主组成的纯硬件电路控制器,这种电路较为简单,其中控制芯片的代表是摩托罗拉的MC33035,这个不是这里的主题,所以也不作深入介绍。
第二阶段是以MCU为主的控制芯片。
这是这篇文章介绍的重点,在MCR 版本的设计中,揉和了模拟、数字、大功率MOSFET驱动等等许多重要应用,结合MCU智能化控制,是一个非常有启迪性的设计。
今以应用最广泛的以PIC16F72为智能控制中心,350W的整机电路为例,整机电路如图1:图1:350W整机电路图整机电路看起来很复杂,我们将其简化成框图再看看:图2:电路框图电路大体上可以分成五部分:一、电源稳压,供应部分;二、信号输入与预处理部分;三、智能信号处理,控制部分;四、驱动控制信号预处理部分;五、功率驱动开关部分。
下面我们先来看看此电路最核心的部分:PIC16F72组成的单片机智能处理、控制部分,因为其他电路都是为其服务或被其控制,弄清楚这部分,其它电路就比较容易明白。
图3:PIC16F72在控制器中的各引脚应用图我们先来简单介绍一下PIC16F72的外部资源:该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第13脚是CCP1输出口,可输出最大分辨率达10BIT的可调PWM信号,另有AN0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
内部软件资源我们在软件部分讲解,这里并不需要很关心。
PIC16F72单片机引脚功能介绍
PIC16F72单片机引脚功能介绍PIC16F72该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第13脚是CCP1输出口,可输出最大分辨率达10BIT的可调PWM信号,另有AN0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
各引脚应用如下:1:MCLR复位/烧写高压输入两用口2:模拟量输入口:放大后的电流信号输入口,单片机将此信号进行A-D转换后经过运算来控制PWM的输出,使电流不致过大而烧毁功率管。
正常运转时电压应在0-1.5V左右3:模拟量输入口:电源电压经分压后的输入口,单片机将此信号进行A-D转换后判断电池电压是否过低,如果低则切断输出以保护电池,避免电池因过放电而损坏。
正常时电压应在3V 以上4:模拟量输入口:线性霍尔组成的手柄调速电压输入口,单片机根据此电压高低来控制输出给电机的总功率,从而达到调整速度的目的。
5:模拟/数字量输入口:刹车信号电压输入口。
可以使用AD转换器判断,或根据电平高低判断,平时该脚为高电平,当有刹车信号输入时,该脚变成低电平,单片机收到该信号后切断给电机的供电,以减少不必要的损耗。
6:数字量输入口:1+1助力脉冲信号输入口,当骑行者踏动踏板使车前行时,该口会收到齿轮传感器发出的脉冲信号,该信号被单片机接收到后会给电机输出一定功率以帮助骑行者更轻松地往前走。
7:模拟/数字量输入口:由于电机的位置传感器排列方法不同,该口的电平高低决定适合于哪种电机,目前市场上常见的有所谓120°和60°排列的电机。
有的控制器还可以根据该口的电压高低来控制起动时电流的大小,以适合不同的力度需求。
8:单片机电源地。
9:单片机外接振荡器输入脚。
10:单片机外接振荡器反馈输出脚。
11:数字输入口:功能开关112:数字输入口:功能开关213:数字输出口:PWM调制信号输出脚,速度或电流由其输出的脉冲占空比宽度控制。
PIC16F684各个引脚介绍及意义
PIC16F684各个引脚介绍及意义1、VCC:C=circuit 表示电路的意思, 即接入电路的电压;VDD:D=device 表示器件的意思, 即器件内部的工作电压;VSS:S=series 表示公共连接的意思,通常指电路公共接地端电压;VEE:E=electron 通常指负电压供电;VDDH:H=high 表示高压,即高压供电端;VPP:编程/擦除电压,片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
2、RA(0~5):具有可编程上拉和电平变化的PORTA I/O口,A口;T1CKI:Timer1时钟;OSC(1~2):晶振/谐振器;CLKIN:外部市政输入、RC振荡器连接。
3、AN(0~7):A/D通道输入;T1G:Timer1门控;CLKOUT:输出。
4、MCLR:带有内部上拉的主复位;VPP:编程电压。
5、RC(0~5) :具有可编程上拉和电平变化的PORTC I/O口,C口;CCP1:捕捉输入、比较输出;P1A:PWM输出。
6、C2OUT:比较器2输出;P1B:PWM输出。
7、P1C:PWM输出。
8、P1D:PWM输出。
9、C2IN-:比较器2输入。
10、C2IN+:比较器2输入。
11、T0CKI:Timer0时钟输入;INT:外部中断;C1OUT:比较器1输出。
12、C1IN-:比较器1输入;Vref:A/D外部参考电压;ICSPCLK:串行编程时钟。
13、ICSPDAT:串行编程数据I/O;ULPWU:超低功耗唤醒输入。
14、VCC:C=circuit 表示电路的意思, 即接入电路的电压;VDD:D=device 表示器件的意思, 即器件内部的工作电压;VSS:S=series 表示公共连接的意思,通常指电路公共接地端电压;VEE:E=electron 通常指负电压供电;VDDH:H=high 表示高压,即高压供电端;VPP:编程/擦除电压,片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PIC16F72该单片机有28个引脚,去掉电源、复位、振荡器等,共有22个可复用的IO口,其中第0-AN4共5路AD模数转换输入口,可提供检测外部电路的电压,一个外部中断输入脚,可处理突发事件。
18:数字输出口:该口控制一个LED指示灯,大部分厂商都将该指示灯用作故障情况显示,当控制器有重大故障时该指示灯闪烁不同的次数表示不同的故障类型以方便生产、维修。
19:单片机电源地。
20:单片机电源正。上限是5.5V。
21:数字输入口:外部中断输入,当电流由于意外原因突然增大而不在控制范围时,该口有低电平脉冲输入。单片机收到此信号时产生中断,关闭电机的输出,从而保护重要器件不致损坏或故障不再扩大。
6:数字量输入口:1+1助力脉冲信号输入口,当骑行者踏动踏板使车前行时,该口会收到齿轮传感器发出的脉冲信号,该信号被单片机接收到后会给电机输出一定功率以帮助骑行者更轻松地往前走。
7:模拟/数字量输入口:由于电机的位置传感器排列方法不同,该口的电平高低决定适合于哪种电机,目前市场上常见的有所谓120?和60?排列的电机。有的控制器还可以根据该口的电压高低来控制起动时电流的大小,以适合不同的力度需求。
4:模拟量输入口:线性霍尔组成的手柄调速电压输入口,单片机根据此电压高低来控制输出给电机的总功率,从而达到调整速度的目的。
5:模拟/数字量输入口:刹车信号电压输入口。可以使用AD转换器判断,或根据电平高低判断,平时该脚为高电平,当有刹车信号输入时,该脚变成低电平,单片机收到该信号后切断给电机的供电,以减少不必要的损耗。
8:单片机电源地。
9:单片机外接振荡器输入脚。
10:单片机外接振荡器反馈输出脚。
11:数字输入口:功能开关1
12:数字输入口:功能开关2
13:数字输出口:PWM调制信号输出脚,速度或电流由其输出的脉冲占空比宽度控制。
14:数字输入口:功能开关3
15、16、17:数字输入口:电机转子位置传感器信号输入口,单片机根据其信号变化决定让电机的相应绕组通电,从而使电机始终向需要的方向转动。这个信号上面讲过有120?和60?之分,这个角度实际上是这三个信号的电相位之差,120?就是和三相电一样,每个相位和前面的相位角相差120?。60?就是相差60?。
各引脚应用如下:
1:MCLR复位/烧写高压输入两用口
2:模拟量输入口:放大后的电流信号输入口,单片机将此信号进行A-D转换后经过运算来控制PWM的输出,使电流不致过大而烧毁功率管。正常运转时电压应在0-1.5V左右
3:模拟量输入口:电源电压经分压后的输入口,单片机将此信号进行A-D转换后判断电池电压是否过低,如果低则切断输出以保护电池,避免电池因过放电而损坏。正常时电压应在3V以上
22:数字输出口:同步续流控制端,当电流比较大时,该口输出低电平,控制其后逻辑电路,使同步续流功能开启。该功能在后面详细讲解。
3--28:数字输出口:是功率管的逻辑开关,单片机根据电机转子位置传感器的信号,由这里输出三相交流信号控制功率MOSFET开关的导通和关闭,使电机正常运转。