/*
FreeRTOS V9.0.0 - Copyright (C) 2016 Real Time Engineers Ltd.
All rights reserved
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
This file is part of the FreeRTOS distribution.
FreeRTOS is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License (version 2) as published by the
Free Software Foundation >>>> AND MODIFIED BY <<<< the FreeRTOS exception.
***************************************************************************
>>! NOTE: The modification to the GPL is included to allow you to !<<
>>! distribute a combined work that includes FreeRTOS without being !<<
>>! obliged to provide the source code for proprietary components !<<
>>! outside of the FreeRTOS kernel. !<<
***************************************************************************
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. Full license text is available on the following
link: http://www.freertos.org/a00114.html
***************************************************************************
* *
* FreeRTOS provides completely free yet professionally developed, *
* robust, strictly quality controlled, supported, and cross *
* platform software that is more than just the market leader, it *
* is the industry's de facto standard. *
* *
* Help yourself get started quickly while simultaneously helping *
* to support the FreeRTOS project by purchasing a FreeRTOS *
* tutorial book, reference manual, or both: *
* http://www.FreeRTOS.org/Documentation *
* *
***************************************************************************
http://www.FreeRTOS.org/FAQHelp.html - Having a problem? Start by reading
the FAQ page "My application does not run, what could be wrong?". Have you
defined configASSERT()?
http://www.FreeRTOS.org/support - In return for receiving this top quality
embedded software for free we request you assist our global community by
participating in the support forum.
http://www.FreeRTOS.org/training - Investing in training allows your team to
be as productive as possible as early as possible. Now you can receive
FreeRTOS training directly from Richard Barry, CEO of Real Time Engineers
Ltd, and the world's leading authority on the world's leading RTOS.
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
including FreeRTOS+Trace - an indispensable productivity tool, a DOS
compatible FAT file system, and our tiny thread aware UDP/IP stack.
http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate.
Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS.
http://www.OpenRTOS.com - Real Time Engineers ltd. license FreeRTOS to High
Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS
licenses offer ticketed support, indemnification and commercial middleware.
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
engineered and independently SIL3 certified version for use in safety and
mission critical applications that require provable dependability.
1 tab == 4 spaces!
*/
/* Standard includes. */
#include <stdlib.h>
#include <string.h>
/* Defining MPU_WRAPPERS_INCLUDED_FROM_API_FILE prevents task.h from redefining
all the API functions to use the MPU wrappers. That should only be done when
task.h is included from an application file. */
#define MPU_WRAPPERS_INCLUDED_FROM_API_FILE
/* FreeRTOS includes. */
#include "FreeRTOS.h"
#include "task.h"
#include "timers.h"
#include "StackMacros.h"
/* Lint e961 and e750 are suppressed as a MISRA exception justified because the
MPU ports require MPU_WRAPPERS_INCLUDED_FROM_API_FILE to be defined for the
header files above, but not in this file, in order to generate the correct
privileged Vs unprivileged linkage and placement. */
#undef MPU_WRAPPERS_INCLUDED_FROM_API_FILE /*lint !e961 !e750. */
/* Set configUSE_STATS_FORMATTING_FUNCTIONS to 2 to include the stats formatting
functions but without including stdio.h here. */
#if ( configUSE_STATS_FORMATTING_FUNCTIONS == 1 )
/* At the bottom of this file are two optional functions that can be used
to generate human readable text from the raw data generated by the
uxTaskGetSystemState() function. Note the formatting functions are provided
for convenience only, and are NOT considered part of the kernel. */
#include <stdio.h>
#endif /* configUSE_STATS_FORMATTING_FUNCTIONS == 1 ) */
#if( configUSE_PREEMPTION == 0 )
/* If the cooperative scheduler is being used then a yield should not be
performed just because a higher priority task has been woken. */
#define taskYIELD_IF_USING_PREEMPTION()
#else
#define taskYIELD_IF_USING_PREEMPTION() portYIELD_WITHIN_API()
#endif
/* Values that can be assigned to the ucNotifyState member of the TCB. */
#define taskNOT_WAITING_NOTIFICATION ( ( uint8_t ) 0 )
#define taskWAITING_NOTIFICATION ( ( uint8_t ) 1 )
#define taskNOTIFICATION_RECEIVED ( ( uint8_t ) 2 )
/*
* The value used to fill the stack of a task when the task is created. This
* is used purely for checking the high water mark for tasks.
*/
#define tskSTACK_FILL_BYTE ( 0xa5U )
/* Sometimes the FreeRTOSConfig.h settings only allow a task to be created using
dynamically allocated RAM, in which case when any task is deleted it is known
that both the task's stack and TCB need to be freed. Sometimes the
FreeRTOSConfig.h settings only allow a task to be created using statically
allocated RAM, in which case when any task is deleted it is known that neither
the task's stack or TCB should be freed. Sometimes the FreeRTOSConfig.h
settings allow a task to be created using either statically or dynamically
allocated RAM, in which case a member of the TCB is used to record whether the
stack and/or TCB were allocated statically or dynamically, so when a task is
deleted the RAM that was allocated dynamically is freed again and no attempt is
made to free the RAM that was allocated statically.
tskSTATIC_AND_DYNAMIC_ALLOCATION_POSSIBLE is only true if it is possible for a
task to be created using either statically or dynamically allocated RAM. Note
that if portUSING_MPU_WRAPPERS is 1 then a protected task can be created with
a statically allocated stack and a dynamically allocated TCB. */
#define tskSTATIC_AND_DYNAMIC_ALLOCATION_POSSIBLE ( ( ( configSUPPORT_STATIC_ALLOCATION == 1 ) && ( configSUPPORT_DYNAMIC_ALLOCATION == 1 ) ) || ( portUSING_MPU_WRAPPERS == 1 ) )
#define tskDYNAMICALLY_ALLOCATED_STACK_AND_TCB ( ( uint8_t ) 0 )
#define tskSTATICALLY_ALLOCATED_STACK_ONLY ( ( uint8_t ) 1 )
#define tskSTATICALLY_ALLOCATED_STACK_AND_TCB ( ( uint8_t ) 2 )
/*
* Macros used by vListTask to indicate which state a task is in.
*/
#define tskBLOCKED_CHAR ( 'B' )
#define tskREADY_CHAR ( 'R' )
#define tskDELETED_CHAR ( 'D' )
#define tskSUSPENDED_CHAR ( 'S' )
/*
* Some kernel aware debuggers require the data the debugger needs access to be
* global, rather than file scope.
*/
#ifdef portREMOVE_STATIC_QUALIFIER
#define static
#endif
#if ( configUSE_PORT_OPTIMISED_TASK_SELECTION == 0 )
/* If configUSE_PORT_OPTIMISED_TASK_SELECTION is 0 then task selection is
performed in a generic way that is not optimised to any particular
microcontroller architecture. */
/* uxTopReadyPriority
没有合适的资源?快使用搜索试试~ 我知道了~
STM32F103ZET6 USB虚拟网卡
共799个文件
h:257个
c:194个
o:99个
需积分: 5 0 下载量 61 浏览量
2024-12-17
10:57:23
上传
评论
收藏 16.01MB RAR 举报
温馨提示
# STM32F103ZET6 USB虚拟网卡实验 #### 介绍 STM32F103ZET6 USB虚拟网卡实验基于野火霸道开发板 #### 软件架构 电脑<---->USB线<------>USB协议<------> | RNDIS协议| LwIP协议栈 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. 使用串口或者是仿真器下载好程序 2. 电脑连接开发板的USB转串口,打开串口调试助手设置波特率为115200 ![输入图片说明](https://images.gitee.com/uploads/images/2021/0422/171338_a5ba5174_7643292.png "企业微信截图_16190820557191.png") ![输入图片说明](https://images.gitee.com/uploads/images/2021/0422/171431_d96417ba_7643292.png "企业微信截图_1619081709440.png") 3. 连接板子的USB Device接口,
资源推荐
资源详情
资源评论
收起资源包目录
STM32F103ZET6 USB虚拟网卡 (799个子文件)
BH-F103.uvguix.Administrator 175KB
Template.axf 993KB
Template_sct.Bak 478B
keilkill.bat 374B
tasks.c 149KB
sockets.c 135KB
stm32f10x_tim.c 104KB
httpd.c 89KB
tcp.c 84KB
nd6.c 83KB
tcp_in.c 81KB
queue.c 79KB
snmp_msg.c 75KB
mdns.c 75KB
tcp_out.c 75KB
dhcp.c 74KB
lcp.c 72KB
api_msg.c 67KB
auth.c 63KB
ipcp.c 62KB
eap.c 61KB
stm32f10x_flash.c 59KB
ip6.c 53KB
dns.c 52KB
netif.c 51KB
stm32f10x_rcc.c 49KB
pbuf.c 49KB
mqtt.c 48KB
smtp.c 47KB
ccp.c 47KB
ppp.c 47KB
stm32f10x_adc.c 45KB
etharp.c 45KB
stm32f10x_i2c.c 43KB
api_lib.c 43KB
udp.c 43KB
stm32f10x_can.c 43KB
snmp_core.c 41KB
ipv6cp.c 41KB
ip4.c 40KB
makefsdata.c 40KB
pppol2tp.c 39KB
timers.c 39KB
altcp_tls_mbedtls.c 37KB
pppoe.c 37KB
stm32f10x_usart.c 36KB
otgd_fs_cal.c 35KB
system_stm32f10x.c 35KB
mem.c 34KB
stm32f10x_fsmc.c 34KB
lwiperf.c 33KB
lowpan6_common.c 33KB
chap_ms.c 32KB
usb_core.c 32KB
port.c 30KB
ip6_frag.c 30KB
ip4_frag.c 30KB
pppos.c 29KB
stm32f10x_spi.c 29KB
lowpan6.c 28KB
http_client.c 28KB
stm32f10x_dma.c 28KB
usb_regs.c 28KB
port.c 28KB
snmp_mib2_ip.c 28KB
stm32f10x_sdio.c 27KB
dhcp6.c 27KB
port.c 27KB
igmp.c 27KB
sntp.c 27KB
port.c 26KB
event_groups.c 25KB
snmp_mib2_tcp.c 22KB
stm32f10x_gpio.c 22KB
otgd_fs_int.c 21KB
port.c 21KB
utils.c 20KB
raw.c 20KB
fsdata.c 20KB
fsm.c 19KB
vj.c 19KB
tcpip.c 19KB
inet_chksum.c 19KB
bridgeif.c 19KB
snmp_asn1.c 19KB
chap-new.c 19KB
mld6.c 18KB
autoip.c 18KB
netbiosns.c 18KB
stm32f10x_dac.c 18KB
heap_5.c 18KB
upap.c 17KB
altcp_proxyconnect.c 17KB
usb_rndis_core.c 17KB
core_cm3.c 16KB
heap_4.c 16KB
des.c 16KB
slipif.c 16KB
init.c 16KB
altcp.c 16KB
共 799 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8
资源评论
zhgc2000
- 粉丝: 38
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功