source: ctrl/firmware/Main/CubeMX/NetXDuo/App/app_netxduo.c@ 69

Last change on this file since 69 was 69, checked in by Zed, 11 months ago

NetX can be compiled and initialized.

File size: 3.1 KB
Line 
1/* USER CODE BEGIN Header */
2/**
3 ******************************************************************************
4 * @file app_netxduo.c
5 * @author MCD Application Team
6 * @brief NetXDuo applicative file
7 ******************************************************************************
8 * @attention
9 *
10 * Copyright (c) 2020-2021 STMicroelectronics.
11 * All rights reserved.
12 *
13 * This software is licensed under terms that can be found in the LICENSE file
14 * in the root directory of this software component.
15 * If no LICENSE file comes with this software, it is provided AS-IS.
16 *
17 ******************************************************************************
18 */
19
20/* USER CODE END Header */
21
22/* Includes ------------------------------------------------------------------*/
23#include "app_netxduo.h"
24
25/* Private includes ----------------------------------------------------------*/
26/* USER CODE BEGIN Includes */
27
28/* USER CODE END Includes */
29
30/* Private typedef -----------------------------------------------------------*/
31/* USER CODE BEGIN PTD */
32
33/* USER CODE END PTD */
34
35/* Private define ------------------------------------------------------------*/
36/* USER CODE BEGIN PD */
37
38#define IP_HELPER_THREAD_STACK_SIZE (512U)
39#define NX_PACKET_POOL_SIZE (1024U)
40
41/* USER CODE END PD */
42
43/* Private macro -------------------------------------------------------------*/
44/* USER CODE BEGIN PM */
45
46/* USER CODE END PM */
47
48/* Private variables ---------------------------------------------------------*/
49/* USER CODE BEGIN PV */
50
51NX_IP ip;
52static CHAR ipName[] = "Eth";
53static CHAR ip_helper_thread_stack[IP_HELPER_THREAD_STACK_SIZE] __attribute__((section(".DTCM_RAM")));
54static CHAR nx_packet_pool_memory[NX_PACKET_POOL_SIZE] __attribute__((section(".DTCM_RAM"), aligned(4)));
55static NX_PACKET_POOL pool;
56
57/* USER CODE END PV */
58
59/* Private function prototypes -----------------------------------------------*/
60/* USER CODE BEGIN PFP */
61
62VOID ip_network_driver(NX_IP_DRIVER *ipDrv);
63
64/* USER CODE END PFP */
65
66/**
67 * @brief Application NetXDuo Initialization.
68 * @param memory_ptr: memory pointer
69 * @retval int
70 */
71UINT MX_NetXDuo_Init(VOID *memory_ptr)
72{
73 UINT ret = NX_SUCCESS;
74
75 TX_BYTE_POOL *byte_pool = (TX_BYTE_POOL*)memory_ptr;
76
77 /* USER CODE BEGIN MX_NetXDuo_MEM_POOL */
78 (void)byte_pool;
79 /* USER CODE END MX_NetXDuo_MEM_POOL */
80
81 /* USER CODE BEGIN 0 */
82
83 nx_system_initialize();
84
85 UINT r = nx_packet_pool_create(&pool, "NX packet pool", 512, nx_packet_pool_memory, NX_PACKET_POOL_SIZE);
86 //printf("Result = %u\n", r);
87
88 r = nx_ip_create(&ip, ipName, IP_ADDRESS(192, 168, 1, 177), 0xFFFFFFFF, &pool, ip_network_driver, ip_helper_thread_stack, IP_HELPER_THREAD_STACK_SIZE, 1);
89 //printf("Result = %u\n", r);
90
91 /* USER CODE END 0 */
92
93 /* USER CODE BEGIN MX_NetXDuo_Init */
94
95 /* USER CODE END MX_NetXDuo_Init */
96
97 return ret;
98}
99
100/* USER CODE BEGIN 1 */
101
102VOID ip_network_driver(NX_IP_DRIVER *ipDrv)
103{
104 printf("Network Driver is working!\n");
105}
106
107/* USER CODE END 1 */
Note: See TracBrowser for help on using the repository browser.