备份-111
This commit is contained in:
parent
fa561c20b9
commit
429bf9dc68
|
@ -14,6 +14,7 @@
|
|||
"freertos.h": "c",
|
||||
"lan8742.h": "c",
|
||||
"lwip.h": "c",
|
||||
"dhcp.h": "c"
|
||||
"dhcp.h": "c",
|
||||
"limits": "cpp"
|
||||
}
|
||||
}
|
|
@ -63,15 +63,15 @@ extern ETH_HandleTypeDef heth;
|
|||
extern struct tcp_pcb *server_pcb_hart[TCP_MAX];
|
||||
/* USER CODE END FunctionPrototypes */
|
||||
|
||||
void start_lwip_task(void const *argument);
|
||||
void start_dac_task(void const *argument);
|
||||
void start_ch438_task(void const *argument);
|
||||
void start_lwip_task(void const * argument);
|
||||
void start_dac_task(void const * argument);
|
||||
void start_ch438_task(void const * argument);
|
||||
|
||||
extern void MX_LWIP_Init(void);
|
||||
void MX_FREERTOS_Init(void); /* (MISRA C 2004 rule 8.1) */
|
||||
|
||||
/* GetIdleTaskMemory prototype (linked to static allocation support) */
|
||||
void vApplicationGetIdleTaskMemory(StaticTask_t **ppxIdleTaskTCBBuffer, StackType_t **ppxIdleTaskStackBuffer, uint32_t *pulIdleTaskStackSize);
|
||||
void vApplicationGetIdleTaskMemory( StaticTask_t **ppxIdleTaskTCBBuffer, StackType_t **ppxIdleTaskStackBuffer, uint32_t *pulIdleTaskStackSize );
|
||||
|
||||
/* USER CODE BEGIN GET_IDLE_TASK_MEMORY */
|
||||
static StaticTask_t xIdleTaskTCBBuffer;
|
||||
|
@ -87,12 +87,11 @@ void vApplicationGetIdleTaskMemory(StaticTask_t **ppxIdleTaskTCBBuffer, StackTyp
|
|||
/* USER CODE END GET_IDLE_TASK_MEMORY */
|
||||
|
||||
/**
|
||||
* @brief FreeRTOS initialization
|
||||
* @param None
|
||||
* @retval None
|
||||
*/
|
||||
void MX_FREERTOS_Init(void)
|
||||
{
|
||||
* @brief FreeRTOS initialization
|
||||
* @param None
|
||||
* @retval None
|
||||
*/
|
||||
void MX_FREERTOS_Init(void) {
|
||||
/* USER CODE BEGIN Init */
|
||||
|
||||
/* USER CODE END Init */
|
||||
|
@ -129,6 +128,7 @@ void MX_FREERTOS_Init(void)
|
|||
/* USER CODE BEGIN RTOS_THREADS */
|
||||
/* add threads, ... */
|
||||
/* USER CODE END RTOS_THREADS */
|
||||
|
||||
}
|
||||
|
||||
/* USER CODE BEGIN Header_start_lwip_task */
|
||||
|
@ -138,7 +138,7 @@ void MX_FREERTOS_Init(void)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_lwip_task */
|
||||
void start_lwip_task(void const *argument)
|
||||
void start_lwip_task(void const * argument)
|
||||
{
|
||||
/* init code for LWIP */
|
||||
MX_LWIP_Init();
|
||||
|
@ -154,7 +154,7 @@ void start_lwip_task(void const *argument)
|
|||
{
|
||||
if (tcp_echo_flags[tcp_hart_num] == 1)
|
||||
{
|
||||
if (((phyreg >> 2) & 0x1) != 0x1) // PHY_BSR寄存器的<EFBFBD>?2位表示PHY是否连接 PHY_LINKED_STATUS
|
||||
if (((phyreg >> 2) & 0x1) != 0x1) // PHY_BSR寄å˜å™¨çš„ï¿??2ä½<C3A4>表示PHY是å<C2AF>¦è¿žæŽ¥ PHY_LINKED_STATUS
|
||||
{
|
||||
/* When the netif link is down this function must be called */
|
||||
|
||||
|
@ -184,7 +184,7 @@ void start_lwip_task(void const *argument)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_dac_task */
|
||||
void start_dac_task(void const *argument)
|
||||
void start_dac_task(void const * argument)
|
||||
{
|
||||
/* USER CODE BEGIN start_dac_task */
|
||||
/* Infinite loop */
|
||||
|
@ -208,7 +208,7 @@ void start_dac_task(void const *argument)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_ch438_task */
|
||||
void start_ch438_task(void const *argument)
|
||||
void start_ch438_task(void const * argument)
|
||||
{
|
||||
/* USER CODE BEGIN start_ch438_task */
|
||||
/* Infinite loop */
|
||||
|
|
|
@ -65,9 +65,9 @@ void MX_FREERTOS_Init(void);
|
|||
/* USER CODE END 0 */
|
||||
|
||||
/**
|
||||
* @brief The application entry point.
|
||||
* @retval int
|
||||
*/
|
||||
* @brief The application entry point.
|
||||
* @retval int
|
||||
*/
|
||||
int main(void)
|
||||
{
|
||||
/* USER CODE BEGIN 1 */
|
||||
|
@ -99,6 +99,7 @@ int main(void)
|
|||
/* USER CODE BEGIN 2 */
|
||||
hart_ht1200m_reset(); // 初始化HT1200M模块
|
||||
HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_4); // PWM输出,用于驱动HT1200M模块
|
||||
HAL_TIM_Base_Start_IT(&htim3); // <20>臬𢆡TIM3摰𡁏𧒄<F0A1818F>剁<EFBFBD><E58981>其<EFBFBD>憭<EFBFBD><E686AD>CH438銝剜鱏
|
||||
/* USER CODE END 2 */
|
||||
|
||||
/* Call init function for freertos objects (in freertos.c) */
|
||||
|
@ -120,22 +121,22 @@ int main(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief System Clock Configuration
|
||||
* @retval None
|
||||
*/
|
||||
* @brief System Clock Configuration
|
||||
* @retval None
|
||||
*/
|
||||
void SystemClock_Config(void)
|
||||
{
|
||||
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
|
||||
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
|
||||
|
||||
/** Configure the main internal regulator output voltage
|
||||
*/
|
||||
*/
|
||||
__HAL_RCC_PWR_CLK_ENABLE();
|
||||
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
|
||||
|
||||
/** Initializes the RCC Oscillators according to the specified parameters
|
||||
* in the RCC_OscInitTypeDef structure.
|
||||
*/
|
||||
* in the RCC_OscInitTypeDef structure.
|
||||
*/
|
||||
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
|
||||
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
|
||||
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
|
||||
|
@ -150,8 +151,9 @@ void SystemClock_Config(void)
|
|||
}
|
||||
|
||||
/** Initializes the CPU, AHB and APB buses clocks
|
||||
*/
|
||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2;
|
||||
*/
|
||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|
||||
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
|
||||
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
|
||||
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
|
||||
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
|
||||
|
@ -168,32 +170,31 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
|
|||
{
|
||||
if (CH438_1_INT_Pin == GPIO_Pin)
|
||||
{
|
||||
ch438_1_int_flag = 1; // 设置CH438_1的中断标志,用于中断处理函数中判断是否为CH438_1的中断请<EFBFBD>?
|
||||
ch438_1_int_flag = 1; // 霈曄蔭CH438_1<EFBFBD><EFBFBD>葉<EFBFBD>剜<EFBFBD>敹梹<EFBFBD><EFBFBD>其<EFBFBD>銝剜鱏憭<EFBFBD><EFBFBD><EFBFBD>賣㺭銝剖ế<EFBFBD>剜糓<EFBFBD>虫蛹CH438_1<EFBFBD><EFBFBD>葉<EFBFBD>剛窈嚙???
|
||||
// ch438_interrupt_handler_ch438_chip_1();
|
||||
}
|
||||
if (CH438_2_INT_Pin == GPIO_Pin)
|
||||
{
|
||||
ch438_2_int_flag = 1; // 设置CH438_1的中断标志,用于中断处理函数中判断是否为CH438_2的中断请<EFBFBD>?
|
||||
ch438_2_int_flag = 1; // 霈曄蔭CH438_1<EFBFBD><EFBFBD>葉<EFBFBD>剜<EFBFBD>敹梹<EFBFBD><EFBFBD>其<EFBFBD>銝剜鱏憭<EFBFBD><EFBFBD><EFBFBD>賣㺭銝剖ế<EFBFBD>剜糓<EFBFBD>虫蛹CH438_2<EFBFBD><EFBFBD>葉<EFBFBD>剛窈嚙???
|
||||
// ch438_interrupt_handler_ch438_chip_2();
|
||||
}
|
||||
}
|
||||
/* USER CODE END 4 */
|
||||
|
||||
/**
|
||||
* @brief Period elapsed callback in non blocking mode
|
||||
* @note This function is called when TIM4 interrupt took place, inside
|
||||
* HAL_TIM_IRQHandler(). It makes a direct call to HAL_IncTick() to increment
|
||||
* a global variable "uwTick" used as application time base.
|
||||
* @param htim : TIM handle
|
||||
* @retval None
|
||||
*/
|
||||
* @brief Period elapsed callback in non blocking mode
|
||||
* @note This function is called when TIM4 interrupt took place, inside
|
||||
* HAL_TIM_IRQHandler(). It makes a direct call to HAL_IncTick() to increment
|
||||
* a global variable "uwTick" used as application time base.
|
||||
* @param htim : TIM handle
|
||||
* @retval None
|
||||
*/
|
||||
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
|
||||
{
|
||||
/* USER CODE BEGIN Callback 0 */
|
||||
|
||||
/* USER CODE END Callback 0 */
|
||||
if (htim->Instance == TIM4)
|
||||
{
|
||||
if (htim->Instance == TIM4) {
|
||||
HAL_IncTick();
|
||||
}
|
||||
/* USER CODE BEGIN Callback 1 */
|
||||
|
@ -202,30 +203,30 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
|
|||
if (ch438_1_int_flag == 2)
|
||||
{
|
||||
ch438_interrupt_handler_ch438_chip_1();
|
||||
ch438_1_int_flag = 0;
|
||||
}
|
||||
if (ch438_1_int_flag == 1)
|
||||
{
|
||||
ch438_1_int_flag++;
|
||||
ch438_1_int_flag = 0;
|
||||
}
|
||||
|
||||
if (ch438_2_int_flag == 2)
|
||||
{
|
||||
ch438_interrupt_handler_ch438_chip_2();
|
||||
ch438_2_int_flag = 0;
|
||||
}
|
||||
if (ch438_2_int_flag == 1)
|
||||
{
|
||||
ch438_2_int_flag++;
|
||||
ch438_2_int_flag = 0;
|
||||
}
|
||||
}
|
||||
/* USER CODE END Callback 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function is executed in case of error occurrence.
|
||||
* @retval None
|
||||
*/
|
||||
* @brief This function is executed in case of error occurrence.
|
||||
* @retval None
|
||||
*/
|
||||
void Error_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN Error_Handler_Debug */
|
||||
|
@ -237,14 +238,14 @@ void Error_Handler(void)
|
|||
/* USER CODE END Error_Handler_Debug */
|
||||
}
|
||||
|
||||
#ifdef USE_FULL_ASSERT
|
||||
#ifdef USE_FULL_ASSERT
|
||||
/**
|
||||
* @brief Reports the name of the source file and the source line number
|
||||
* where the assert_param error has occurred.
|
||||
* @param file: pointer to the source file name
|
||||
* @param line: assert_param error line source number
|
||||
* @retval None
|
||||
*/
|
||||
* @brief Reports the name of the source file and the source line number
|
||||
* where the assert_param error has occurred.
|
||||
* @param file: pointer to the source file name
|
||||
* @param line: assert_param error line source number
|
||||
* @retval None
|
||||
*/
|
||||
void assert_failed(uint8_t *file, uint32_t line)
|
||||
{
|
||||
/* USER CODE BEGIN 6 */
|
||||
|
|
|
@ -88,9 +88,9 @@ void MX_TIM3_Init(void)
|
|||
htim3.Instance = TIM3;
|
||||
htim3.Init.Prescaler = 54;
|
||||
htim3.Init.CounterMode = TIM_COUNTERMODE_UP;
|
||||
htim3.Init.Period = 1000;
|
||||
htim3.Init.Period = 499;
|
||||
htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
||||
htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
||||
htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE;
|
||||
if (HAL_TIM_Base_Init(&htim3) != HAL_OK)
|
||||
{
|
||||
Error_Handler();
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
|
||||
|
||||
<SchemaVersion>1.0</SchemaVersion>
|
||||
|
@ -45,7 +45,7 @@
|
|||
<PageWidth>79</PageWidth>
|
||||
<PageLength>66</PageLength>
|
||||
<TabStop>8</TabStop>
|
||||
<ListingPath></ListingPath>
|
||||
<ListingPath />
|
||||
</OPTLEX>
|
||||
<ListingPage>
|
||||
<CreateCListing>1</CreateCListing>
|
||||
|
@ -104,16 +104,16 @@
|
|||
<bSchkAxf>0</bSchkAxf>
|
||||
<bTchkAxf>0</bTchkAxf>
|
||||
<nTsel>6</nTsel>
|
||||
<sDll></sDll>
|
||||
<sDllPa></sDllPa>
|
||||
<sDlgDll></sDlgDll>
|
||||
<sDlgPa></sDlgPa>
|
||||
<sIfile></sIfile>
|
||||
<tDll></tDll>
|
||||
<tDllPa></tDllPa>
|
||||
<tDlgDll></tDlgDll>
|
||||
<tDlgPa></tDlgPa>
|
||||
<tIfile></tIfile>
|
||||
<sDll />
|
||||
<sDllPa />
|
||||
<sDlgDll />
|
||||
<sDlgPa />
|
||||
<sIfile />
|
||||
<tDll />
|
||||
<tDllPa />
|
||||
<tDlgDll />
|
||||
<tDlgPa />
|
||||
<tIfile />
|
||||
<pMon>STLink\ST-LINKIII-KEIL_SWO.dll</pMon>
|
||||
</DebugOpt>
|
||||
<TargetDriverDllRegistry>
|
||||
|
@ -130,7 +130,7 @@
|
|||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>ARMDBGFLAGS</Key>
|
||||
<Name></Name>
|
||||
<Name />
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
|
@ -148,7 +148,7 @@
|
|||
<Name>-UB -O2254 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(2BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC800 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407ZGTx$CMSIS\Flash\STM32F4xx_1024.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2</Name>
|
||||
</SetRegEntry>
|
||||
</TargetDriverDllRegistry>
|
||||
<Breakpoint/>
|
||||
<Breakpoint />
|
||||
<WatchWindow1>
|
||||
<Ww>
|
||||
<count>0</count>
|
||||
|
@ -308,19 +308,19 @@
|
|||
<newCpu>0</newCpu>
|
||||
<uProt>0</uProt>
|
||||
</DebugFlag>
|
||||
<LintExecutable></LintExecutable>
|
||||
<LintConfigFile></LintConfigFile>
|
||||
<LintExecutable />
|
||||
<LintConfigFile />
|
||||
<bLintAuto>0</bLintAuto>
|
||||
<bAutoGenD>0</bAutoGenD>
|
||||
<LntExFlags>0</LntExFlags>
|
||||
<pMisraName></pMisraName>
|
||||
<pszMrule></pszMrule>
|
||||
<pSingCmds></pSingCmds>
|
||||
<pMultCmds></pMultCmds>
|
||||
<pMisraNamep></pMisraNamep>
|
||||
<pszMrulep></pszMrulep>
|
||||
<pSingCmdsp></pSingCmdsp>
|
||||
<pMultCmdsp></pMultCmdsp>
|
||||
<pMisraName />
|
||||
<pszMrule />
|
||||
<pSingCmds />
|
||||
<pMultCmds />
|
||||
<pMisraNamep />
|
||||
<pszMrulep />
|
||||
<pSingCmdsp />
|
||||
<pMultCmdsp />
|
||||
<DebugDescription>
|
||||
<Enable>1</Enable>
|
||||
<EnableFlashSeq>0</EnableFlashSeq>
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -532,7 +532,7 @@ ProjectManager.ToolChainLocation=
|
|||
ProjectManager.UAScriptAfterPath=
|
||||
ProjectManager.UAScriptBeforePath=
|
||||
ProjectManager.UnderRoot=false
|
||||
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_LWIP_Init-LWIP-false-HAL-false,4-MX_TIM2_Init-TIM2-false-HAL-true,5-MX_SPI1_Init-SPI1-false-HAL-true,6-MX_FSMC_Init-FSMC-false-HAL-true
|
||||
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_LWIP_Init-LWIP-false-HAL-false,4-MX_TIM2_Init-TIM2-false-HAL-true,5-MX_SPI1_Init-SPI1-false-HAL-true,6-MX_FSMC_Init-FSMC-false-HAL-true,7-MX_TIM3_Init-TIM3-false-HAL-true
|
||||
RCC.48MHZClocksFreq_Value=55296000
|
||||
RCC.AHBFreq_Value=110592000
|
||||
RCC.APB1CLKDivider=RCC_HCLK_DIV4
|
||||
|
@ -632,8 +632,9 @@ TIM2.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4
|
|||
TIM2.IPParameters=Channel-PWM Generation4 CH4,Period,Pulse-PWM Generation4 CH4
|
||||
TIM2.Period=119
|
||||
TIM2.Pulse-PWM\ Generation4\ CH4=60
|
||||
TIM3.IPParameters=Prescaler,Period
|
||||
TIM3.Period=1000
|
||||
TIM3.AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE
|
||||
TIM3.IPParameters=Prescaler,Period,AutoReloadPreload
|
||||
TIM3.Period=499
|
||||
TIM3.Prescaler=54
|
||||
VP_FREERTOS_VS_CMSIS_V1.Mode=CMSIS_V1
|
||||
VP_FREERTOS_VS_CMSIS_V1.Signal=FREERTOS_VS_CMSIS_V1
|
||||
|
|
Loading…
Reference in New Issue