fix: 修复以太网控制逻辑,调整硬件版本引脚映射
1. 移除main.h中的软硬件版本宏定义,移至bsp.h 2. 新增ETHStop和ETHReset对外接口并实现对应逻辑 3. 注释掉原有的ETH硬件复位延时流程 4. 根据硬件版本适配ETH和CAT1的引脚控制逻辑 5. 清理冗余的CAT1电源引脚宏定义
This commit is contained in:
@@ -124,6 +124,8 @@ CatOneRetStatus_m CatOneSend(uint8_t *sData, uint16_t sLen);
|
||||
void CatOneStart(void);
|
||||
void CatOneStop(void);
|
||||
void CatOneReset(void);
|
||||
void ETHStop(void);
|
||||
void ETHReset(void);
|
||||
void Cat1DBGOnOff(bool OnOff);
|
||||
void CatOneGetLocationInfo(int *Longitude, int *Latitude);
|
||||
void CatOneGetIMEIAndSIM(char *Imei, char *Sim);
|
||||
|
||||
@@ -10,6 +10,9 @@
|
||||
#include "rtthread.h"
|
||||
#include "ff.h"
|
||||
|
||||
#define SOFTWARE_VERSION 12
|
||||
#define HARDWARE_VERSION 12
|
||||
|
||||
//#define USE_BOOTLOADER
|
||||
|
||||
//#define FLASH_SECTOR_SIZE 0x2000ul
|
||||
@@ -164,8 +167,14 @@
|
||||
|
||||
#define ETH_OR_CAT1_CTRL_PORT (PortB)
|
||||
#define ETH_OR_CAT1_CTRL_PIN (Pin08)
|
||||
|
||||
#if (HARDWARE_VERSION == 12)
|
||||
#define ETH_ON() PORT_SetBits(ETH_OR_CAT1_CTRL_PORT, ETH_OR_CAT1_CTRL_PIN)
|
||||
#define CAT1_ON() PORT_ResetBits(ETH_OR_CAT1_CTRL_PORT, ETH_OR_CAT1_CTRL_PIN)
|
||||
#elif (HARDWARE_VERSION >= 13)
|
||||
#define ETH_ON() PORT_ResetBits(ETH_OR_CAT1_CTRL_PORT, ETH_OR_CAT1_CTRL_PIN)
|
||||
#define CAT1_ON() PORT_SetBits(ETH_OR_CAT1_CTRL_PORT, ETH_OR_CAT1_CTRL_PIN)
|
||||
#endif
|
||||
|
||||
//#define ETH_OR_CAT1_TX_CTRL_PORT (PortH)
|
||||
//#define ETH_OR_CAT1_TX_CTRL_PIN (Pin02)
|
||||
@@ -182,11 +191,6 @@
|
||||
#define CAT1_RESET_CLR() PORT_SetBits(CAT1_RESET_PORT, CAT1_RESET_PIN)
|
||||
#define CAT1_RESET_SET() PORT_ResetBits(CAT1_RESET_PORT, CAT1_RESET_PIN)
|
||||
|
||||
//#define CAT1_POW_PORT (PortA)
|
||||
//#define CAT1_POW_PIN (Pin00)
|
||||
//#define CAT1_POW_ON() PORT_SetBits(CAT1_POW_PORT, CAT1_POW_PIN)
|
||||
//#define CAT1_POW_OFF() PORT_ResetBits(CAT1_POW_PORT, CAT1_POW_PIN)
|
||||
|
||||
#define ETH_RESET_PORT (PortB)
|
||||
#define ETH_RESET_PIN (Pin05)
|
||||
#define ETH_RESET_SET() PORT_SetBits(ETH_RESET_PORT, ETH_RESET_PIN)
|
||||
|
||||
@@ -4,9 +4,6 @@
|
||||
#include "Public.h"
|
||||
#include "DebugCmd.h"
|
||||
|
||||
#define SOFTWARE_VERSION 12
|
||||
#define HARDWARE_VERSION 12
|
||||
|
||||
#define MAC_ADDR_TYPE 0//0为测试服务器
|
||||
|
||||
extern bool MainDispEn;
|
||||
|
||||
@@ -118,6 +118,16 @@ void CatOneStop(void)
|
||||
CatOne.Status = CAT_ONE_OFF;
|
||||
}
|
||||
|
||||
void ETHStop(void)
|
||||
{
|
||||
CatOne.EthStatus = ETH_OFF;
|
||||
}
|
||||
|
||||
void ETHReset(void)
|
||||
{
|
||||
CatOne.EthStatus = ETH_RESET;
|
||||
}
|
||||
|
||||
void CatOneGetLocationInfo(int *Longitude, int *Latitude)
|
||||
{
|
||||
if(CatOne.LBSFlag) {
|
||||
@@ -716,9 +726,9 @@ void EthLoopHandler(void)
|
||||
|
||||
case ETH_OFF:
|
||||
CAT1_DBG_LOG("ETH Power Off!\r\n");
|
||||
ETH_RESET_CLR();
|
||||
rt_thread_delay(3000);
|
||||
ETH_RESET_SET();
|
||||
//ETH_RESET_CLR();
|
||||
//rt_thread_delay(3000);
|
||||
//ETH_RESET_SET();
|
||||
CatOne.EthStatus = ETH_IDEL;
|
||||
CatOne.EthResetDelayCnt = ETH_RESET_DELAY_TIME_MAX;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user