tos

腾讯嵌入式系统tos移植到正点原子阿波罗F429

拜拜、爱过 提交于 2020-01-26 02:58:36
1.前言 STM32CubeMX初始化,点击跳转 cubeMX的初始化配置我就放在上个文章了,这里省略掉. 修改修改一点 2.下载tos源码 点击跳转 3.移植 在项目文件夹下新建 tos 文件夹.并把源码下的 arch , kernel , osal 的三个文件夹复制到 tos 文件夹下面. 3.1添加tos文件 3.2添加头文件目录 3.3 新建TencentOS tiny系统配置文件 tos_config.h # ifndef _TOS_CONFIG_H_ # define _TOS_CONFIG_H_ # include "stm32l0xx.h" // 目标芯片头文件,用户需要根据情况更改 # define TOS_CFG_TASK_PRIO_MAX 10u // 配置TencentOS tiny默认支持的最大优先级数量 # define TOS_CFG_ROUND_ROBIN_EN 0u // 配置TencentOS tiny的内核是否开启时间片轮转 # define TOS_CFG_OBJECT_VERIFY_EN 1u // 配置TencentOS tiny是否校验指针合法 # define TOS_CFG_TASK_DYNAMIC_CREATE_EN 1u // TencentOS tiny 动态任务创建功能宏 # define TOS_CFG_EVENT_EN

ip:网际协议

心已入冬 提交于 2019-12-18 08:55:59
ip提供不可靠、无连接的数据报传送,任何可靠性必须由上层来提供,无连接表示ip不维护后续数据报的状态信息,每个数据报都是相互独立的。RFC791是ip的正式规范文件。 ip数据报格式如下,普通的ip首部20个字节,除非含有选项字段。 4位版本|4位首部长度|8位服务类型(TOS)|16位总长度 16位标识|3位标志|13位偏移 8位TTL|8位协议|16位首部检验和 32位源IP地址 32位目的ip地址 (选项如果有) 数据 其中:首部长度表示首部4字节的个数; TOS包括一个3bit的优先权(现已忽略),4bit的TOS子字段,1bit未用但是必须置0,4位tos子字段只能置其中1bit,若4bit均为0,表示一般服务(RFC 1340),4bit分别表示最小时延、最大吞吐量、最高可靠性、最小费用; 总长度字段表示整个ip数据报的长度,以字节为单位,因为有16位,故最长可达65535字节,以太网帧要求最小帧长为46字节,ip数据报可能更短填充其他字节,以此可找到真正的ip数据报内容; 标识字段唯一表示主机发送的每一数据报,通常每发一份就加一; ttl为0时,数据报将会丢弃并发送icmp报文通知源主机; 协议字段可以根据它识别是哪个协议向ip传送数据; 首部检验和计算方法,先把检验和置0,然后对首部每16bit依次进行二进制反码求和(先二进制求和再取反)结果存在检验和字段中

【TencentOS tiny】 超详细的TencentOS tiny移植到STM32F103全教程

余生颓废 提交于 2019-12-01 13:42:29
移植前的准备工作 1. 获取STM32的裸机工程模板 STM32的裸机工程模板直接使用野火STM32开发板配套的固件库例程即可。可以从我 github 上获取 https://github.com/jiejieTop/TencentOS-Demo 下载TencentOS tiny 源码 TencentOS tiny的源码可从 TencentOS tiny GitHub 仓库地址 https://github.com/Tencent/TencentOS-tiny 下载,如果GitHub下载慢,也可以通过腾讯工蜂开源仓下载,地址: https://git.code.tencent.com/Tencent_Open_Source/TencentOS-tiny ,大家在移植时并不需要把整个 TencentOS tiny 源码放进工程文件中,否则工程的代码量太大。杰杰将在下文讲解如何将 TencentOS tiny 移植到工程中去,以及如何把 TencentOS tiny 源码中的核心部分单独提取出来,方便以后在不同的平台上移植。目前使用的是 TencentOS tiny 最新版本,由于 TencentOS tiny 在不断更新,如果以后 TencentOS tiny 更新到更高的版本,则以最新的版本为准。 TencentOS tiny源码核心文件夹分析 打开 TencentOS tiny