电动车控制程序.doc
- 文档编号:2604587
- 上传时间:2022-11-03
- 格式:DOC
- 页数:4
- 大小:50.50KB
电动车控制程序.doc
《电动车控制程序.doc》由会员分享,可在线阅读,更多相关《电动车控制程序.doc(4页珍藏版)》请在冰豆网上搜索。
程序的功能结构和修改说明
1、包含的功能:
目前Winbond提供的电动车控制器程序已经实现电动自行车的功能,如下:
1)、刹车;
2)、速度调节;
3)、限流保护;
4)、过流中断保护功能;
5)、欠压保护;
6)、1+1助力;
7)、巡航功能;
8)、堵转保护功能;
9)、EABS功能;
10)、最大速度限制选择:
2、程序结构
Winbond提供的电动车控制器程序结构;程序的处理过程;个个功能之间的关系,如下图所示:
转把(ADC1)
刹车
PWM_MAX
定速
助力
M_DUTY
L_Duty
PWMOUT
欠压(ADC2)
限流(ADC0)
飞车保护
电刹车/反充电
超静音启动
无刷马达
霍尔信号
3、程序的修改说明
为了便于修改Winbond将完整的功能的project见附件W79E833E_Bike_projectLib.Zip文件。
为了使修改者能够把精力集中的重要的参数部分,将完整的E-Bike功能封装成库(*.Lib库文件),可以通过调用库文件中的函数来实现E-Bike的控制功能和参数设置功能。
Winbond提供的完整的功能的project的界面比较友好,只有main函数,和Initial_io函数开放,用户可以在main函数的while循环中如下位置任意添加自己的程序
//此处添加自己的程序
//添加自己的程序结束
Init_IO();使设置I/O状态的函数,在该函数中客户可以根据自己的意愿设置I/O的状态(注意:
在修改程序时没有涉及到的I/O,不要改变它的状态;否则后果自负)。
下面的内容包括:
函数的定义和说明,主函数及其说明。
//----------------------函数定义-------------------------//
//***初始化函数***//
voidInit(void);
//***初始化端口函数***//
voidInit_IO(void);
//***霍尔信号采样函数***//
voidH_Sample(void);
//***相位变换函数***//
voidPhase_Change(void);
//***自助力函数***//
voidAutoHelpEN(bitA_EN,unsignedintA_Duty,unsignedcharA_Time);
/*
第一个参数设定助力功能允许与否,1为允许,0为禁止
第二个参数设定助力力量(PWM占空比),数值范围:
0~0x355,数值越大,力量越大
第三个参数设定助力时间,数值越大,时间越长
*/
//***巡航定速函数***//
voidKeep_SpeedEN(bitK_EN,unsignedcharK_Time,unsignedcharK_LowSpeed);
/*
第一个参数设定定速巡航功能允许与否,1为允许,0为禁止
第二个参数设定定速巡航最低速设置
第三个参数设定在巡航点保持多长时间后才进入巡航
*/
//***限流值设定函数***//
voidCurrent_Lim(unsignedintCM);
/*
过流保护上限值设定
0xB00对应限电流最大大约为2.6A
0xB80对应限流值最大大约为3.8A
*/
//***欠压保护设定函数***//
voidLowVoltage_Lim(unsignedintCM);
/*
欠压保护下限值设定
电池电压为47.9V时ADC采样值为0xB6==>0xB60
推算电池电压为41V时的采样值为0x9B==>0x9B0
推算电池电压为40V时的采样值为0x98==>0x980
*/
//***EABS设定函数***//
voidEABS_Set(bitEBS_EN,bitEBB_EN);
/*
第一个参数为滑行充电功能使能,1为允许,0为禁止
第二个参数为电刹车功能使能,1为允许,0为禁止
*/
//***硬件控制最大速度***//
voidSpeed_LimHW(bitSG1,bitSG2,bitSG3,bitSG4);
/*
参数只能有一个为1。
第一个参数对应15km/h
第二个参数对应20km/h
第三个参数对应30km/h
第四个参数对应40km/h
*/
//***软件控制最大速度***//
voidSpeed_LimSW(unsignedcharSG);
/*
参数数值由0x00~0x20,数值越小速度越大,反之则越小
*/
//--------------------函数定义结束--------------------------//
/*****************************************************************************
* 主函数
******************************************************************************/
voidmain(void)
{
//***初始化***//
Init();
//***初始化端口***//
Init_IO();
//***霍尔信号采样***//
H_Sample();
//***相位变换***//
Phase_Change();
//===自助力功能设定===//
AutoHelpEN(1,0x1AA,200);
//===巡航定速功能设定===//
Keep_SpeedEN(1,0x20,6);
//===过流值上限设定===//
Current_Lim(0xB48);
//===欠压最低电压设定===//
LowVoltage_Lim(0x9B0);
//===EABS设定===//
EABS_Set(0,1);
//===硬件设定最大速度===//
Speed_LimHW(0,0,0,1);
//===软件设定最大速度===//
Speed_LimSW(0x01);
while
(1)
{
_nop_();
//此处添加自己的程序
//添加自己的程序结束
}
}
/***************************主函数结束********************************/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电动车 控制程序