Quectel RM500U-CN

查询/设置当前usb网卡驱动模型

AT+QCFG="usbnet"[,net]

1 表示 ECM
2 表示 MBIM
3 表示 RNDIS
5 表示 NCM
默认为 3, 因为rndis在Linux和Windows下都有驱动


配置网卡模式

AT+QCFG="nat"[,nat]
0=网卡模式
1=路由模式
2=网桥模式
默认为0,网卡模式。网卡模式下,分配给PC机的地址为公网地址(也就是核心网分配给基带的地址)。此时modem内部无法连接外网,因为它都没有IP了,IP给了PC机


网桥模式和路由模式为 内网地址

C# 实现扫描检测硬件改动

public static class Win32Api
{
    public const int CM_LOCATE_DEVNODE_NORMAL = 0x00000000;
    public const int CM_REENUMERATE_NORMAL = 0x00000000;
    public const int CR_SUCCESS = 0x00000000;

    [DllImport("CfgMgr32.dll", SetLastError=true)]
    public static extern int CM_Locate_DevNodeA(ref int pdnDevInst, string pDeviceID, int ulFlags);

    [DllImport("CfgMgr32.dll", SetLastError=true)]
    public static extern int CM_Reenumerate_DevNode(int dnDevInst, int ulFlags);
}
int pdnDevInst = 0;

        if (Win32Api.CM_Locate_DevNodeA(ref pdnDevInst, null, Win32Api.CM_LOCATE_DEVNODE_NORMAL) != Win32Api.CR_SUCCESS)
            throw new Exception("something...");

        if (Win32Api.CM_Reenumerate_DevNode(pdnDevInst, Win32Api.CM_REENUMERATE_NORMAL) != Win32Api.CR_SUCCESS)
            throw new Exception("something else...");

 

CentOS 7 EC25/EC20 4G 模块 终端配置拨号上网 移动运营商

首先判断4G模块是否识别:

Bus 001 Device 002: ID 8087:8000 Intel Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 002 Device 005: ID 05e3:0608 Genesys Logic, Inc. Hub Bus 002 Device 003: ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem Bus 002 Device 006: ID 046d:c31c Logitech, Inc. Keyboard K120 Bus 002 Device 015: ID 046d:c077 Logitech, Inc. M105 Optical Mouse Bus 002 Device 002: ID 14cd:8601 Super Top 4-Port hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 002 Device 005: ID 05e3:0608 Genesys Logic, Inc. Hub Bus 002 Device 003: ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem Bus 002 Device 006: ID 046d:c31c Logitech, Inc. Keyboard K120 Bus 002 Device 015: ID 046d:c077 Logitech, Inc. M105 Optical Mouse Bus 002 Device 002: ID 14cd:8601 Super Top 4-Port hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

 

然后安装

yum install wvdial && net-tools && usbutils && ModemManager

重启下

然后判断是否识别为modem

如果有 modem 字样则

[ 3.573808] usbserial: USB Serial support registered for GSM modem (1-port) [ 3.574245] option 2-5:1.0: GSM modem (1-port) converter detected [ 3.576298] usb 2-5: GSM modem (1-port) converter now attached to ttyUSB0 [ 3.576347] option 2-5:1.1: GSM modem (1-port) converter detected [ 3.577231] usb 2-5: GSM modem (1-port) converter now attached to ttyUSB1 [ 3.577272] option 2-5:1.2: GSM modem (1-port) converter detected [ 3.578065] usb 2-5: GSM modem (1-port) converter now attached to ttyUSB2 [ 3.578109] option 2-5:1.3: GSM modem (1-port) converter detected [ 3.579077] usb 2-5: GSM modem (1-port) converter now attached to ttyUSB3 继续阅读“CentOS 7 EC25/EC20 4G 模块 终端配置拨号上网 移动运营商”

Windows 集成.NET Framework 版本

  • Windows Xp SP1 .NET Framework 1.0 SP2
  • Windows Xp SP1, SP2 .NET Framework 1.1 SP1
  • Windows Server 2003 x86 .NET Framework 1.1 
  • Windows Server 2003 R2   .NET Framework 2.0
  • Windows Vista SP1   .NET Framework 2.0 SP1 and 3.0 SP1
  • Windows Server 2008 和 Windows Server 2008SP1  .NET Framework 2.0 SP1 and 3.0 SP1
  • Windows Server 2008 SP2  .NET Framework 2.0 SP2 and 3.0 SP2
  • Windows Server 2008 R2   .NET Framework 3.5.1
  • Windows 7   .NET Framework 3.5.1
  • Windows 8   .NET Framework 4.5
  • Windows 8.1   .NET Framework 4.5.1
  • Windows Server 2012   .NET Framework 4.5
  • Windows Server 2012 R2   .NET Framework 4.5.1
  • Windows 10   .NET Framework 4.6 
  • Windows 10 10240 .NET Framework 4.6.1
  • Windows 10 14393 .NET Framework 4.6.2 
  • Windows 10 15063 .NET Framework 4.7

世界各地插头标准

转载: https://zhuanlan.zhihu.com/p/79322556 感谢:中国移动国际及港澳台漫游

各国家/地区电压及插头形式

世界各地的插头规格众多,可谓是琳琅满目,但归结起来主要分为平行双扁式、双孔粗圆式、双孔细圆式、三孔粗圆式、双扁八字式、一纵双横三角式等几类。具体可见以下插头形式哦。

亚洲

欧洲

非洲

北美洲

南美洲

小贴士

1)世界各地所使用的电压主要分为100-130V与220-240V两种类型,其中,100-130V为低压,220-240V为高压。

如何正确使用表格组件的formatter属性

本文转载于: https://ask.fastadmin.net/article/8071.html 感谢: 君君要上天 fastadmin前端表格组件使用的是bootstrap-table,如果我们想要自定义表格的内容,可以使用formatter属性。最常规的用法如下:
columns: [
    [
                       
        {
           field: 'type', title: __('type'), 
           formatter: function (value,row) {
              if (value === 0) return '普通存储';
              if (value === 1) return '低频存储';
           }
        },
        {
           field: 'url', title: __('url'), 
           formatter: function (value,row) {
              return '<a href="'%20+%20value%20+%20'">' + row.name + '</a>';
           }
        }
    ]
]
简单来说formatter可以定义为一个function返回一段html代码,而这个function的第一个参数为当前字段值,第二个参数为一整行数据。 fastadmin为了方便大家快速开发,封装了一些常见的formatter供大家直接使用,如:
> `Table.api.formatter.icon` 快速将字段渲染成一个按钮,仅支持Fontawesome按钮
> `Table.api.formatter.image` 快速将字段渲染成图片展示的形式
> `Table.api.formatter.images` 快速将字段渲染成多图片展示的形式,字段数据请以`,`进行分隔
> `Table.api.formatter.status` 快速将字段渲染成状态,默认`normal/hidden/deleted/locked`这四个状态
> `Table.api.formatter.url` 快速将字段渲染成URL框
> `Table.api.formatter.search` 快速将字段渲染成可搜索的链接,点击后将执行搜索
> `Table.api.formatter.addtabs` 快速将字段渲染成可添加到选项卡的链接,点击后将把链接添加到选项卡
> `Table.api.formatter.flag` 快速将字段渲染成标志,仅支持`index/hot/recommend/new`这四种标志
> `Table.api.formatter.label` 快速将字段渲染Label标签
> `Table.api.formatter.datetime` 快速时间戳数据渲染成日期时间数据
> `Table.api.formatter.operate` 操作栏固定按钮
> `Table.api.formatter.buttons` 快速生成多个按钮
> `Table.api.formatter.toggle` 快速生成切换按钮
使用方法为:
field: 'status', title: __('status'), formatter: Table.api.formatter.status
但是我们在使用过程中经常遇到一个问题,比如status字段,我们数据库存的是0和1,或者normal,hidden等,使用Table.api.formatter.status 渲染时,如何将字段值转为中文?如何设置使用的颜色? 其实karson为我们提供了一些属性可以配置,只不过官方文档中并没有说明有哪些属性可以配置,导致一些新人不知所措。 我写这个帖子的目的就是帮助大家解除这个疑惑。 俗话说授之以鱼不如授之以渔。 本帖并不打算直接将可配置的属性列举出来,而是教大家如何通过源码去找到自己想要的属性配置。 首先,你要知道封装formatter的代码在 public/assets/js/require-table.js 大约372行的位置:
image.png
以status为例,假设现在有个表格,status字段的值为0和1,分别代表“启用”和“禁用”。 现在我需要做两件事:
  1. 将0和1分别显示为“禁用”和“启用”
  2. 启用使用绿色图标,禁用使用红色图标
为了知道该如何配置,我查看了源码:
image.png
请看上图源码中,红框中的代码,你会发现颜色是使用custom属性来配置的,并且该属性默认是{normal: 'success', hidden: 'gray', deleted: 'danger', locked: 'info'} 而我的status字段值是0或者1,因此我们需要配置custom属性为:custom: {0: 'success', 1: 'error'} 那么文字怎么转换为中文呢?可以看到Table.api.formatter.status其实最后调用了Table.api.formatter.normal,于是我们再查看normal的代码:
image.png
注意看上图红框中的代码,你会发现原来文字显示是可以通过searchList属性来配置的。 所以我们需要配置searchList属性为:searchList: {1: ‘启用’, 0: ‘禁用’} 最终代码为:
{
   field: 'status', 
   title: __('status'), 
   operate: false, 
   formatter: Table.api.formatter.status,
   custom: {0: 'success', 1: 'error'},
   searchList: {0: '启用', 1: '禁用'}
}
效果为:
image.png
这里是以status为例,其他的formatter也是一样的,大家阅读一下源码就知道该怎么用了。

建议

本人经常在群里或社区中解答别人的问题,有人叫我大神,其实我不是大神,那么我为啥能够解答别人的问题呢? 因为我看源码呀。其实很多时候有人问问题的时候,我其实也是不知道答案的,但是我会去通过源码找到答案然后再解答别人。就如formatter的问题,群里就经常有人问什么什么该怎么弄,我就打开源码阅读一下,很快就找到答案了。 所以,建议大家有关于fastadmin使用上的问题,第一先看官方文档,第二查找社区,尤其是社区这个帖子:一张图解析FastAdmin中的表格列表的功能。第三自己阅读源码,第四才是在群里提问。 阅读源码是提高自己水平最好的方式。

RK系列GPIO计算

num=bank*32+pin
比如GPIO7_C2: 7*32+18=242

PIN={
‘A0’: 0, ‘A1’: 1, ‘A2’: 2, ‘A3’: 3, ‘A4’: 4, ‘A5’: 5, ‘A6’: 6, ‘A7’: 7,
‘B0’: 8, ‘B1’: 9, ‘B2’:10, ‘B3’:11, ‘B4’:12, ‘B5’:13, ‘B6’:14, ‘B7’:15,
‘C0’:16, ‘C1’:17, ‘C2’:18, ‘C3’:19, ‘C4’:20, ‘C5’:21, ‘C6’:22, ‘C7’:23,
‘D0’:24, ‘D1’:25, ‘D2’:26, ‘D3’:27, ‘D4’:28, ‘D5’:29, ‘D6’:30, ‘D7’:31,
}