【经验】 USB转UART芯片CP2102N识别信息的修改配置方法

2018-01-24 世强 梧桐叶
USB转UART芯片,CP2102N,Silicon Labs USB转UART芯片,CP2102N,Silicon Labs USB转UART芯片,CP2102N,Silicon Labs USB转UART芯片,CP2102N,Silicon Labs

SILICON LABSUSB转UART芯片CP2102N,当我们把CP2102N芯片连接到电脑上自动识别的是"CP2102N USB to UART Bridge Controller"这个信息。如下图1所示:



但有些客户想识别出自己公司的信息不想使用默认识别信息,如下图显示"Sekorm"公司信息。

          


我们有两种形式可以实现:


第一种,我们的可以用Silicon Labs 的Simplicity Studio 软件直接配置:

 


在这里配置我们只要修改 Product String 里面的信息,要注意"Use Internal Serial Number"这个选项不能选。如果选上我们的信息修改是不成功的,会一直提示厂商出厂的信息。


第二种,如果用户想把CP2102N修改信息打包到自己产品的软件里面需要调用API函数方式,使用最新的CP210xManufacturingDLL_v6.7.5软件包里面的CP210xManufacturing.dll,CP210xManufacturing.lib,CP210xManufacturingDLL.h三个文件。


现在针对CP2102N应该调用CP210X_GetConfig 和 CP210X_SetConfig。


厂商提供了一个configStruct.xlsx电子表格,里面描述了所有CP2102N bytefields信息,用户必须先通过CP210X_GetConfig获取整个cp2102n配置内容,然后指定要改修改地址,把要修改的信息进行填写,然后将这些数据整体通过调用cp210x_setconfig函数把整体信息再写进去,完成对CP2102N信息的配置。


通过在configStruct.xlsx这个点子表格里面我们查到cp2102N 全部bytefields 是678 字节,"product String"偏移量为193,大小为256 byte(s);"Serial String"偏移量为452,大小为128 byte(s);"Use Internal Serial"偏移量为449,大小为1 byte(s); "Fletcher Checksum "偏移量为676,大小为2 byte(s),对这几个部分进行配置就可以实现信息的修改。


下面是测试通过的代码可以参考。


// test1.cpp : 定义控制台应用程序的入口点。

//


#include <windows.h>

#include "CP210xManufacturingDLL.h"

#include <stdint.h>

#include <stdio.h>


uint16_t fletcher16(uint8_t *dataIn, uint16_t bytes)

{

 uint16_t sum1 = 0xff, sum2 = 0xff;

 uint16_t tlen;


 while (bytes) {

  tlen = bytes >= 20 ? 20 : bytes;

  bytes -= tlen;

  do {

   sum2 += sum1 += *dataIn++;

  } while (--tlen);

  sum1 = (sum1 & 0xff) + (sum1 >> 8);

  sum2 = (sum2 & 0xff) + (sum2 >> 8);

 }

 /* Second reduction step to reduce sums to 8 bits */

 sum1 = (sum1 & 0xff) + (sum1 >> 8);

 sum2 = (sum2 & 0xff) + (sum2 >> 8);

 return sum2 << 8 | sum1;

}


#define TOTAL_SIZE 678

//#define TOTAL_SIZE 1016

int main()

{


 DWORD num;

 CP210x_STATUS status = CP210x_GetNumDevices(&num);


 HANDLE h;

 status = CP210x_Open(0, &h);

 if (status == 0)

 {

  char buffEntire[TOTAL_SIZE];

  status = CP210x_GetConfig(h, (BYTE*)buffEntire, TOTAL_SIZE);

  if (status != 0)

  {

   printf("read data error 2");

  }


  char buff2[1024];

  memset(buff2, 0, 1024);

  strcpy(buff2, "Sekorm");


  int towrite = strlen(buff2)+1;

  //product string

  memcpy(buffEntire + 193, (char*)buff2, towrite);

  //serial string

  memcpy(buffEntire + 452, (char*)buff2, towrite);

  //use serial internals

  unsigned char c = 0x0;

  memcpy(buffEntire + 449, &c, 1);

  //sum

  uint16_t sum = fletcher16((uint8_t*)buffEntire, TOTAL_SIZE - 2);

  memcpy(buffEntire + TOTAL_SIZE - 2, &sum, 2);

  buffEntire[TOTAL_SIZE - 1] = (BYTE)sum;

  buffEntire[TOTAL_SIZE - 2] = (BYTE)(sum>>8);


  status = CP210x_SetConfig(h, (BYTE*)buffEntire, TOTAL_SIZE);

  if (status != 0)

  {

   printf("write data error ");

   CP210x_Close(h);

   return 0;

  }

 }


 if (status == 0)

 {

  char buffEntire[TOTAL_SIZE];

  status = CP210x_GetConfig(h, (BYTE*)buffEntire, TOTAL_SIZE);

  if (status != 0)

  {

   printf("read data error 2");

  }

  char* productstring = (char*)(buffEntire + 193);

  char* serialstring = (char*)(buffEntire + 452);

  char* use = (char*)(buffEntire + 449);

  uint16_t sum = fletcher16((uint8_t*)buffEntire, TOTAL_SIZE - 2);

  int stop = 1;

 }

 CP210x_Close(h);

 return 0;

}


相关资料链接如下:

Silicon labs CP210x USB-UART API规范说明(AN978):

https://www.sekorm.com/doc/49408.html

Silicon LabsCP2102N SetConfig GetConfig Array Structure:

https://www.sekorm.com/doc/118834.html

CP210x适用于Windows的驱动程序:

https://www.sekorm.com/doc/118835.html


世强元件电商版权所有,转载请注明来源及链接。

授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 3

本网站所有内容禁止转载,否则追究法律责任!

评论

   |   

提交评论

全部评论(3

  • 用户11888036 Lv3 高级工程师 2020-11-04
    我有一款CP2102转UART的板子,板子连接到电脑上自动识别的是“CP2102 USB to UART Bridge Controller“这个信息,如何才可以把这个信息改成客人的名字?
    • asd回复: 您好。您可以根据文章 https://www.sekorm.com/news/9718.html 中的说明,修改 Product String 字段为客人的名字即可。

      查看全部2条回复

  • 用户_8353 Lv8 2018-12-12
    学习了
  • duanmaxie Lv8. 研究员 2018-01-24
    学习了
没有更多评论了

相关推荐

【经验】USB转串接口芯片CP2102N的硬件电路设计注意事项

Silicon Labs推出的USB转串口芯片CP2102N具备功能强大、无需固件开发、简单易用等显著特点,深受广大工程师喜爱。被广泛用于医疗设备、手持设备、测试设备等。但CP2102N在硬件设计中,会有诸多注意事项,为避免工程师少走弯路,本文做了详细整理,供大家参考。

设计经验    发布时间 : 2020-10-10

【经验】USB转UART接口芯片CP2102N替换CP2102的注意事项

本文介绍Silicon Labs最新USB转UART器件CP2102N与CP2102的区别及替换的注意事项。

设计经验    发布时间 : 2019-07-16

【经验】USB转UART接口芯片CP2102N使用命令行软件设置方法

Silicon Labs USB转UART接口芯片CP2102N,这是一款高集成度的桥接芯片,开发不需要其他外部USB组件,可使用GUI软件对芯片进行简单的自定义和配置选项,简单易用。本文介绍Silicon Labs USB转UART芯片CP2102N使用命令行软件设置方法。

设计经验    发布时间 : 2020-04-06

CP2102 SINGLE-CHIP USB TO UART B RIDGE

型号- CP2102-GM,CP2102EK,CP2102

数据手册  -  SILICON LABS  - Rev. 1.2  - 3/07 PDF 英文 下载 查看更多版本

Silicon Labs(芯科科技)CP2112 USB转I2CSMBUS windows调试助手

描述- 本资料以压缩包的形式呈现,包内附有Silicon Labs(芯科科技)CP2112的USB转I2CSMBUS windows调试助手安装包。

型号- CP2112

开发环境(软件/固件)  -  SILICON LABS RAR 英文 下载

USBXpress™ Family CP2102N Data Sheet

型号- CP2102N-A01-GQFN20R,CP2102N-A02-GQFN28,CP2104,CP2102N-A02,CP2109,CP2102N-A02-GQFN24,CP2102N-A02-GQFN20,CP2102N,CP2102,CP2101

数据手册  -  SILICON LABS  - Rev. 1.5  - November, 2020 PDF 英文 下载 查看更多版本

【产品】低成本USB桥接芯片,即连即用的接口管家-Silicon labs CP2104,CP2105,CP2110

Silicon labs CP21xx USB桥接系列产品共有四种USB转串口的解决方案:包括USB转UART接口芯片CP2104、USB转双UART接口芯片CP2105、HID-USB转UART接口芯片CP2110和HID-USB转SMBus及I2C接口芯片CP2112。该系列芯片能够广泛应用于个人医疗设备、手机、智能卡和存储卡阅读器、无线调制解调器等系统中。

新产品    发布时间 : 2016-02-17

CP2102N在PLC应用中的卓越表现与优势分析

在实现PLC与其他系统或设备高效通信的过程中,一款优秀的接口转换芯片显得尤为重要。Silicon Labs的CP2102N USB-UART桥接芯片,凭借其出色性能和高度集成性,正在成为PLC应用领域的一颗璀璨明星。

应用方案    发布时间 : 2024-04-13

Silicon Labs(芯科科技) CP2105 单芯片USB转UART桥接器数据手册(英文)-CP2105

描述- Silicon Labs(芯科科技) CP2105 单芯片USB转UART桥接器数据手册(英文)-CP2105,CP2105,silabs CP2105,CP2105数据手册,CP2105 datasheet,CP2105规格书,CP2105手册,CP2105技术资料,CP2105资料,CP2105方案,CP2105供应,CP2105库存,CP2105价格,单芯片USB转UART桥接器,UART桥接器,MCU

型号- CP2105,CP210X,CP2105-F01-GMR,CP2105-F01-GM

数据手册  -  SILICON LABS  - Rev. 1.1  - 2013年11月01日 PDF 英文 下载

【经验】CP2102N驱动安装失败问题的分析与解决

在不重新安装Windows的情况下,讨论分析和解决Silicon Labs的USB-to-UART桥接器芯片CP2102N驱动安装失败的问题。

设计经验    发布时间 : 2022-02-12

CP2102N MiniEK Board Files

型号- CP2102N

CAX设计文件  -  SILICON LABS  - 1/15/2020 ZIP 英文 下载

【经验】USB转UART桥接芯片CP2102与CP2110的编程区别

Silicon Labs的CP21XX系列芯片是USB转UART功能的桥接芯片,这个系列的芯片可实现即插即用接口解决方案,可方便的实现产品的USB通信功能,芯片内部集成有振荡器,封装最小只有4mm*4mm,同时内部有可编程存储器,可以极大的降低产品的成本,简化产品设计并缩短产品的开发时间。CP21XX系列的主要有CP2102及CP2110两个产品,本文介绍这两个产品的编程区别。

设计经验    发布时间 : 2019-12-27

【经验】单芯片USB转UART桥接器CP2105用于USB转双路485协议的操作步骤

CP2105是Silicon Labs的一款方便、高性价比的单芯片USB转UART桥接器,其实CP2105不仅仅只支持串口,CP2105还支持USB转485/232。本文主要针对CP2105的USB转485的相关操作进行介绍,让各位读者熟悉整个配置过程。

设计经验    发布时间 : 2019-09-25

【应用】芯科USB转UART单芯片桥接器助力一拖四烧录器,最高可提供4个独立UART接口

烧录器​系统使用的USB转UART单芯片桥接器为:CP2108-B03-GM,包括一个USB 2.0全速功能控制器,USB收发器,振荡器,EEPROM和四个异步串行数据总线,在一个紧凑的9毫米x 9毫米64引脚QFN包中具有完整的调制解调器控制信号。

应用方案    发布时间 : 2022-11-03

【经验】如何固定CP2102N接入电脑的串口号?

Silicon Labs提供了一个虚拟串口(VCP)驱动程序,它允许基于USB转UART功能桥接芯片CP2102N的产品以串口的形式出现在PC应用软件中。在项目上针对不同设备需求及生产测试,需要固定CP2102N的COM端口号来简化产品操作,本文将讲解如何实现操作方法。

设计经验    发布时间 : 2020-10-21

展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥9.6632

现货: 15,602

品牌:信驰达

品类:USB Dongle

价格:

现货: 0

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 104,128

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥12.9143

现货: 95,058

品牌:SILICON LABS

品类:Mighty Gecko Multi-Protocol Wireless SoC

价格:¥27.0929

现货: 90,767

品牌:SILICON LABS

品类:Wireless SoC

价格:¥31.7756

现货: 88,300

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.9026

现货: 83,205

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.5305

现货: 80,817

品牌:SILICON LABS

品类:Wireless SoC

价格:¥35.3989

现货: 77,507

品牌:SILICON LABS

品类:8位MCU

价格:¥5.8534

现货: 73,120

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SILICON LABS

品类:Switch Hall Effect Magnetic Position Sensor

价格:¥2.2924

现货:126,000

品牌:SILICON LABS

品类:Light Sensor

价格:¥20.3400

现货:28,003

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.7900

现货:3,451

品牌:SILICON LABS

品类:Wireless SoC

价格:¥15.1400

现货:1,455

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥56.0000

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥5.1900

现货:396

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

EDA芯片设计软件免费使用

世强深圳实验室提供Robei EDA软件免费使用服务,与VCS、NC-Verilog、Modelsim等EDA工具无缝衔接,将IC设计高度抽象化,并精简到三个基本元素:模块、引脚、连接线,自动生成代码。点击预约,支持到场/视频直播使用,资深专家全程指导。

实验室地址: 深圳 提交需求>

ESD防护解决方案

整体外形尺寸小至0.6*0.3*0.3mm (DFN0603),工作电压范围覆盖2.5V~36V,电容值低至0.2pF,浪涌能力最高可达240安培,静电等级可达空气放电、接触放电±30KV。提供免费浪涌测试仪、静电测试仪测试。

提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面