C语言中的可变参数和可变参数宏
一、可变参数在 C 语言中实现可变参数需要用到这下面这几个数据类型和函数(其实是宏定义): va_list va_start va_arg va_end 处理动态参数的过程是下面这 4 个步骤: 定义一个变量 va_list arg; 调用 va_start 来初始化 arg 变量,传入的第二个参数是可变参数(三个点)前面的那个变量; 使用 va_arg 函数提取可变参数:循环从 arg 中
由 printf(结构体) 引发的错误
一、问题引入首先,测试环境如下: 下面是测试代码: 12345678910111213141516171819#include <unistd.h>#include <stdio.h>#include <stdlib.h>typedef struct{ int age; char name[8];} student;int ma
USB-HID 协议
一、简介HID(Human Interface Device,人机接口设备)是 USB 设备中常用的设备类型,是直接与人交互的 USB 设备,例如键盘、鼠标与游戏杆等。在 USB 设备中,HID 设备的成本较低。另外,HID 设备并不一定要有人机交互功能,只要符合 HID 类别规范的设备都是 HID 设备。 Wndows 操作系统最先支持的 HID 设备。 在 Windows 98 以及后来的
RK3399 通过网线与电脑连接
配置结果: 一、设置电脑 WLAN 共享通过这一步让开发板和电脑连接后可以访问外网: 然后双击 WLAN -> 选择属性 -> 选择共享: 这里选择的以太网就是通过网线和主机连接的 RK3399 设备。 设置好后有如上图弹窗。 然后,关闭防火墙,否则 RK3399 无法和电脑正常通信: 到这里,和主机相关的内容就设置完毕,然后是 RK3399 的设置。 二、设置 RK339
USB 协议简介
[toc] 一、USB 架构系统中只能有一个主机,并且与设备进行的通信是从主机的角度进行的。主机是“上行”组件,设备则是“下行”组件,如下图表示。数据从主机转移到外设的操作是 OUT 传输。数据从外设转移到主机的操作是IN 传输。主机(尤其是主控制器)控制着所有通信并向设备发出指令。共有三种常见的 USB 主控制器: 通用主控制器接口(UHCI):由 Intel 生产,适用于 USB 1.0
J-Link RTT 详解和使用
@toc 一、简介SEGGER 的 Real Time Transfer(RTT)是一种用于嵌入式应用的交互式用户 I/O 技术。它结合了 SWO 和半主模式的优势,在非常高的性能下运行。 使用 RTT 时,可以在不影响目标微控制器的实时行为的情况下, 能够高速双向通信,既可以输出调试信息,也能够从外部输入相关的控制命令。RTT可以在两个传输方向(输出和输入)上支持多个通道,不同的