USB接口有4根线,将USB接口平放,依次是1、2、3、4触点,对应的依次是电源线、数据线、数据线、地线,即红、绿、白、黑,详细如下:
1、VBUS (4.75-5.25 V),电源线,红色线。
2、data-,数据传输线,绿色线。
3、data+,数据传输线,白色线。
4、gnd,地线,黑色线。
扩展资料
USB支持四种基本的数据传输模式:控制传输、等时传输、中断传输及数据块传输。每种传输模式应用到具有相同名字的终端,则具有不同的性质。
1、控制传输类型:支持外设与主机之间的控制,状态,配置等信息的传输,为外设与主机之间提供一个控制通道。每种外设都支持控制传输类型,这样主机与外设之间就可以传送配置和命令/状态信息。
2、等时(lsochronous)传输类型(或称同步传输):支持有周期性,有限的时延和带宽且数据传输速率不变的外设与主机间的数据传输。该类型无差错校验,故不能保证正确的数据传输,支持像计算机-电话集成系统(CTI)和音频系统与主机的数据传输。
3、中断传输类型:支持像游戏手柄,鼠标和键盘等输入设备,这些设备与主机间数据传输量小,无周期性,但对响应时间敏感,要求马上响应。
4、数据块(Bulk)传输类型:支持打印机,扫描仪,数码相机等外设,这些外设与主机间传输的数据量大,USB在满足带宽的情况下才进行该类型的数据传输。
USB采用分块带宽分配方案,若外设超过当前带宽分配或潜在的要求,则不能进入该设备。同步和中断传输类型的终端保留带宽,并保证数据按一定的速率传送。集中和控制终端按可用的最佳带宽来传输传输数据。
建议用HEX格式打开,查看到底结尾符号是啥。SQL SERVER的转义字符有点奇怪,理论上'\n'=0x0a但实际上用BULK INSERT的时候会报错。。。。直接写'0x0a'结果可以了。。。
"Sawtooth Bandpass (SAW BAW) 滤波器"是一种利用声表面波 (Surface Acoustic Wave, SAW) 或声波波导 (Bulk Acoustic Wave, BAW) 技术实现的滤波器。这两种技术都是通过在固体材料中传播的声波来实现的。
SAW 滤波器通过在压电晶体片上引入表面声波来实现,而 BAW 滤波器则是通过利用压电晶体片中的体声波模式。这两种滤波器使用类似的原理,他们都可以实现对特定频率范围内信号的选择性传递。
SAW BAW 滤波器的工作原理可以概括如下:
1.输入信号:将待过滤的信号输入到 SAW BAW 滤波器。
2.压电晶体片:SAW BAW 滤波器中有一个压电晶体片,直接或间接地与输入电路连接。压电晶体片可以是石英或其他具有压电效应的材料。
3.表面或体声波传播:输入信号作用于压电晶体片后,产生了表面声波 (或体声波)。这些声波沿着晶体片的表面(或体内)传播,并经过滤波器结构上的刻槽或电极。
4.反射和透射:滤波器的结构会对特定频率的声波进行反射或透射。这样,只有特定频率范围内的声波能够通过滤波器,而其他频率的声波则被滤除。
5.输出信号:透过滤波器的声波被接收到输出端口,从中获得经过滤波后的信号。
SAW BAW 滤波器由于利用了压电效应和声波传播的特性,具有一些优点,如较高的品质因数 (Q factor)、低插入损耗、较小的尺寸和较宽的工作频率范围。这些优势使得 SAW BAW 滤波器在无线通信、无线传感器网络和其他 RF 应用中被广泛应用。
要将SDB文件导入数据库,可以按照以下步骤进行操作:1. 打开数据库管理工具,如MySQL的命令行界面、Navicat等。2. 创建一个新的数据库,如果已存在数据库可跳过此步骤。3. 在数据库管理工具中选择要导入SDB文件的数据库。4. 运行导入命令,具体命令格式根据使用的数据库管理工具而有所不同。- 在MySQL中,可以使用LOAD DATA INFile命令导入SDB文件。例如,可以运行以下命令导入一个叫"table_name"的表:```SQLLOAD DATA INFILE 'path/to/file.sdb' INTO TABLE table_name;```- 在Oracle中,可以使用SQL*Loader工具导入SDB文件。例如,可以运行以下命令导入一个叫"table_name"的表:```shellsqlldr username/password@database CONTROL=controlFile.ctl DATA=dataFile.sdb```- 在SQL Server中,可以使用BULK INSERT命令导入SDB文件。例如,可以运行以下命令导入一个叫"table_name"的表:```sqlBULK INSERT table_name FROM 'path/to/file.sdb' WITH (FORMAT = 'SDB');```请注意,以上命令中的"path/to/file.sdb"应替换为实际SDB文件的路径。另外,不同数据库管理工具的导入命令可能还会涉及到其他参数和选项,请根据具体的数据库管理工具和文件格式进行相应设置和调整。
对于操作Oracle、Mysql、Sqlite等多种关系型数据库,推荐使用 Python Records模块 ,其适用于绝大多数关系型数据库的原始SQL操作,同时支持将查询结果导出到xlsx, xls, csv, json, yaml, pandas, html等文件中,强无敌!
我们在开发过程中经常会涉及与数据库进行交互,比如题目中提到的MySQL、Oracle、PostgreSQL、Sqlite关系型数据库。较以往,我们会选择其对应的Python 第三方模块,实现相关数据库的增删改查等操作,不同数据库对应的Python模块如下:
Oracle数据库: cx_OracleMySQL数据库:mysql-connector,pymysqlPostgreSQL数据库:psycopg2SQLite数据库: sqlite3就像,问题到提到的那样,当同一程序中需要操作不同的数据库时,有没有一种通用的方式或者模块,可以实现不同数据的各种操作呢?否则,我们将不得不面临一个问题,当代码中涉及不同数据库操作时,容易出现代码冗余、不规范,风格不统一等等问题。
那么究竟有没有一种通用而优雅的支持各种数据库操作的库呢?答案是肯定,SQLAlchemy库。
后来接触到 Python SQLAlchemy(ORM框架),其一定程度上解决了各数据库的SQL差异,可是 SQLAlchemy 在消除不同数据库间SQL差异的同时,引入了各框架CRUD的差异。可开发人员往往是具备一定的SQL基础。假如一个框架强制用户只能使用它规定的CRUD形式,那反而增加用户的学习成本,导致学习曲线增长。
当然你也可以尝试SQLAlchemy,那么除了SQLAlchemy 我们还有其他选择吗?
遇见 RecordsRecords 是一个使用简单且功能非常强大的库,适用于绝大多数关系型数据库的 原始SQL操作。强无敌!
Records 有哪些特点呢,如下:
其基于 SQLAlchemy 与 Tablib 开发。使用简单且统一。支持缓存查询的数据。无需关注数据连接状态,自动实现上下文管理器。支持数据库事务,能够保持数据的原子性和一致性。支持安全的参数化查询,防止 因SQL语句不规范而导致安全问题发生。支持主流数据库,如 Oracle, MySQL,Postgres,SQLite等关系型数据库。御剑 Records接下来,我们在Windows 10的Python3环境中,使用pip方式进行安装Records,命令如下:
pip install records安装过程非常简单,如下:
接下来,我们以SQLite数据库为例,介绍如何使用 Records 进行数据库CRUD操作。
关于不同数据库的统一连接方式,如下:
Records 基于 SQLAlchemy 实现的,因此数据库的统一连接方式与SQLAlchemy 相同,如下
Records 操作各种数据的步骤也非常简单,如下:
连接数据库,获取数据库对象。使用数据库对象的 query 方法执行增删改查SQL 语句。根据开发需求,使用 all方法获取查询结果进行处理。说了这么多,接下来,让我们了解下如何使用Records 完成数据库的增删改查等操作。
创建表数据写入Records 支持安全的参数化,我们可以使用 :variable 定义变量,然后通过传入参数完成动态传值,对于需要动态加载数据的场景来说非常的高效,如批量入库操作。
数据批量写入我们使用SQL 语句实现数据批量入库时,操作比较冗余, Records 模块提供了 bulk_query 方法能够非常简洁的插入数据和更新数据,如下。
数据查询我们可以通过 all 方法获取执行SQL所返回的全部记录,first 方法是获取第一条记录。
字段获取
我们可以像操作字典那样,直接获取对应字段的查询结果,如下:
执行上述代码,输出结果如下:数据导出我们可以将查询的结果直接导出到xlsx当中,如下:
执行上述代码,实现数据库查询结果的导出到xlsx中,如下:数据导出为yaml
我们也可以将查询结果直接导出到yaml文件中,如下:
此外,还支持导出为xls, csv, json,pandas, html 等多种数据格式。
还没有评论,来说两句吧...