Commit 4e57820f authored by 陈家乐's avatar 陈家乐

feat:完事儿

parent 7f310018
......@@ -4,7 +4,7 @@
/*-------------------------------------------------------------------------
* Function Name : Api_CAN_Init
* Description : CAN初始化
* Description : CAN��ʼ��
* Input : None
* Output : None
* Return : None
......@@ -13,12 +13,12 @@
void Api_CAN_Init(void)
{
INT16U b = null;
CANCTL0_INITRQ = Enable; //准备初始化
CANCTL0_INITRQ = Enable; //׼����ʼ��
while(!CANCTL1_INITAK); //等待进入初始化模式
while(!CANCTL1_INITAK); //�ȴ������ʼ��ģʽ
CANCTL1 = CANCTL1_CANE_MASK | CANCTL1_BORM_MASK;
CANCTL1_WUPM = Disable; //所有显性唤醒
CANCTL1_WUPM = Disable; //�������Ի���
/*
SYNC_SEG + (PROP_SEG + PHASE_SEG1) + (PHASE_SEG2)
1 Tq 4--16 Tq 2--8 Tq
......@@ -26,13 +26,13 @@ void Api_CAN_Init(void)
CANBTR1_TSEG_10 = Seg1_5Tq; //351page 75% 75<= sp<=83
CANBTR1_TSEG_20 = Seg2_2Tq;
CANBTR0_SJW = SJW_1Tq; //重新同步
CANBTR0_SJW = SJW_1Tq; //����ͬ��
CANBTR1_SAMP = SAMP_1;
CANBTR0_BRP = 0x01; //0 500K 1 250K
CANBTR0_BRP = 0x00; //0 500K 1 250K
CANIDAC_IDAM = IDAM_2_32Bit;
CANIDAC_IDHIT = IDHIT0; //滤波器 0 有
CANIDAC_IDHIT = IDHIT0; //�˲��� 0 ��Ч
CANIDAR0 = null; //
CANIDAR1 = null;
......@@ -53,22 +53,22 @@ void Api_CAN_Init(void)
CANIDMR7 = 0xFF;
//
CANTIER = null;
CANCTL0_INITRQ = Disable; //完成初始化
while(CANCTL1_INITAK); //等待确认
CANCTL0_INITRQ = Disable; //��ɳ�ʼ��
while(CANCTL1_INITAK); //�ȴ�ȷ��
CANRFLG_RXF = ClearFlag;
CANRIER_RXFIE = Enable; //使能接收中断
CANTIER_TXEIE = Disable; //禁止发送中断
CANRIER_RXFIE = Enable; //ʹ�ܽ����ж�
CANTIER_TXEIE = Disable; //��ֹ�����ж�
CANCTL0_TIME = Enable; //使能时间戳
CANCTL0_CSWAI = WaitRun; //等待模式下可以运行
CANCTL0_TIME = Enable; //ʹ��ʱ���
CANCTL0_CSWAI = WaitRun; //�ȴ�ģʽ�¿�������
CANCTL0_WUPE = Enable;
}
/*-------------------------------------------------------------------------
* Function Name : GET_STAND_ID
* Description : 提取标准ID
* Input : IDR0_Add -> 对应的IDR0的地
* Description : ��ȡ��׼ID
* Input : IDR0_Add -> ��Ӧ��IDR0�ĵ�ַ
* Output : None
* Return : dwPGN
* onther :
......@@ -178,8 +178,8 @@ INT8U Api_CANSendFrame(CAN_message * CanMessage)
/*-------------------------------------------------------------------------
* Function Name : Api_CAN_Rev_isr
* Description : 提取标准ID
* Input : IDR0_Add -> 对应的IDR0的地
* Description : ��ȡ��׼ID
* Input : IDR0_Add -> ��Ӧ��IDR0�ĵ�ַ
* Output : None
* Return : dwPGN
* onther :
......@@ -194,7 +194,7 @@ interrupt void Api_CAN_Rev_isr(void)
switch(stand_id)
{
case 0x18DAF917: //车速
case 0x18DAF917: //����
if(m_dlc == 8)
{
......
......@@ -499,7 +499,7 @@ interrupt void Api_RTC_isr(void)
Key.CAN_Step++;
if(Key.CAN_Step > 10)
{
Key.CAN_Step = 1;
Key.CAN_Step = 0;
}
}
}
......
......@@ -178,35 +178,35 @@ void App_Can_Proc(void)
if(GetCtrlTime(CANMsgSend_10ms) >= 10){
// ClearCtrlTime(CANMsgSend_10ms);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_101);
// Clear_CAN_Msg((CAN_message *)&CanMsg_101);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_101);
Clear_CAN_Msg((CAN_message *)&CanMsg_101);
//
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_111);
// Clear_CAN_Msg((CAN_message *)&CanMsg_111);
//
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_37B);
// Clear_CAN_Msg((CAN_message *)&CanMsg_37B);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_37B);
Clear_CAN_Msg((CAN_message *)&CanMsg_37B);
//
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_12B);
// Clear_CAN_Msg((CAN_message *)&CanMsg_12B);
//
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_402);
// Clear_CAN_Msg((CAN_message *)&CanMsg_402);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_18202922);
Clear_CAN_Msg((CAN_message *)&CanMsg_18202922);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_125);
Clear_CAN_Msg((CAN_message *)&CanMsg_125);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_157);
Clear_CAN_Msg((CAN_message *)&CanMsg_157);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_SOC);
Clear_CAN_Msg((CAN_message *)&CanMsg_SOC);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_SOC1);
Clear_CAN_Msg((CAN_message *)&CanMsg_SOC1);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_SOC2);
Clear_CAN_Msg((CAN_message *)&CanMsg_SOC2);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_38E);
Clear_CAN_Msg((CAN_message *)&CanMsg_38E);
bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_402);
Clear_CAN_Msg((CAN_message *)&CanMsg_402);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_18202922);
// Clear_CAN_Msg((CAN_message *)&CanMsg_18202922);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_125);
// Clear_CAN_Msg((CAN_message *)&CanMsg_125);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_157);
// Clear_CAN_Msg((CAN_message *)&CanMsg_157);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_SOC);
// Clear_CAN_Msg((CAN_message *)&CanMsg_SOC);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_SOC1);
// Clear_CAN_Msg((CAN_message *)&CanMsg_SOC1);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_SOC2);
// Clear_CAN_Msg((CAN_message *)&CanMsg_SOC2);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMsg_38E);
// Clear_CAN_Msg((CAN_message *)&CanMsg_38E);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMessageID18FEDCD5);
//bReturn = Api_CANSendFrame((CAN_message *)&CanMessageID18FEDED5);
......@@ -271,25 +271,25 @@ void App_Can_Proc(void)
//CurValueStr[ENUM_VSpeed ].val = 0;
CurValueStr[ENUM_RSpeed ].val = 0;
CurValueStr[ENUM_WaterTemp ].val = 0;
CurValueStr[TCS_Warning_Lamp ].val = 0;
CurValueStr[TCS_Work_Mode ].val = 0;
CurValueStr[ISG_Power ].val = 0;
CurValueStr[ISG_Power_Enable ].val = 0;
CurValueStr[ECU_Warning_Lamp ].val = 0;
CurValueStr[MMCU_PowerMode ].val = 0;
//CurValueStr[ENUM_RSpeed ].val = 0;
//CurValueStr[ENUM_WaterTemp ].val = 0;
//CurValueStr[TCS_Warning_Lamp ].val = 0;
//CurValueStr[TCS_Work_Mode ].val = 0;
//CurValueStr[ISG_Power ].val = 0;
//CurValueStr[ISG_Power_Enable ].val = 0;
//CurValueStr[ECU_Warning_Lamp ].val = 0;
//CurValueStr[MMCU_PowerMode ].val = 0;
//
//
CurValueStr[ENUM_VSpeed ].fval = Value_Plus;
CurValueStr[ENUM_RSpeed ].fval = Value_Plus;
CurValueStr[ENUM_WaterTemp ].fval = Value_Plus;
CurValueStr[TCS_Warning_Lamp ].fval = Value_Plus;
CurValueStr[TCS_Work_Mode ].fval = Value_Plus;
CurValueStr[ISG_Power ].fval = Value_Plus;
CurValueStr[ISG_Power_Enable ].fval = Value_Plus;
CurValueStr[ECU_Warning_Lamp ].fval = 1;
CurValueStr[MMCU_PowerMode ].fval = 1;
//CurValueStr[ENUM_WaterTemp ].fval = Value_Plus;
//CurValueStr[TCS_Warning_Lamp ].fval = Value_Plus;
//CurValueStr[TCS_Work_Mode ].fval = Value_Plus;
//CurValueStr[ISG_Power ].fval = Value_Plus;
//CurValueStr[ISG_Power_Enable ].fval = Value_Plus;
//CurValueStr[ECU_Warning_Lamp ].fval = 1;
//CurValueStr[MMCU_PowerMode ].fval = 1;
......
This diff is collapsed.
......@@ -39,6 +39,13 @@ typedef struct{
enum
{
ENUM_VSpeed = 0,//����
ENUM_RSpeed,
ECU_Warning_Lamp,
TCS_Warning_Lamp,
CAN_List_Num ,
#if 0
ENUM_VSpeed = 0,//����
ENUM_RSpeed ,//�??�??
ENUM_WaterTemp ,// 温度
......@@ -70,12 +77,19 @@ enum
BMCU_Moto1_Locked_RotorFault,
CAN_List_Num ,
#endif
};
EXTERN_APP_TEST volatile s_CurValue CurValueStr[CAN_List_Num];
static const s_CAN_List CAN_List[] =
{
{&CanMsg_101, 2, 0, 8, 0, Offset_Plus, 1, 1, &CurValueStr[ENUM_VSpeed ], Motorola},
{&CanMsg_101, 1, 0, 16, 0, Offset_Plus, 100, 25, &CurValueStr[ENUM_RSpeed ], Motorola},
{&CanMsg_402, 7, 7, 1, 0, Offset_Plus, 1, 1, &CurValueStr[ECU_Warning_Lamp ], Motorola},
{&CanMsg_37B, 3, 2, 1, 0, Offset_Plus, 1, 1, &CurValueStr[TCS_Warning_Lamp ], Motorola}
#if 0
{&CanMsg_101, 2, 0, 8, 0, Offset_Plus, 1, 1, &CurValueStr[ENUM_VSpeed ], Motorola},
{&CanMsg_101, 1, 0, 16, 0, Offset_Plus, 100, 25, &CurValueStr[ENUM_RSpeed ], Motorola},
{&CanMsg_101, 5, 0, 16, 273, Offset_Minus, 10, 1, &CurValueStr[ENUM_WaterTemp ], Motorola},
......@@ -109,7 +123,7 @@ static const s_CAN_List CAN_List[] =
{&CanMsg_SOC, 4, 0, 8, 0, Offset_Plus, 1, 1, &CurValueStr[MBMS_StatSoc ], Motorola},
{&CanMsg_38E, 1, 0, 1, 0, Offset_Plus, 1, 1, &CurValueStr[BMCU_Moto1_Locked_RotorFault ], Motorola},
#endif
};
......
......@@ -10,7 +10,7 @@ Target=USBDM
Layout=C_layout.hwl
LoadDialogOptions=AUTOERASEANDFLASH RUNANDSTOPAFTERLOAD="main"
CPU=HC12
MainFrame=0,1,-1,-1,-1,-1,1368,-956,2520,-291
MainFrame=0,1,-1,-1,-1,-1,-634,-383,518,282
TOOLBAR=57600 57601 32795 0 57635 57634 57637 0 57671 57669 0 32777 32776 32782 32780 32781 32778 0 32806
AEFWarningDialog=FALSE
......@@ -45,7 +45,7 @@ NV_AUTO_ID=1
[USBDM]
COMSETTINGS=SETCOMM DRIVER NOPROTOCOL NOPERIODICAL
NV_PARAMETER_FILE=C:\Program Files (x86)\Freescale\CWS12v5.1\prog\FPP\mcu02F2.fpp
NV_PARAMETER_FILE=
NV_SAVE_WSP=0
NV_AUTO_ID=1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment