📄 e_bike_w79e83x.h
字号:
/*******************************************************************************
* Application: Demo code for E_Bike in W79E83X
* Edition: Version:1.0
* Company: Winbond Electronics(Shanghai),Ltd.
* Author: NM01 team
* Contact: Tel:021-62365999转1854 Mobil:13762016364
* Time: March 2007
*******************************************************************************/
/******************************************************************************/
#ifndef __E_BIKE_W79E83X_H_
#define __E_BIKE_W79E83X_H_
/******************************************************************************/
/******************************************************************************/
//#define CURRENT_MAX 0xFFFF
//#define SPEED_MIN 0x0300
//#define SPEED_MAX 0x0C00
#define VOLTAG_MAX 0xAFF
/* PIN assigment table */
#define Braker P02;
#define EABS P25;
#define Senser P06;
//===MOS管控制上桥臂===//
#define UT P00
#define VT P17
#define WT P16
//===MOS管控制下桥臂===//
#define UB P22
#define VB P23
#define WB P24
//=============================================================================
unsigned char idata Current_Buffer[32]; // 电流ADC采样缓存
unsigned char idata Speed_Buffer[20]; // 转把电压ADC采样缓存
unsigned char idata Voltage_Buffer[16]; // 电压ADC采样缓存
unsigned int idata Current_SUM; // 电流ADC采样值
unsigned int idata Speed_SUM; // 转把电压ADC采样值
unsigned int idata Voltage_SUM; // 电压ADC采样值
unsigned char Current_P;
unsigned char Speed_P;
unsigned char Voltage_P;
//=============================================================================
unsigned char Count_Current;
unsigned char Count_Speed;
unsigned char Count_Voltage;
bit Speed_REQ,Current_REQ,Voltage_REQ;
bit ADC_Ready;
//=============================================================================
//===霍尔信号===//
unsigned char H_State,Old_State;
unsigned char State1,State2;
unsigned char H1,H2,H3;
//=============================================================================
//===PWM设定===//
bit PWM_Duty_min;
unsigned int idata PWM_Duty,Speed_Low;
unsigned char PWM_Duty_H,PWM_Duty_L;
unsigned int PWM_Duty_Max;
//=============================================================================
//===巡航定速功能变量===//
unsigned int KS_TempData;
unsigned char KS_Count;
unsigned char KS_Time;
unsigned char KS_LowSpeed;
unsigned int KS_PWM_Duty;
unsigned int KS_CNT;
bit KS_EN;
bit KeepSpeed_Flag,KS_Point;
bit KS_Z1,KS_Z2;
//=============================================================================
//===电流控制===//
unsigned char CurrentOver_Count; //过流中断
unsigned int Current_Max; // 电流限制最大值
//=============================================================================
//===助力功能变量===//
unsigned char AH_CNTL,AH_CNTH,AH_CT;
unsigned char AH_KT;
unsigned int AH_Duty;
unsigned char AH_Time;
unsigned char AH_Count;
bit AutoHelp_Flag,SenBak,AH_EN;
//=============================================================================
//===欠压保护功能变量===//
unsigned char Voltage_Count;
unsigned int Voltage_Min;
bit Power_Off;
//=============================================================================
//===电子刹车,滑行充电===//
bit EABS_SlipEN,EABS_BrakeEN;
bit EABS_Flag;
//=============================================================================
//===堵转保护===//
unsigned char Block_CNT;
bit Block_Flag;
//=============================================================================
//===速度限制===//
unsigned int Motor_Speed;
unsigned char Speed_Grade,SP_Lim;
//=============================================================================
void Init(void); /*初始化函数*/
void Init_IO(void); /*初始化端口*/
//=============================================================================
void H_Sample(void); /*霍尔信号采样*/
void Phase_Change(void); /*相位变换*/
void PWM_ADJ(void); /*PWM调整*/
void Phase_Detect(void); /*相位检测*/
//=============================================================================
void Current_Lim(unsigned int CM); /*过流上限设定*/
void Volt_Low(void); /*欠压保护功能*/
void LowVoltage_Lim(unsigned int CM); /*欠压最小值设定*/
void Block_Detect(void); /*堵转保护*/
//=============================================================================
void Keep_Speed(void); /*巡航定速功能*/
void KS_Finish(void); /*退出巡航定速状态*/
void AutoHelp(void); /*自助力功能*/
void Brake_Setting(void); /*刹车*/
void Slip_Setting(void); /*滑行*/
//=============================================================================
/*巡航定速参数设定*/
void Keep_SpeedEN(bit K_EN,unsigned char K_Time,unsigned char K_LowSpeed);
/*自助力参数设定*/
void AutoHelpEN(bit A_EN,unsigned int A_Duty,unsigned char A_Time);
/*速度上限软件设定*/
void Speed_LimSW(unsigned char SG);
/*速度上限硬件设定*/
void Speed_LimHW(bit SG1,bit SG2,bit SG3,bit SG4);
/*EABS允许功能*/
void EABS_Set(bit EBS_EN,bit EBB_EN);
//=============================================================================
void PWM_Setting(void); /*PWM更新*/
/******************************************************************************/
#endif
/******************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -