目录前言USB设备类别未定义设备设备描述符/配置描述符分析配置从机类型配置设备专用的描述符配置从机端点实现设备类特定请求HID设备特点HID键盘描述符实例HID报文描述符短条目报文生成HID键盘报文描述符实例总结CDC设备特点CDC-ACM虚拟串口描述符实例类特定请求USB组合设备实现思路代码实例前言文章中的部分概念可参考第9课【USB协议】USB总线接口端点管道数据包枚举STM32_USB-FS-Device_LibV4.1.0USB设备类别USB协议中为了提供对多样设备的支持,定义了许多外部设备子类,常见的包括:人机交互类设备HID(HumanInterfaceDevice)通信类设备CD
文章目录一、什么是CDC1.CDC介绍2.CDC原理二、什么是FLinkCDC三、为什么要使用FLinkCDC四、FLinkCDC代码样例1.POM依赖2.DataStream方式3.FlinkSQL方式结尾一、什么是CDC1.CDC介绍CDC是变更数据捕获(ChangeDataCapture)技术的缩写,它可以将源数据库(Source)的增量变动记录,同步到一个或多个数据目的(Sink)。在同步过程中,还可以对数据进行一定的处理,例如分组(GROUPBY)、多表的关联(JOIN)等。例如对于电商平台,用户的订单会实时写入到某个源数据库;A部门需要将每分钟的实时数据简单聚合处理后保存到Redi
文章目录一、什么是CDC1.CDC介绍2.CDC原理二、什么是FLinkCDC三、为什么要使用FLinkCDC四、FLinkCDC代码样例1.POM依赖2.DataStream方式3.FlinkSQL方式结尾一、什么是CDC1.CDC介绍CDC是变更数据捕获(ChangeDataCapture)技术的缩写,它可以将源数据库(Source)的增量变动记录,同步到一个或多个数据目的(Sink)。在同步过程中,还可以对数据进行一定的处理,例如分组(GROUPBY)、多表的关联(JOIN)等。例如对于电商平台,用户的订单会实时写入到某个源数据库;A部门需要将每分钟的实时数据简单聚合处理后保存到Redi
MCU:STM32F103VET6开发环境:STM32CubeMX+MDK5 实现USB的虚拟串口不需要去理解USB的底层驱动,只需要STM32CubeMX去配置生成工程即可。在野火的指南者中,是没有这一类的视频和示例的,博主使用这款开发板实现USB虚拟串口。首先需要打开STM32CubeMX工具。输入开发板MCU对应型号,找到开发板对应封装的MCU型号,双击打开(图中第三)。 此时,双击完后会关闭此界面,然后打开一个新界面。 然后,我们开始基本配置。 现在我们选择一个LED作为系统LED,该步骤可以忽略,只是本人喜欢这样子。以硬件原理图的绿灯为例子。 基本配置除了时钟树外,基本上已经配置好了
1.1什么是CDC(跨时钟域)跨时钟域就是模块和模块之间的进行数据交换,但是不是用的同一个时钟,这两个时钟的关系不明确。从图中可以看出,如果clk1和clk2的关系不明确,那么这个传输时间域就是一个跨时钟域传输,在一个SOC中可能会有这样的跨时钟域传输,但是会产生许多的问题。1.2SOC中跨时钟域的举例下图是一个SOC的设计每个模块都有自己的时钟,如果在一个SOC设计中有不明确的时钟关系,那么在进行数据交换的时候就会产生跨时钟域的问题,例如SD卡有自己的时钟,这时就会用到一个FIFO,来处理跨时钟域的问题。所以,如果不是工作在同一时钟下就会有跨时钟域的设计。在跨时钟域的分析中,不能用静态时序分
目录前言:1、springboot引入依赖:2、yml配置文件3、创建SQLserverCDC变更数据监听器4、反序列化数据,转为变更JSON对象5、CDC数据实体类6、自定义ApplicationContextUtil7、自定义sink交由spring管理,处理变更数据前言: 我的场景是从SQLServer数据库获取指定表的增量数据,查询了很多获取增量数据的方案,最终选择了Flink的flink-connector-sqlserver-cdc,这个需要用到SQLServer的CDC(变更数据捕获),通过CDC来获取增量数据,处理数据前需要对数据库进行配置,如果不清楚如何配置可以看看我这
目录读取数据的格式不同 (CDC是自定义的数据类型 在这里就不进行展示了,主要是展示一下Maxwell和Canal的区别)1.添加的区别 1.1Canal1.2Maxwell2.修改的区别2.1Canal2,2Maxwell3.删除的区别3.1Canal3.2MaxwellFlinkCDC: DataStream: 优点:多库多表 缺点:需要自定义反序列化 FlinkSQL: 优点:不需要自定义反序列化 缺点:单表查询 FlinkCDC Maxwell
简介主要内容如下:MySQL安装和开启binogFlink环境准备ApacheDoris环境准备启动FlinkCDC作业1.MySQL安装和开启binog参考文章:Ubuntu安装Mysqlserver,这篇文章介绍了MySQL的安装,用户创建,Binlog开启等内容。MySQL安装后之后创建表,插入测试数据CREATETABLE`test`.`products`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(255)NOTNULL,`description`varchar(512)DEFAULTNULL,`address`varchar(50)
简介主要内容如下:MySQL安装和开启binogFlink环境准备ApacheDoris环境准备启动FlinkCDC作业1.MySQL安装和开启binog参考文章:Ubuntu安装Mysqlserver,这篇文章介绍了MySQL的安装,用户创建,Binlog开启等内容。MySQL安装后之后创建表,插入测试数据CREATETABLE`test`.`products`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(255)NOTNULL,`description`varchar(512)DEFAULTNULL,`address`varchar(50)
技术思想利用mysqlcatalog,mysqlcdc,flinkjdbc等技术实现mysql整库迁移至下游数据库,这里是示范mysqltomysql,其他sink组件可自行扩展实现。通过flinkParameterTool,可以选择是整库同步还是多表亦或单表同步,可以设置全局并发,源表mysql参数,目标表mysql参数通过sqlConnection实现自动建表逻辑(mysql数据类型众多,这里并没有测试所有的类型参数,如担心建表不成功,可手动建表,不影响程序运行)下游使用flinkjdbc来实现,语法为upsert即幂等写入(重复数据只会写入一次)使用mysqlcatalog来实现源表元数