自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 【MPSoC ZCU102 BOOT.BIN文件制作】

1 说明 本文介绍了通过Xilinx官方网站提供的Vivado、petalinux等工具制作官方开发板Xilinx MPSoC ZCU102启动文件BOOT.BIN的过程。此启动文件可通过SD启动方式被加载,最终引导启动u-boot。基本流程是首先通过Vivado生成ZCU102的硬件描述文件(...

2019-12-18 16:23:32 348 0

原创 【SylixOS RMS 调度】

RMS(Rate Monotonic Secheduling)是一种可以提供固定任务周期的调度系统。与普通的随机式的、不可预测的调度系统不同,RMS可以提供固定的、可设置的调度周期,且精度可达到纳秒级。多个RMS调度之间优先级按照周期越小优先级越高的原则。 函数原型: sched_r...

2019-10-16 11:38:00 74 0

原创 【 u_boot 中新增命令】

uboot的所有命令都单独存放在“.u_boot_cmd”中,这一点从链接脚本中可以看出来,如图: uboot会遍历“.u_boot_cmd”段中的所有命令,找到待执行的命令后运行对应的处理函数。命令以 cmd_tbl_t 结构的形式存在,common.h中定义,如图: 命令结构通过宏...

2019-10-10 17:39:52 46 0

原创 【SylixOS之进程资源回收机制】

SylixOS在正常消亡时会回收与此进程所占用的相关资源,包括打开的文件fd、事件、事件组、posix命名信号量、定时器、RMS等。相关代码见libsylixos/SylixOS/kernel/resource/resourceLib.c:__resPidReclaim()。 此函数通过遍历对...

2019-09-18 17:45:54 60 0

原创 【libcjson 库使用与例程】

JSON 是一种轻量级的数据交换格式。它采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 在C语言中一般使用libcjson库进行json数据的解析与创建,下面...

2019-07-12 17:29:42 467 0

原创 计算文件MD5值参考代码

md5.c #include <stdlib.h> #include <stdio.h> #include <string.h> #include <unistd.h> #include <sys/types.h> #include ...

2019-05-17 11:17:37 903 0

原创 【SylixOS之ipv6收发测试代码】

1、设备ipv6地址通过ifconfig查看 2、SylixOS自带ping6命令测试ipv6网络通断状态 注意:需要使用-I选项指定收发端口 3、ipv6的tcp收发测试代码 注意:client端需要使用SO_BINDTODEVICE指定数据收发端口 server: #in...

2019-05-14 10:22:59 89 0

原创 【SylixOS事件集实现原理】

1 事件集简介 事件集是一种线程间通讯方式,可有效处理线程与线程之间的资源生产与消费的同步问题。在SylixOS中事件集被定义为ULONG类型,每一位代表一个事件,即一个事件集可以处理32个不同的事件。事件集提供了发送和等待事件的API,资源生产者在资源准备好后发送事件,资源消费者则等待接收事...

2019-03-29 17:25:21 112 0

原创 【SylixOS之更新LITE版Base方式】

1.适用范围 本文档面向SylixOS Lite版程序开发工程师和相关测试人员,协助解决开发或测试过程中需要更换Lite版Base版本问题。 2.原理概述 最新的SylixOS源码库可从git://sylixos.com/libsylixos.git处获取,但获取的代码默认为标准版Bas...

2019-03-12 16:06:56 165 0

原创 【SylixOS之new_1型字符设备驱动设计】

本文介绍new_1型字符设备驱动基本软件框架,以imx6q的pwm驱动为例 1、构建设备控制器结构 定义pwm控制器类型,其中需要注意的是第一个成员必须是LW_DEV_HDR类型,表示设备头。第二个程序为LW_LIST_LINE_HEADER类型,用于管理fdnode链表。后面可以添加任意与...

2019-03-07 20:12:51 382 0

原创 【SylixOS之crashtrap命令使用方式】

1. 适用范围 本文档面向SylixOS应用程序开发工程师和相关测试人员,协助工作人员调试应用开发或中间件移植中出现的应用程序崩溃问题。 2. 原理概述 SylixOS从base v1.9.9开始支持命令crashtrap,命令本质是在进程崩溃时将进程切换为STOP模式,此时可以通过AT...

2019-03-05 15:45:20 122 0

原创 【解决打开远程共享目录中的word、excel、ppt文档失败】

环境:windows 10   office2016 问题描述:远程打开远程服务器中的共享目录中的word、excel、ppt文件打开失败,显示文件已损坏。但在远程服务器中可以正常打开,文件本身没有问题。   解决方案: 打开excel,文件---&gt;选项 信...

2019-02-27 09:49:06 1159 0

原创 【SylixOS lite版——基于STM32F767计算资源使用情况】

基本概念: 代码段(text):顾名思义是代码存放位置,在STM32中代码段一般存放于内置FLASH中; 已初始化数据段(data):已初始化数据段会分别体现在FlASH中和RAM中。因为是全局变量,运行过程中需要进行读写操作,因此占用一段RAM空间。又因为有初始值,其初始值需要占用FlASH...

2019-02-26 15:05:04 330 0

原创 openwrt中添加自定义内核模块

openwrt中自带一整套包管理机制,正确使用openwrt的包管理机制可有效提高开发效率 本文介绍如何在openwrt中增加一个自定义的内核模块包 1、在package/kernel下创建一个应用程序目录mydrv,并在mydrv下再创建一个src用于存放源码文件 $ cd package...

2019-02-18 20:11:42 987 0

原创 openwrt中添加自定义应用模块

openwrt中自带一整套包管理机制,正确使用openwrt的包管理机制可有效提高开发效率 本文介绍如何在openwrt中增加一个自定义的应用包 1、在package下创建一个应用程序目录hello,并在hello下再创建一个src用于存放源码文件 $ cd package $ mkdir...

2019-02-18 19:23:37 1906 4

原创 STM32F767的PWM驱动实现

1 简介 1.1 PWM介绍       脉冲宽度调制(PWM),是英文“Pulse Width Modulation” 的缩写,简称脉宽调制。它是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。PWM本质就是对脉冲宽度的控制...

2019-01-21 10:50:21 625 0

原创 ICE线程池数量配置

      线程池配置属性必须在initialize()操作之前被创建。这里可以设置的值有两个默认线程数(Size)和最大线程数(SizeMax)。其中Size表示启动后默认创建的线程数量,ICE在通讯过程中会根据实际情况动态调整线程数量以达到最优性能,而SizeMax则限制了所能创建的最大线程数...

2018-12-26 16:36:18 729 0

原创 T3高精度时钟出现负数问题解决方案

1 问题描述       问题现象主要表现为连续获取两次高精度时钟,时间差为负数。即后一次获取的时间小于前一次。现象出现随机性较高,属于偶发事件。连续多次获取可复现此问题。后一次出现时间约比前一次少1ms左右,即一个tick值。 2 原因分析       高精度时钟的基本原理是在tick中断...

2018-12-17 18:00:17 169 0

原创 SylixOS之QoS原理

1 QoS简介        QoS(Quality of Service,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的一种技术。在正常情况下,如果网络只用于特定的无时间限制的应用系统,并不需要QoS,比如W...

2018-11-29 14:07:01 164 0

原创 SylixOS移植ICE库总结

1 ICE 简介       ICE(Internet Communications Engine)是一种面向对象的中间件平台,主要用于网络通讯。它为面向对象的“客户端-服务器”模型的应用提供了一组很好的工具和API接口。目前在全世界被应用于很多项目之中。ICE中间件号称标准统一,开源,跨平台,...

2018-10-18 16:00:15 212 0

原创 OpenRT固件更新流程

1 使用范围       本文档适用于分析OpenRT核心网路由器相关问题的技术人员。   2 固件更新需求       OpenRT系统包含系统镜像、配置文件、Web页面、内核模块、业务APP等多个组件。系统更新操作可能涉及多个部分,需要对多个组件进行更新。这对OpenRT的维护人员提出...

2018-09-26 15:54:59 557 0

原创 SylixOS使用RAM文件系统大幅度提高系统性能

在某些特定使用场景中可使用RAM文件系统提高系统性能,解决业务问题。一下已MPC8313作为测试平台,测试使用RAM和yaffs2文件系统时,FTP文件传输速率与应用程序加载时间的性能变化。 硬件平台:MPC8313 base版本:V1.8.0 FTP文件传输样本:bspmpc8313.elf  ...

2018-09-10 17:25:05 137 0

原创 Linux下编译SylixOS

开发环境:Ubuntu 14.04    SylixOS源码版本:1.6.7 一、搭建环境 $ sudo apt-get udpate $ sudo apt-get install build-essential $ sudo apt-get install vim $ sudo apt...

2018-09-10 17:21:33 612 0

原创 【C++】向量(vector) 基本使用方法及注意事项

介绍: 向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。 特点: 1.顺序序列 顺序容器中的元素按照严格的线性顺序排序。可以通过元素在序列中...

2018-09-10 17:20:02 937 1

原创 SylixOS网络协议栈---Lwip协议栈之ARP表

1 适用范围 本文档适用于分析SylixOS网络相关问题的技术人员。   2 ARP介绍        地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络...

2018-08-21 10:53:14 130 0

原创 广播包发送

       默认系统是禁止发送广播包的,需要设置SOL_SOCKET选项来打开广播包发送。这主要是为了防止一些程序并不是设计用来发送广播消息,因为用户的错误输入,而发送了广播消息。比如一个UDP 程序接受一个目标IP地址做为命令行参数,但用户却把这个地址写成了一个广播地址,这时候这个选项的作用就...

2018-08-14 10:12:56 1040 0

原创 SylixOS网络协议栈数据收发流程

1. SylixOS网络协议栈基本介绍     SylixOS网络协议栈使用目前非常流行的嵌入式TCP/IP协议栈lwip。lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。lwip特点是对RAM与ROM的占用非常少,只需十几KB的RAM和...

2018-07-25 16:46:45 227 0

原创 iniparser 库使用

  iniparser介绍   iniparser是一个C语言库,是针对INI文件的开源解析器。ini文件则是一些系统或者软件的配置文件。git地址如下:   https://github.com/ndevilla/iniparser     ini文件格式   iniparser提供A...

2018-07-18 17:05:38 3544 0

原创 使用socket tcp实现简单的文件传输

程序分为server、client两个部分,client从server获取文件。流程如下:server:1、创建socket,绑定端口10002,等待client连接;2、链接后打开需要发送的文件,计算文件长度并发送长度,等待接收客户端响应;3、客户端响应ok后,发送文件数据,发送缓冲定位8192...

2018-07-13 10:33:32 16262 4

原创 ZeroC ICE 文件传输

    ZeroC ICE提供一种打补丁方式,名为IcePatch2。基本功能就是通过ICE通讯将服务器上的最近软件部署到各个客户端中,这间接的实现了文件传输功能,下面就介绍基于ICE 3.7版本的IcePatch2基本操作:1、创建文件hello.txt,执行icepatch2calc(后面的&...

2018-07-10 15:52:10 954 0

原创 SylixOS 网络协议栈lwip介绍3-----udp数据接收

数据包接收包括两个部分。首先网卡获取一个数据包并使用中断通知系统,系统解析这个数据包放入缓冲队列中。再由应用层调用接口recv()或recvfrom()获取这个数据包。1、中断接收(1)    系统在初始化时会注册网卡中断,处理函数为dm9000IntIsr()。当接收到一个数据包时会执行中断处理...

2018-06-28 11:45:54 202 0

原创 SylixOS 网络协议栈lwip介绍2-----UDP数据发送流程

UDP数据包的发送是通过sendto()发起的(其他接口类似),整体实现流程如下:(1)    通过文件描述符fd获取文件结构,并提取lwipfd。再通过lwipfd从socket表中获取socket结构。Socket结构中包含了此udp链接中的connect信息;(2)    使用netbuf_...

2018-06-28 11:43:11 266 0

原创 SylixOS 网络协议栈lwip介绍1-----pbuf结构

    SylixOS网络协议栈使用目前非常流行的嵌入式TCP/IP协议栈lwip。lwip是瑞典计算机科学院(SICS)的AdamDunkels 开发的一个小型开源的TCP/IP协议栈。lwip特点是对RAM与ROM的占用非常少,只需十几KB的RAM和40K左右的ROM就可以运行,非常适合嵌入式...

2018-06-28 11:41:38 241 0

原创 DSP C6678调试SylixOS程序

使用RealEvo-IDE编译SylixOS DPS工程生成可执行文件,由CCS5.5进行烧录1、打开CCS 5.5,新建CCS工程2、新建目标配置文件选择对应目标并保存3、设置6678开发板拨码开关到如下位置,上电,接USB线,确认驱动正确安装4、测试5、只是用cpu0,关闭其他7个cpu,并给...

2018-06-27 13:44:28 810 0

原创 SylixOS下打开内核调试信息

    打开文件sylixos-base/libsylixos/SylixOS/config/net/net_cfg.h将宏LW_CFG_LWIP_DEBUG置1

2018-06-04 10:53:55 100 0

原创 火狐浏览器书签无法删除解决方案

1、打开书签管理页面书签管理页面可在菜单栏打开,firefox默认关闭了菜单栏,可在网址输入框旁右击鼠标打开菜单:打开菜单后点击“书签”----&gt;“管理所有书签”然后备份当前书签;在地址栏输入about:support,打开配置文件夹关闭firefox,再在刚才的文件中找到文件“pl...

2018-05-25 09:22:19 10312 0

原创 SylixOS error:No more processes or operation would block

error:No more processes or operation would block出现上述错误主要是因为应用程序中使用了太多了event。SylixOS中所有的锁包括互斥锁、信号灯都是event。可在/proc/kernel/objects中查看:从上图可以看出event已经达到了最...

2018-05-23 15:54:08 287 0

原创 SylixOS下永久修改IP、掩码、网关、DNS

SylixOS下可通过修改    /etc/ifparam.ini来永久修改IP地址、掩码、网关、DNS等参数,具体格式如下:修改后重启即可

2018-05-04 09:24:26 276 0

原创 SylixOS 内核调试

1、printk()是最常用的,可以在内核态中打印响应调试信息; 2、部分内核代码中无法使用printk()打印信息时就需要用到_DebugFormat(),申明如下: _DebugFormat(level, fmt, ...) level可选值如下: #define __LOGMESSA...

2018-05-03 09:57:37 220 0

原创 ZeroC ICE 源码编译

      本实验主要介绍如何在Ubuntu 14.04系统上编译安装ZeroC ICE,首先介绍一下ZeroC ICE。          ZeroC ICE是ZeroC公司开发的一套RPC中间件平台,号称标准统一,开源,跨平台,跨语言,分布式,安全,服务透明,负载均衡,面向对象,性能优越,防火...

2018-05-03 09:44:54 1148 0

提示
确定要删除当前文章?
取消 删除