viewtool

  • 2019-01-18
  • 发表了主题帖: 利用Ginkgo USB-ADC和心率传感器实现一个心率测试仪,带Android端APP源码

    准备: 脉搏传感器:http://pulsesensor.com/ Ginkgo USB-ADC适配器:http://www.viewtool.com/ 带OTG功能的Android手机一部 硬件连接: 手机<-OTG->Ginkgo USB-ADC<->脉搏传感器 连接实物图: http://www.viewtool.com/bbs/data/attachment/forum/201503/14/12380783khqkcqh2iays1y.jpg 发绿色光的就是脉搏传感器,它会根据心率输出规律变换的模拟信号。 APP实测效果截图: http://www.viewtool.com/bbs/data/attachment/forum/201503/14/123813239wjqpzcy3qsynq.jpeg http://www.viewtool.com/bbs/data/attachment/forum/201503/14/123825zysfxdzkt7uf1bz7.jpeg 把手指放到传感器上测试图: http://www.viewtool.com/bbs/data/attachment/forum/201503/14/1237023hrm6eonrmo9k3dz.jpg APP源码(Android Studio工程): http://www.viewtool.com/bbs/static/image/filetype/rar.gif AndroidStudio_USB_ADC_Pulsesensor.rar (430.13 KB, 下载次数: 574)

  • 2019-01-17
  • 发表了主题帖: 如何判断I2C从机的设备地址?

    大家在使用Ginkgo USB-I2C适配器,有个非常重要的信息就是所控制的从机地址必须要知道,否则就无法正确的和I2C从机进行通信,一般来说,在I2C设备的数据手册中都会明确提出这个设备的I2C地址是多少,不过在有的时候,可能手边没有这个设备的地址信息,但是也想和它建立通信,这种情况怎么办呢?下面我们就可以用我们的适配器并配合我们提供的一个小工具来找到这个设备的地址。 实现的基本原理,我们先假设这个I2C从机设备是7bit模式地址,然后我们以此发送所有地址数据,然后判断从机是否正常应答,如果正常应答了,说明这个地址就是这个I2C从机的地址,否则就不是他的地址。 软件界面如下: http://www.viewtool.com/bbs/data/attachment/forum/201406/20/135908mm0o0v0t03iwjrw0.png 从软件输出的信息可以看到,当发送0xD0地址的时候,从机正常应答了,而发送其他地址的时候从机都没应答,这就能说明从机设备地址就是0xD0. 软件下载: http://www.viewtool.com/bbs/static/image/filetype/rar.gif Ginkgo_USB-I2C_AutoAddr_Setup_v1.0.0.rar (8.82 MB, 下载次数: 143) 点击进入纬图官方淘宝店! 此内容由EEWORLD论坛网友viewtool原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-01-16
  • 发表了主题帖: Ginkgo USB-SPI主机模式下四种数据传输模式时序图

    1、CPHA=0,CPOL=0: 软件设置: http://www.viewtool.com/bbs/data/attachment/forum/201401/06/1526466h0mzsdyb80m1bym.png 波形时序: http://www.viewtool.com/bbs/data/attachment/forum/201401/06/152641j11kx26vkz6xkjr1.png 2、CPHA=0,CPOL=1: 软件设置: http://www.viewtool.com/bbs/data/attachment/forum/201401/06/152647xbdbw2cdt55bkbay.png 波形时序: http://www.viewtool.com/bbs/data/attachment/forum/201401/06/152643ccd8udl4lt4dc3zr.png 3、CPHA=1,CPOL=0: 软件设置: http://www.viewtool.com/bbs/data/attachment/forum/201401/06/152648fnn54fghnrfrnhqi.png 波形时序: http://www.viewtool.com/bbs/data/attachment/forum/201401/06/1526503b7771y44408r7sy.png 4、CPHA=1,CPOL=1: 软件设置: http://www.viewtool.com/bbs/data/attachment/forum/201401/06/152649t87h206h4j0326m2.png 波形时序: http://www.viewtool.com/bbs/data/attachment/forum/201401/06/152650wxzcveowxxexyvxw.png

  • 2019-01-15
  • 发表了主题帖: 一文读懂低功耗蓝牙BLE4.2 数据包

    BLE = BTLE = Bluetooth Low Energy (低功耗蓝牙) 1. 怎样抓取(侦听)BLE4.2 空中数据包 (全频道抓取:37,38,39 同时)    * 硬件:          1) 一台BLE4.2 设备 (如: Nordic 52832, NXP QN9080, Telink 8266, EM9304, ...);          2) 一台智能手机(平板):如 Pixel 2 或者 iPhone7 (或者更高版本);          3) 一台纬图Hollong BLE4.2 侦听仪    * 软件: Hollong BLE4.2 侦听仪软件         下载地址:         纬图Hollong BLE4.2 侦听仪软件 2. 广播包(Advertising )     http://www.viewtool.com/forum/data/attachment/forum/201712/21/0020268iftt8fvi5y358vi.jpg       http://www.viewtool.com/forum/data/attachment/forum/201712/21/001901dkg0uugdrccl2skq.png 3.  扫描请求(SCAN REQUEST)     http://www.viewtool.com/forum/data/attachment/forum/201712/21/0036231ph1pls1jvnlefe5.jpg        http://www.viewtool.com/forum/data/attachment/forum/201712/21/003612rcmgtmk111ootmyk.png 4.  扫描响应(SCAN RESPONSE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/003626x03z0yvzt0r0tvj3.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/00361636vtzvfiofafpzch.png 5.  连接请求(CONNECTION REQUEST) http://www.viewtool.com/forum/data/attachment/forum/201712/21/003620rraqwana4uwnuprj.png http://www.viewtool.com/forum/data/attachment/forum/201712/21/003604gy76igzxyg0g8ti5.png http://www.viewtool.com/forum/data/attachment/forum/201712/21/003608j1mv0pymfyavy3gm.png 6.  版本号指示(VERSION INDICATE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/002031xq1sxmrp31igqxq9.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/001911a8bdqb8rn00qrga9.png 7. 功能请求(FEATURE REQUEST) http://www.viewtool.com/forum/data/attachment/forum/201712/21/0052306kmmlsj8ls6js67v.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/001916gn6dkg409tgk8ccp.png 8. 功能响应(FEATURE RESPONSE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/005232297nyy3xnlzlhii7.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/001921z52fitptvpf53ppp.png 9. 长度请求及响应(LL_LENGTH_REQ and LL_LENGTH_RSP) http://www.viewtool.com/forum/data/attachment/forum/201712/21/005628bzpp144m1twx414w.jpg 请求: http://www.viewtool.com/forum/data/attachment/forum/201712/21/010044r1mklm133u7g1z3m.png 响应: http://www.viewtool.com/forum/data/attachment/forum/201712/21/001938clnuwnnoo3um5w4z.png 10. 最大传输单位请求(MTU REQUEST) http://www.viewtool.com/forum/data/attachment/forum/201712/21/010547wyy3wtnw39ywnzn0.png http://www.viewtool.com/forum/data/attachment/forum/201712/21/0019429q3yinjnoj6ix89u.png 11. 最大传输单位响应(MTU RESPONSE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/0105490y00mw3xc03ettex.png http://www.viewtool.com/forum/data/attachment/forum/201712/21/01055288qq7r3jch3rgqzc.png http://www.viewtool.com/forum/data/attachment/forum/201712/21/001947nrfjaurrkc8crpa8.png 12. 读取组类型请求(READ BY GROUP TYPE REQUEST) http://www.viewtool.com/forum/data/attachment/forum/201712/21/011828jszw48c899w42fsa.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/001957u6nyutt86nln8wbh.png 13. 读取组类型响应(READ BY GROUP TYPE RESPONSE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/01182676dma9mgg96779jx.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/002002arotz4z53olowk85.png 14. 类型读取请求(READ BY TYPE REQUEST) http://www.viewtool.com/forum/data/attachment/forum/201712/21/011831k9v957gj4kytkcj9.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/002006vclq34nnvpqp4cvv.png 15. 类型读取响应(READ BY TYPE RESPONSE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/0118356fojdc2c0cffhihh.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/002013o42fjpovfd9fd9cf.png 16. 寻找信息请求(FIND INFORMATION REQUEST) http://www.viewtool.com/forum/data/attachment/forum/201712/21/012525iccac1zlf2ar1frn.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/001927itbiru2kkxzkuiff.png 17. 寻找信息响应(FIND INFORMATION RESPONSE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/012527s9g8vw8wweg90sgo.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/001931uqeil1z60cqc7ps0.png 18. 写请求(WRITE REQUEST) http://www.viewtool.com/forum/data/attachment/forum/201712/21/0118447tkeeekokttyiye6.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/002035i9pvaxexdkaj7nex.png 19. 写响应(WRITE RESPONSE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/011846azhgv7ae7nx7861e.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/002041n889x0nckpz2eszr.png 20. 读请求(READ REQUEST) http://www.viewtool.com/forum/data/attachment/forum/201712/21/011839oo0q2p77ptlpq12k.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/002016cwkjqkc9vdddvsws.png 21. 读响应(READ RESPONSE) http://www.viewtool.com/forum/data/attachment/forum/201712/21/011840hk4t4ypn7euuerk8.png http://www.viewtool.com/forum/data/attachment/forum/201712/21/002022aay1jr8plznym6ir.png 22. 通知(NOTIFICATION) http://www.viewtool.com/forum/data/attachment/forum/201712/21/01182533a5xix8ibd3ao73.jpg http://www.viewtool.com/forum/data/attachment/forum/201712/21/001952hu3abxccwcqy2bcw.png 关注纬图公众号【纬图物联】: http://www.viewtool.com/images/vtqr.jpg

  • 2019-01-14
  • 发表了主题帖: 市面上常见BLE设备通信数据集合

    前言: 本帖主要收集市面上常见的BLE设备通信数据,这些数据可以用来学习BLE开发或者对自己产品设计提供一些参考,我会不断增加完善不同的设备数据,大家也可以推荐一些常见的设备。 数据文件是用Wireshark导出的,所以必须安装Wireshark软件才能查看,大家可以到官网下载,也可以到我们网站下载。 下载链接:点击下载Wireshark Wireshark软件显示样例: http://www.viewtool.com/bbs/data/attachment/forum/201707/25/180515v3vkrevlrhruv7hm.png 数据包罗列: 1,小米手环1的广播包以及跟手机进行通信的数据包 http://www.viewtool.com/bbs/static/image/filetype/rar.gif 小米手环1 抓取的带SMP 协议的包文件.rar (4.92 KB, 下载次数: 80) 此内容由EEWORLD论坛网友viewtool原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-01-12
  • 发表了主题帖: 一分钟读懂低功耗蓝牙连接数据包

    一分钟读懂低功耗蓝牙(BLE)连接数据包 1.概述    BLE 连接过程中有三个重要的数据包:SCAN_REQ, SCAN_RSP 和 CONNECT_REQ。    SCAN_REQ: 扫描请求,由主设备(MASTER DEVICE)向从设备(SLAVE DEVICE)发出,目的是为了获得从设备的响应以得到更多的从设备               广播数据信息(包括设备名字,或者服务UUID,及其它如厂家特定格式的信息(如硬件版本,软件版本号,设备系列号等等)    SCAN_RSP:  从设备对就主设备发起的SCAN_REQ的响应,作为广播包的补充,从设备可以给主设备更多的广播数据,比如说,有些设备在广播               包里面没有设备名字,这个时候就可以把设备名字放在这个包里面发给主设备    CONNECT_REQ:主设备向从设备发出连接请求。至此连接建立完成(从设备不会响应这个请求),如果从设备没有连接上面的问题的话,以后               主从双方会开始相互交换有效数据(基于GAP,GATT及SMP协议)或者交换空包。    以下对这三个数据包进行详细解读 2.关键字:Hollong BLE 侦听仪,低功耗蓝牙嗅探器, BLE 分析仪,BLE 数据抓取   Keyword: Hollong BLE Sniffer, BLE Data Analyzer,BLE Capture 3.抓取连接数据包的准备工作   * 硬件:一个BLE设备(从设备)及对应的主设备(如智能手机里面的相关应用程序,或者通用BLE 工具软件);            一台HOLLONG BLE SNIFFER (Hollong BLE 侦听仪)   * 软件:Hollong 蓝牙4.0/4.1 BLE协议监控分析仪 软件         下载链接:         http://www.viewtool.com/index.ph ... hollong-4-0-4-1-ble 4. SCAN_REQ 包    1)完整包 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110312lf1052vrr0023g5n.png   2) 存取地址 (Access Address)   对于广播包,这是一个固定长度(4个字节)及固定内容(0x8e89bed6)的主从设备识别广播包的存取地址。 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/1102586bgd9dos4hg0hof6.png   3)  头信息 (Header Info)   固定为2个字节:分解为16个位来使用    位[0:3]:P广播包(PDU) 类型,总共有6个类型:         PDU Type         b3b2b1b0 Packet Name         0000 ADV_IND: 可连接通用连接广播         0001 ADV_DIRECT_IND:可连接定向连接(指定设备)广播         0010 ADV_NONCONN_IND:不可连接通用广播         0011 SCAN_REQ:扫描请求         0100 SCAN_RSP:扫描响应         0101 CONNECT_REQ:连接请求         0110 ADV_SCAN_IND:可扫描通用广播         0111-1111 Reserved    位[4:5]:保留    位[6]:RxAdd    位[7]:TxAdd    位[8:13]:广播数据长度 (最大为37 字节)    位[14:15]:保留 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110301dgcspcgku0qkmkd2.png   4) 主设备地址 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110302b97nb0nuub7z334c.png   5)从设备地址 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110303egu0nz7egezyekxc.png   6)CRC http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110259qoqmf0dnafp7znl5.png 4. SCAN_RSP 包     1)存取地址           定义同上 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/125433298sxz89sg88g8b9.png     2)头信息           定义同上 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/1254347ddyfkdm767kx778.png     3)从设备地址          固定6个字节的从设备地址(MAC ADDRESS) http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110311yopooqpaxy2yqqht.png     4)响应数据(广播数据)         格式同广播数据格式(详见文“1分钟读懂低功耗蓝牙广播数据”), 在这个包里面,数据为0(没有数据) http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110308xxxmzvxualay4uxo.png         5)CRC     固定为3个字节 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110307vsgktjd5ga8daydd.png 5. CONNECT_REQ 包      1)存取地址       固定4个字节和内容(0x8e89bed6)的存取地址,BLE 芯片使用这个固定的地址作为广播通道的BLE数据接收。 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110239gbgljnh7jwmw1bff.png     2)头信息       二个字节的头信息(解析格式同上) http://www.viewtool.com/bbs/data/attachment/forum/201707/26/1102465tfasifnjnl03l0c.png     3)主设备地址     http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110250yvwv7ibpwvbnn9f7.png      4)从设备地址     http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110251rbpsbz15iqzlsju0.png      5)存取地址           在此指定连接后使用的存取地址(BLE 数据通道),这个地址是由内部指定的非确定的4个字节长度的地址,不像广播数据通道使用固定内容的存取地址。       http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110245pt2pm9rr2928w9o5.png      6)CRC INIT           初始化的CRC 值,以后被使用于数据CRC 校验       http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110243t2sthstt4s242f22.png      7)窗口时间 (Win Size)           http://www.viewtool.com/bbs/data/attachment/forum/201707/26/1102550s46yi8ywzy8pd6i.png      8) 窗口偏移           http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110254qi49i9zcdvznbsce.png      9)数据间隔时间 (CONNECTION INTERVAL)           发送两个数据包(或者空包)的间隔时间。           计算公式为:24 (0x18) * 1.25ms = 30ms, 在抓取的数据包中可以看到,每两个包之间的间隔是30MS。 下载此数据包需要注册。           http://www.viewtool.com/bbs/data/attachment/forum/201707/26/1102423kcjlqelkpr3x2kl.png       10)时延(Latency)           http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110249rt8edgu00o8gpyrc.png              11) 中断连接最大时延(TIME OUT)           当主从双方有一方在大于此时间后没有接收到任何数据包或者空包,则由连接状态转为非连接状态(主设备可以重新开始 扫描, 从设备也可以重新开始广播,具体做什么由应用程序决定)。           计算方法: 最大时延 = TIME_OUT * 10MS, 在此为:72 (0X48) * 10 = 720 MS, 也就是说,如果双方在0.72秒期间没有收到任何数据包或者空包,则视为连接中断,由连接状态转为非连接状态,开始做应用程序要求做的事情。           http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110253eepmzr55fuszsseu.png        12)跳频通道图(CHANNEL MAP)          这个跳频图是由BLE 芯片根据周围环境中可以使用的BLE 通道而制定出来,根据扫描测试的环境不同(指被占用的频谱资源不同)而不同,当这个图(表)通过CONNECT_REQ 包发送给从设备后,主从双方都会根据这个图来同步跳频(HOPPING),低功耗蓝牙设备通过这个方法能够有效避开拥堵的频道,使用比较“干净”,无(少)干扰的频道来交换数据,从而大幅提升传输数据的稳定可靠性。        http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110241owv3roo36eolmr63.png        由于这个是在比较干净(周围几乎没有任何BLE 设备或者其它工作在2.4G频段,类似频道的强信号设备)的环境下面工作的主从设备,所以可以看出,它使用了所有频道(除了广播专用频道37,38,39)作为跳频图。             13) HOP 及CLOCK        0xAF (10101111)        HOP: 10101   CLOCK: 111 => 对应晶体精度 为0-20PPm          一个字节的前5个位指定HOP(跳频)算法中需要的数据(HOPINCREMENT),另外三个位指定晶体的精度等级(可以有多少PPM的误差)        SCA masterSCA, 三个位对应的晶体精度等级如下:       000: 251 ppm to 500 ppm        001: 151 ppm to 250 ppm        010: 101 ppm to 150 ppm        011: 76 ppm to 100 ppm        100: 51 ppm to 75 ppm        101: 31 ppm to 50 ppm        110: 21 ppm to 30 ppm        111: 0 ppm to 20 ppm        http://www.viewtool.com/bbs/data/attachment/forum/201707/26/110248xg75riz7ya2an59n.png      14)CRC       同上 http://www.viewtool.com/bbs/static/image/filetype/pdf.gif Core_V4.0_LE.pdf (818.21 KB, 下载次数: 226) http://www.viewtool.com/bbs/static/image/filetype/zip.gif em9304 fineme 071117.zip (19.05 KB, 下载次数: 127) 原文链接: http://www.viewtool.com/bbs/foru ... e=1&extra=#pid71204 微信公众号: 纬图物联 http://www.viewtool.com/bbs/data/attachment/forum/201707/26/130932bdmsfifir7ok8oes.jpg

  • 2019-01-11
  • 发表了主题帖: I2C接口的EEPROM烧写软件介绍以及源码下载

    本软件可以通过Ginkgo I2C适配器对EEPROM芯片进行读写数据,当然也可以自己修改程序用于自己的硬件。 软件功能简介: http://www.viewtool.com/bbs/data/attachment/forum/201303/18/144047cewxaswwe3hcg3hy.jpg 支持多通道操作,硬件模式支持2个通道,软件模式支持8个通道。可以根据不同的EEPROM型号设置不同字节长度的子地址宽度。可以根据不同的芯片设置连续写数据字节长度(数据包长)。可以设置不同的总线速率。、可以设置EEPROM在I2C总线上的地址。可以读数据、写数据、对比数据。可以打开文件,并将文件中的数据写在软件右侧界面上。可以将右侧界面中的数据保存为文件。读写数据有进度显示。带各种操作日志记录。 可以直接运行的软件包下载: http://www.viewtool.com/bbs/static/image/filetype/rar.gif Ginkgo EEPROM.rar (4.42 MB, 下载次数: 139) 程序源码下载: http://www.viewtool.com/bbs/static/image/filetype/rar.gif I2C_EEPROM_SR.rar (1.08 MB, 下载次数: 148)

  • 2019-01-04
  • 发表了主题帖: 利用Ginkgo适配器实现一个PM2.5/粉尘物/颗粒物检测仪

    随着大家对空气质量的关心,相信大家也比较关心自己生活环境的空气质量,比如空气中的灰尘浓度等,下面我们就用GP2Y1050AU0F传感器加上Ginkgo适配器实现一个灰尘浓度检测仪。 传感器内部功能图: http://www.viewtool.com/bbs/data/attachment/forum/201408/14/123415u0vk2hq5ug9fqx6z.jpg 该传感器有两种方式输出信号,串口输出和模拟电压值输出,所以我们可以利用Ginkgo的UART功能和ADC功能来实现灰尘浓度检测。 传感器电压输出与灰尘浓度对应表: http://www.viewtool.com/bbs/data/attachment/forum/201408/14/123630cztu97e7ui95yso5.jpg 有了上表,我们就可以通过测量模拟电压输出值或者根据串口输出数据得到当前环境中的灰尘浓度。 下图为基于Ginkgo适配器设计的上位机界面: http://www.viewtool.com/bbs/data/attachment/forum/201408/14/123940sbow2batwn8vo2uo.jpg 该程序同时测量模拟电压和串口输出的数据,并以两条曲线方式显示。 在实际使用中注意,为减小测量误差,模拟电压输出建议增加一个低通滤波器对信号进行滤波处理,否则测量出来的值误差较大,如果用串口的数据则没有这个问题。 实物连接: http://www.viewtool.com/bbs/data/attachment/forum/201408/16/104536sm4wkoxmh90bvm0n.jpg 上位机软件安装包: http://www.viewtool.com/bbs/static/image/filetype/rar.gif Ginkgo_USB-UART_PM2.5_Setup_v1.0.0.rar (9.41 MB, 下载次数: 1281) 上位机软件源码(Qt+qwt): http://www.viewtool.com/bbs/static/image/filetype/rar.gif Qt_USB_UART_PM2.5.rar (173.18 KB, 下载次数: 71) 点击查看Ginkgo适配器!

  • 2019-01-03
  • 发表了主题帖: 一分钟读懂低功耗蓝牙(BLE)MTU交换数据包

    1.概述   * MTU: 最大传输单元(MAXIMUM TRANSMISSION UNIT) , 指在一个PDU (Protocol Data Unit: 协议数据单元,在一个传输单元中的有效传输数 据)能够传输的最大数据量(多少字节可以一次性传输到对方)。   * MTU 交换是为了在主从双方设置一个PDU中最大能够交换的数据量,通过MTU的交换和双方确认(注意这个MTU是不可以协商的,只是通知对方,双方在知道对方的极限后会选择一个较小的值作为以后的MTU,比如说,主设备发出一个150个字节的MTU请求,但是从设备回应MTU是23字节,那么今后双方要以较小的值23字节作为以后的MTU),主从双方约定每次在做数据传输时不超过这个最大数据单元     MTU交换通常发生在主从双方建立连接关系后(参见"一分钟读懂低功耗蓝牙连接数据包")     做个对比就可以知道BLE MTU 比较小(不过新的BLE 标准MTU 已经大幅提升,详见即将发表在VIEWTOOL BBS上的后续文章)。   ****************************************************************“*************************          以太网:1500   IEEE 802.3/802.2: 1492   X.25: 576   BLE: 23   => 这就是为什么WIFI 可以用于传输视频,传统蓝牙(BT)可以传输音频,而低功耗蓝牙(BTLE 或者BLE)只能够传输控制数据的原因了。   ******************************************************************************************   * MTU 交换命令:属于ATT 命令   * MTU 交换过程:如下图     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/0916276km1tkm1w00r0kmk.png   * MTU 两个命令(“MTU 请求”及“MTU 响应”)详解如下(见“4”) 2.关键字:Hollong BLE 侦听仪,低功耗蓝牙嗅探器, BLE 分析仪,BLE 数据抓取   Keyword: Hollong BLE Sniffer, BLE Data Analyzer,BLE Capture 3.抓取数据包的准备工作   * 硬件:一个BLE设备(从设备)及对应的主设备(如智能手机里面的相关应用程序,或者通用BLE 工具软件);            一台HOLLONG BLE SNIFFER (Hollong BLE 侦听仪)   * 软件:Hollong 蓝牙4.0/4.1 BLE协议监控分析仪 软件, 使用本软件可以打开本文中的数据包附件,进而可以更加方便及更加全面地了解更多细节(包括最全面的数据及数据解析)         下载链接:        http://www.viewtool.com/index.ph ... hollong-4-0-4-1-ble 4. MTU 请求(REQEUST)    完整数据(以下关注蓝色标注部分)     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/085943upjxphwzcevq5bcp.png     1)  存取地址     Access Address: 0xaf9a8c69     固定为4个字节,其值由连接请求数据包指定(详见“一分钟读懂低功耗蓝牙连接数据包”)     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/0859268x1bd3zr5rk44fkf.png    2) 头信息  Data Header: 0x0706    000. .... = RFU: 0     ...0 .... = More Data: False     .... 0... = Sequence Number: 0     .... .1.. = Next Expected Sequence Number: 1     .... ..10 = LLID: Start of an L2CAP message or a complete L2CAP message with no fragmentation (0x2)     000. .... = RFU: 0     ...0 0111 = Length: 7     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/085930y4dovdt6ydfv7knp.png  3) L2CAP 长度     在BLE中,GAP,GATT,SMP 都使用L2CAP 通道将命令及数据打包送到链路层(LINK LAYER),L2CAP 打包过程中需要指定L2CAP的长度及通道号。     Length: 3     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/085939j8xi2u2f6ba3r4r3.png    4) L2CAP 通道号(CID):channel ID    CID: Attribute Protocol (0x0004)     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/085933ybrsz8sur8fyrfuh.png         5) ATT 命令      标准发下:       http://www.viewtool.com/bbs/data/attachment/forum/201707/27/085941jzl7l0eb7jlltret.png            实际数据包:     Opcode: Exchange MTU Request (0x02)     0... .... = Authentication Signature: False     .0.. .... = Command: False     ..00 0010 = Method: Exchange MTU Request (0x02)       http://www.viewtool.com/bbs/data/attachment/forum/201707/27/0859378sy5s01152s2x5f1.png        6) MTU 值 (请求的值)     Client Rx MTU: 185     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/0859355rwsrrkyh3khnzwz.png        7) CRC     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/085928du5clfwwouwvy4un.png 4. MTU 响应(RESPONSE)     完整数据包:     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/091631fx22okv22fq51mtv.png     1) 存取地址     Access Address: 0xaf9a8c69     固定为4个字节,其值由连接请求数据包指定(详见“一分钟读懂低功耗蓝牙连接数据包”)     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/091630rlrzzlerzzmwrmom.png     2. 头信息     Data Header: 0x0712    000. .... = RFU: 0     ...1 .... = More Data: True     .... 0... = Sequence Number: 0     .... .0.. = Next Expected Sequence Number: 0     .... ..10 = LLID: Start of an L2CAP message or a complete L2CAP message with no fragmentation (0x2)     000. .... = RFU: 0     ...0 0111 = Length: 7     http://www.viewtool.com/bbs/data/attachment/forum/201707/27/091634rxew0zgrvew1jjl3.png     3. L2CAP 长度         解释同(请求包)。         Length: 3        http://www.viewtool.com/bbs/data/attachment/forum/201707/27/091637ntrpxtxrzzarrrzr.png     4. L2CAP 通道号         解释同(请求包)。        CID: Attribute Protocol (0x0004)        http://www.viewtool.com/bbs/data/attachment/forum/201707/27/09163527837jp5w43p4qq3.png     5. ATT 命令        标准:        http://www.viewtool.com/bbs/data/attachment/forum/201707/27/091628m2g916durppp516p.png        实例:        Opcode: Exchange MTU Response (0x03)    0... .... = Authentication Signature: False     .0.. .... = Command: False     ..00 0011 = Method: Exchange MTU Response (0x03)        http://www.viewtool.com/bbs/data/attachment/forum/201707/27/091639cwzm4mkazwymdc7e.png      6) MTU 值       Server Rx MTU: 23        http://www.viewtool.com/bbs/data/attachment/forum/201707/27/0916388lp3ttc1qcipqptl.png       7)CRC        CRC: 0xf4767e     [Expert Info (Note/Checksum): CRC unchecked, not all data available]        http://www.viewtool.com/bbs/data/attachment/forum/201707/27/091633o2ikkrwv3iggn6gi.png                  下载完整抓取到的数据包: http://www.viewtool.com/bbs/static/image/filetype/zip.gif em9304 fineme 071117.zip (19.05 KB, 下载次数: 197)        原文链接:         http://www.viewtool.com/bbs/forum.php?mod=viewthread&tid=63214         微信公众号: 纬图物联          http://www.viewtool.com/bbs/data/attachment/forum/201707/27/093210s92bsceien2iz2bs.jpg 此内容由EEWORLD论坛网友viewtool原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-01-02
  • 发表了主题帖: Ginkgo USB-SPI适配器从机模式使用注意事项

    有用户在把纬图的Ginkgo USB-SPI适配器当作从机模式使用的时候遇到一些问题,我根据他们的问题做了个简单的总结和注意事项,希望对以后使用从机模式的用户有一定的帮助。 对于SPI从机模式的使用,比较重要一点就是对SPI数据传输协议的理解,最主要的就是对时钟极性和时钟相位的理解,如果你对时钟相位和时钟极性不是很清楚,那么也没太大关系,你只需要记住将Ginkgo USB-SPI适配器的时钟相位和时钟极性设置成和你主机一样即可。总的来说有以下几点需要注意: 时钟极性和时钟相位必须和主机设置一样;硬件连接一定要正确,主机MISO接从机MISO,主机MOSI接从机MOSI,主机SCLK接从机SCLK,主机SSEL接从机SSEL,主机和从机地线最好也接在一起;Ginkgo USB-SPI适配器是以SSEL0作为片选信号,低电平有效,该引脚不能一直为低电平,否则接收到的数据不能上传到PC,在数据传输的时候该引脚由主机拉低,数据传输完毕后必须由主机拉高,片选信号被拉高后,主机发送给从机的数据才能被PC端接收到;为保证数据传输的可靠性,数据传输时钟信号频率不能太高,目前在18MHz测试数据传输稳定可靠。

  • 2018-12-29
  • 发表了主题帖: AM2311/AM2321B温湿度传感器上位机测试程序及源码下载

    AM2311/AM2321B温湿度传感器为I2C接口的数字传感器,利用Ginkgo USB-I2C适配器可以快速搭建一个温湿度测量平台,借用PC的强大功能可以实现对温湿度数据的存储及图形显示。 下图为基于Ginkgo USB-I2C适配器实现的温湿度测量软件界面: http://viewtool.com/bbs/data/attachment/forum/201408/14/170835we9eret3zr9zen00.jpg 软件安装包下载(若运行提示缺少文件则需要先安装Ginkgo USB-I2C适配器驱动): http://viewtool.com/bbs/static/image/filetype/rar.gif Ginkgo_USB-I2C_AM2311_Setup_v1.0.0.rar (9.33 MB, 下载次数: 11691) 程序源码下载: http://viewtool.com/bbs/static/image/filetype/rar.gif Qt_USB_I2C_AM2311.rar (6.16 MB, 下载次数: 274) 点击查看Ginkgo USB-I2C适配器详细信息 此内容由EEWORLD论坛网友viewtool原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2018-12-28
  • 发表了主题帖: 利用SPI适配器读写控制AT45DBXX存储器芯片

    1.设置SPI适配器参数 http://viewtool.com/bbs/data/attachment/forum/201303/01/134007yb707pf02edadeau.jpg 2.向AT45DBXX存储器写入控制字“9F”,设置读取字节数据长度read bits为4字节,点击“send、read data”。 http://viewtool.com/bbs/data/attachment/forum/201303/01/134013ss6lp1z1zls1qmms.jpg 3向AT45DBXX存储器写入数据“ FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ”,具体命令控制字请参考数据手册 http://viewtool.com/bbs/data/attachment/forum/201303/01/134017xixhhxw3t1h8zhhq.jpg 4,读取数据,设置读取数据长度read bits为16个字节。点击“send、read data”,具体命令控制字请参考数据手册。 http://viewtool.com/bbs/data/attachment/forum/201303/01/134021h6f7t2nh2xsel8nz.jpg 软件下载地址:http://www.viewtool.com/index.php?option=com_content&view=article&id=94:driver-down&catid=39:softdownload&Itemid=18&lang=en 驱动地址:http://www.viewtool.com/index.php?option=com_content&view=article&id=98:driver-down&catid=39:softdownload&Itemid=18&lang=en 产品地址:http://item.taobao.com/item.htm?spm=a230r.1.10.37.hOv5x5&id=21018708025

  • 2018-12-27
  • 发表了主题帖: 一分钟读懂低功耗蓝牙连接数据包

    一分钟读懂低功耗蓝牙(BLE)连接数据包 1.概述    BLE 连接过程中有三个重要的数据包:SCAN_REQ, SCAN_RSP 和 CONNECT_REQ。    SCAN_REQ: 扫描请求,由主设备(MASTER DEVICE)向从设备(SLAVE DEVICE)发出,目的是为了获得从设备的响应以得到更多的从设备               广播数据信息(包括设备名字,或者服务UUID,及其它如厂家特定格式的信息(如硬件版本,软件版本号,设备系列号等等)    SCAN_RSP:  从设备对就主设备发起的SCAN_REQ的响应,作为广播包的补充,从设备可以给主设备更多的广播数据,比如说,有些设备在广播               包里面没有设备名字,这个时候就可以把设备名字放在这个包里面发给主设备    CONNECT_REQ:主设备向从设备发出连接请求。至此连接建立完成(从设备不会响应这个请求),如果从设备没有连接上面的问题的话,以后               主从双方会开始相互交换有效数据(基于GAP,GATT及SMP协议)或者交换空包。    以下对这三个数据包进行详细解读 2.关键字:Hollong BLE 侦听仪,低功耗蓝牙嗅探器, BLE 分析仪,BLE 数据抓取   Keyword: Hollong BLE Sniffer, BLE Data Analyzer,BLE Capture 3.抓取连接数据包的准备工作   * 硬件:一个BLE设备(从设备)及对应的主设备(如智能手机里面的相关应用程序,或者通用BLE 工具软件);            一台HOLLONG BLE SNIFFER (Hollong BLE 侦听仪)   * 软件:Hollong 蓝牙4.0/4.1 BLE协议监控分析仪 软件         下载链接:         http://www.viewtool.com/index.ph ... hollong-4-0-4-1-ble 4. SCAN_REQ 包    1)完整包 http://viewtool.com/bbs/data/attachment/forum/201707/26/110312lf1052vrr0023g5n.png   2) 存取地址 (Access Address)   对于广播包,这是一个固定长度(4个字节)及固定内容(0x8e89bed6)的主从设备识别广播包的存取地址。 http://viewtool.com/bbs/data/attachment/forum/201707/26/1102586bgd9dos4hg0hof6.png   3)  头信息 (Header Info)   固定为2个字节:分解为16个位来使用    位[0:3]:P广播包(PDU) 类型,总共有6个类型:         PDU Type         b3b2b1b0 Packet Name         0000 ADV_IND: 可连接通用连接广播         0001 ADV_DIRECT_IND:可连接定向连接(指定设备)广播         0010 ADV_NONCONN_IND:不可连接通用广播         0011 SCAN_REQ:扫描请求         0100 SCAN_RSP:扫描响应         0101 CONNECT_REQ:连接请求         0110 ADV_SCAN_IND:可扫描通用广播         0111-1111 Reserved    位[4:5]:保留    位[6]:RxAdd    位[7]:TxAdd    位[8:13]:广播数据长度 (最大为37 字节)    位[14:15]:保留 http://viewtool.com/bbs/data/attachment/forum/201707/26/110301dgcspcgku0qkmkd2.png   4) 主设备地址 http://viewtool.com/bbs/data/attachment/forum/201707/26/110302b97nb0nuub7z334c.png   5)从设备地址 http://viewtool.com/bbs/data/attachment/forum/201707/26/110303egu0nz7egezyekxc.png   6)CRC http://viewtool.com/bbs/data/attachment/forum/201707/26/110259qoqmf0dnafp7znl5.png 4. SCAN_RSP 包     1)存取地址           定义同上 http://viewtool.com/bbs/data/attachment/forum/201707/26/125433298sxz89sg88g8b9.png     2)头信息           定义同上 http://viewtool.com/bbs/data/attachment/forum/201707/26/1254347ddyfkdm767kx778.png     3)从设备地址          固定6个字节的从设备地址(MAC ADDRESS) http://viewtool.com/bbs/data/attachment/forum/201707/26/110311yopooqpaxy2yqqht.png     4)响应数据(广播数据)         格式同广播数据格式(详见文“1分钟读懂低功耗蓝牙广播数据”), 在这个包里面,数据为0(没有数据) http://viewtool.com/bbs/data/attachment/forum/201707/26/110308xxxmzvxualay4uxo.png         5)CRC     固定为3个字节 http://viewtool.com/bbs/data/attachment/forum/201707/26/110307vsgktjd5ga8daydd.png 5. CONNECT_REQ 包      1)存取地址       固定4个字节和内容(0x8e89bed6)的存取地址,BLE 芯片使用这个固定的地址作为广播通道的BLE数据接收。 http://viewtool.com/bbs/data/attachment/forum/201707/26/110239gbgljnh7jwmw1bff.png     2)头信息       二个字节的头信息(解析格式同上) http://viewtool.com/bbs/data/attachment/forum/201707/26/1102465tfasifnjnl03l0c.png     3)主设备地址     http://viewtool.com/bbs/data/attachment/forum/201707/26/110250yvwv7ibpwvbnn9f7.png      4)从设备地址     http://viewtool.com/bbs/data/attachment/forum/201707/26/110251rbpsbz15iqzlsju0.png      5)存取地址           在此指定连接后使用的存取地址(BLE 数据通道),这个地址是由内部指定的非确定的4个字节长度的地址,不像广播数据通道使用固定内容的存取地址。       http://viewtool.com/bbs/data/attachment/forum/201707/26/110245pt2pm9rr2928w9o5.png      6)CRC INIT           初始化的CRC 值,以后被使用于数据CRC 校验       http://viewtool.com/bbs/data/attachment/forum/201707/26/110243t2sthstt4s242f22.png      7)窗口时间 (Win Size)           http://viewtool.com/bbs/data/attachment/forum/201707/26/1102550s46yi8ywzy8pd6i.png      8) 窗口偏移           http://viewtool.com/bbs/data/attachment/forum/201707/26/110254qi49i9zcdvznbsce.png      9)数据间隔时间 (CONNECTION INTERVAL)           发送两个数据包(或者空包)的间隔时间。           计算公式为:24 (0x18) * 1.25ms = 30ms, 在抓取的数据包中可以看到,每两个包之间的间隔是30MS。 下载此数据包需要注册。           http://viewtool.com/bbs/data/attachment/forum/201707/26/1102423kcjlqelkpr3x2kl.png       10)时延(Latency)           http://viewtool.com/bbs/data/attachment/forum/201707/26/110249rt8edgu00o8gpyrc.png              11) 中断连接最大时延(TIME OUT)           当主从双方有一方在大于此时间后没有接收到任何数据包或者空包,则由连接状态转为非连接状态(主设备可以重新开始 扫描, 从设备也可以重新开始广播,具体做什么由应用程序决定)。           计算方法: 最大时延 = TIME_OUT * 10MS, 在此为:72 (0X48) * 10 = 720 MS, 也就是说,如果双方在0.72秒期间没有收到任何数据包或者空包,则视为连接中断,由连接状态转为非连接状态,开始做应用程序要求做的事情。           http://viewtool.com/bbs/data/attachment/forum/201707/26/110253eepmzr55fuszsseu.png        12)跳频通道图(CHANNEL MAP)          这个跳频图是由BLE 芯片根据周围环境中可以使用的BLE 通道而制定出来,根据扫描测试的环境不同(指被占用的频谱资源不同)而不同,当这个图(表)通过CONNECT_REQ 包发送给从设备后,主从双方都会根据这个图来同步跳频(HOPPING),低功耗蓝牙设备通过这个方法能够有效避开拥堵的频道,使用比较“干净”,无(少)干扰的频道来交换数据,从而大幅提升传输数据的稳定可靠性。        http://viewtool.com/bbs/data/attachment/forum/201707/26/110241owv3roo36eolmr63.png        由于这个是在比较干净(周围几乎没有任何BLE 设备或者其它工作在2.4G频段,类似频道的强信号设备)的环境下面工作的主从设备,所以可以看出,它使用了所有频道(除了广播专用频道37,38,39)作为跳频图。             13) HOP 及CLOCK        0xAF (10101111)        HOP: 10101   CLOCK: 111 => 对应晶体精度 为0-20PPm          一个字节的前5个位指定HOP(跳频)算法中需要的数据(HOPINCREMENT),另外三个位指定晶体的精度等级(可以有多少PPM的误差)        SCA masterSCA, 三个位对应的晶体精度等级如下:       000: 251 ppm to 500 ppm        001: 151 ppm to 250 ppm        010: 101 ppm to 150 ppm        011: 76 ppm to 100 ppm        100: 51 ppm to 75 ppm        101: 31 ppm to 50 ppm        110: 21 ppm to 30 ppm        111: 0 ppm to 20 ppm        http://viewtool.com/bbs/data/attachment/forum/201707/26/110248xg75riz7ya2an59n.png      14)CRC       同上 http://viewtool.com/bbs/static/image/filetype/pdf.gif Core_V4.0_LE.pdf (818.21 KB, 下载次数: 208) http://viewtool.com/bbs/static/image/filetype/zip.gif em9304 fineme 071117.zip (19.05 KB, 下载次数: 122) 原文链接: http://www.viewtool.com/bbs/foru ... e=1&extra=#pid71204 微信公众号: 纬图物联 http://viewtool.com/bbs/data/attachment/forum/201707/26/130932bdmsfifir7ok8oes.jpg 此内容由EEWORLD论坛网友viewtool原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2018-12-26
  • 发表了主题帖: 我手机是蓝牙4.1的,为什么用抓包设备看不到我手机的报文呢?

    我手机是蓝牙4.1的,为什么用抓包设备看不到我手机的报文呢? http://www.viewtool.com/bbs/forum.php?mod=image&aid=3125&size=300x300&key=bcbed7ff1c4da85ff176e2d1b399459d&nocache=yes&type=fixnone 技术人员:那个IOT是你的蓝牙设备对吧? 然后WIRESHARK 有打开吗? 客户:是的,红米3s手机蓝牙4.1            38:a4:ed:0a:e7:17 技术人员:WIRESHARK里面没有广播包吗? 客户:嗯 那个iot是一个蓝牙灯 技术人员:嗯,首先,你这个是“绿灯”,表示SNIFFER已经抓取到了广播包的,不然不会显示这个设备。 然后正常工作情况下,WIRESHARK会打开并且里面会显示抓取到的数据包(包括解析功能)。 客户:嗯 蓝牙灯的报文是抓到了。 我想抓我手机和蓝牙的通信。 没有发现手机的蓝牙mac 技术人员:它不会显示手机(MASTER端的MAC的)。 只显示设备端(SLAVE端的)。 在WIRESHARK里面会显示所有手机和这个设备之间的通讯包。 2.png (22.34 KB, 下载次数: 16) http://viewtool.com/bbs/data/attachment/forum/201809/11/155725eeehnenuuk7uut3e.png

  • 2018-12-25
  • 发表了主题帖: 利用Ginkgo 2的ADC实现虚拟示波器的功能

    说明: Ginkgo 2有16路ADC,单路ADC采样率可达1M,Ginkgo 2 USB数据传输速度可达600KBye/s,所以完全有能力将数据快速的上传到上位机,Ginkgo 2 ADC主要用到ADC_Init()和ADC_ReadData()两个函数即可,调用方式很简单。上位机程序采用CVI来实现,CVI是NI专门基于测试测量出的一套类似于LABVIEW的库,不过这个库全部是C语言封装的,所以只要有C语言基础要入门上位机软件的编写很快(本人用CVI也才3天而已,所以有什么不对的地方敬请包含)。下面就说说程序实现的基本流程和方法。 程序实现: 1、程序首先初始化Ginkgo 2适配器的ADC模块,调用ADC_Init()函数即可,详细调用方法请参考程序源码。 2、开一个定时器实现定时读取ADC的采样值并将数据在波形图控件上显示,实现方式也只是调用一个函数而已。 3、设计一个可以更改采样速度参数的输入框,当这个输入框中的数据改变后就调用ADC_Init()初始化函数重新设置适配器的采样周期。 程序界面设计: http://www.viewtool.com/bbs/data/attachment/forum/201304/09/1942254tlj4jztx3lgctc6.jpg 实际运行效果: http://www.viewtool.com/bbs/data/attachment/forum/201304/09/194406es6bf54e5w3wjsow.jpg http://www.viewtool.com/bbs/data/attachment/forum/201304/09/1945264kmgckzrc4zkl4sg.jpg 程序源码下载: http://www.viewtool.com/bbs/static/image/filetype/rar.gif MeasuringVoltageOscillograph.rar (760.84 KB, 下载次数: 108) 此内容由EEWORLD论坛网友viewtool原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2018-12-24
  • 发表了主题帖: 利用Ginkgo适配器实现一个PM2.5/粉尘物/颗粒物检测仪

    随着大家对空气质量的关心,相信大家也比较关心自己生活环境的空气质量,比如空气中的灰尘浓度等,下面我们就用GP2Y1050AU0F传感器加上Ginkgo适配器实现一个灰尘浓度检测仪。 传感器内部功能图: http://viewtool.com/bbs/data/attachment/forum/201408/14/123415u0vk2hq5ug9fqx6z.jpg 该传感器有两种方式输出信号,串口输出和模拟电压值输出,所以我们可以利用Ginkgo的UART功能和ADC功能来实现灰尘浓度检测。 传感器电压输出与灰尘浓度对应表: http://viewtool.com/bbs/data/attachment/forum/201408/14/123630cztu97e7ui95yso5.jpg 有了上表,我们就可以通过测量模拟电压输出值或者根据串口输出数据得到当前环境中的灰尘浓度。 下图为基于Ginkgo适配器设计的上位机界面: http://viewtool.com/bbs/data/attachment/forum/201408/14/123940sbow2batwn8vo2uo.jpg 该程序同时测量模拟电压和串口输出的数据,并以两条曲线方式显示。 在实际使用中注意,为减小测量误差,模拟电压输出建议增加一个低通滤波器对信号进行滤波处理,否则测量出来的值误差较大,如果用串口的数据则没有这个问题。 实物连接: http://viewtool.com/bbs/data/attachment/forum/201408/16/104536sm4wkoxmh90bvm0n.jpg 上位机软件安装包: http://viewtool.com/bbs/static/image/filetype/rar.gif Ginkgo_USB-UART_PM2.5_Setup_v1.0.0.rar (9.41 MB, 下载次数: 1277) 上位机软件源码(Qt+qwt): http://viewtool.com/bbs/static/image/filetype/rar.gif Qt_USB_UART_PM2.5.rar (173.18 KB, 下载次数: 67) 点击查看Ginkgo适配器!

  • 2018-12-20
  • 发表了主题帖: Ginkgo I2C适配器读写I2C器件失败的原因?

    1,硬件连接是否正确?官网有引脚定义文档,请仔细对照文档来接线,不能把线接错了。 2,适配器内部总线上没有上拉电阻,所以得确保外部I2C总线上有上拉电阻,两根总线上的上拉电阻推荐在4.7K左右,若太大也可能会出现读写失败的情况。 3,从机地址设置是否正确?我们软件要求从机地址是8bit地址,也就是包含了读写位的从机地址,若实在不知道从设备的地址是多少,可以在官网下载从机地址扫描软件扫描下从机地址。 4,若以上都没问题,那么就得考虑下对芯片的操作是否是符合其要求,比如有的芯片会自动进入睡眠模式,第一次读写数据的时候,它都不会响应,这就导致读写数据失败,但是若立即再次进行数据读写,就可以成功读写数据。

  • 2018-12-17
  • 发表了主题帖: 快速使用Ginkgo CAN适配器教程

    1.1 概述Ginkgo USB-CAN总线适配器是带有USB2.0接口和2路CAN接口的CAN总线适配器,可进行双向数据传送。Ginkgo USB-CAN总线适配器可以被作为一个标准的CAN节点,是CAN总线产品开发、CAN总线设备测试、数据分析的强大工具,采用该接口适配器,PC可以通过USB接口连接一个标准CAN网络,应用于构建现场总线测试实验室、工业控制、汽车电子等领域中,进行数据采集、处理、通讯……同时,USB-CAN接口适配器具有体积小、方便安装等特点,是便携式系统用户的最佳选择。USB-CAN接口适配器产品可以利用纬图虚拟仪器公司提供的Ginkgo CAN Adapter Classic工具软件,直接进行CAN总线的配置,发送和接受。用户也可以参考我公司提供的DLL动态链接库编写自己的应用软件,方便开发出CAN系统应用软件产品。在您进行二次软件开发时,完全不需要了解复杂的USB接口通讯协议。1.2 性能与技术指标USB 与CAN 总线的协议转换; 具有两个通道独立CAN 接口; USB 接口支持USB2.0,兼容USB1.1; 支持CAN2.0A 和CAN2.0B 协议,支持标准帧和扩展帧,每个通道支持多达14个过滤器设置; 支持双向传输,CAN 发送、CAN 接收; 支持数据帧,远程帧格式; CAN 控制器波特率在2Kbps-1Mbps 之间可选,可以软件配置; 最大流量为每秒钟7000帧(扩展ID数据帧8字节),标准远程帧速率可达14000帧每秒; 适配器每个通道具有1200帧数据缓冲区; USB 总线直接供电,无需外部电源; 工作温度:-20~85℃; 工作电流80mA,功耗小于400mW; 外壳尺寸:103mm×53mm×28mm。 1.3 典型应用通过PC或笔记本的USB接口实现对CAN总线网络的发送和接收; 快速CAN网络数据采集、数据分析; CAN 总线-USB 网关; USB 接口转CAN 网络接口; 延长CAN 总线的网络通讯长度; 工业现场CAN 网络数据监控。 1.4 使用流程 将适配器通过CAN收发器连接到CAN总线上;运行Ginkgo CAN Adapter Classic.exe程序;选择设备、选择通道、选择波特率、选择工作模式、点击“初始化设备”对设备进行初始化;若需要接收数据则需要设置过滤器,否则无法接收到数据;勾选“自动接收”,适配器接收到数据后会在显示界面将数据显示出来;可选择远程帧或数据帧,标准帧或扩展帧,填好需要发送的数据,点击“发送数据”及可将数据通过CAN总线发送出去。 1.5 软件截图 http://viewtool.com/bbs/data/attachment/forum/201306/19/150856td4hfztro3qzy23d.png 图一 软件主界面 http://viewtool.com/bbs/data/attachment/forum/201306/19/150856olhxk383od52p3zk.png 图二 初始化设备相关设置 http://viewtool.com/bbs/data/attachment/forum/201306/19/150858mmlyzlh93082m0yr.png 图三 过滤器相关设置 http://viewtool.com/bbs/data/attachment/forum/201306/19/150857cvewv5wvqv4zbqva.png 图四 多过滤器相关设置 http://viewtool.com/bbs/data/attachment/forum/201306/19/1508589g3nz3ixoinogcxk.png 图五 数据发送 http://viewtool.com/bbs/data/attachment/forum/201306/19/1508591bzezew22g9eitkk.png 图六 发送接收显示颜色自定义设置 http://viewtool.com/bbs/data/attachment/forum/201306/19/150859eissqqb27dnrzrvh.png 图七 总线状态监控 http://viewtool.com/bbs/data/attachment/forum/201306/19/150901rbhbcld33dcxg7dg.png 图八 数据发送接收显示 http://viewtool.com/bbs/data/attachment/forum/201306/19/150902yuoglgwgwgf5jlbw.png 图九 列表模式发送数据 http://viewtool.com/bbs/data/attachment/forum/201306/19/150902e060e92fg52520b0.png 图十 软件运行相关状态显示 http://viewtool.com/bbs/data/attachment/forum/201306/19/15144600mm2er2s1sou970.jpg 图十一 CAN适配器实物图 上位机软件V2.7.10版下载: http://viewtool.com/bbs/static/image/filetype/rar.gif Ginkgo CAN Adapter Classic.rar (4.36 MB, 下载次数: 764) 查看更多详细介绍...

  • 2018-12-15
  • 发表了主题帖: STM32上裸奔ucGUI例程(含TFT ili9320驱动程序)

    程序是经过删减的,不知道为什么,在从公司拷回宿舍的电脑的过程中,main文件空了,于是我临时用记事本写了点东西上去,基本表达一下意思。不过也无所谓,本来也就是个Demo,重点在于移植。 这个源码将ucGUI3.90a的源码移植到了STM32上,TFT用的是ili9320驱动,支持触摸屏。 在bsp中开辟了两个定时器,一个算10ms,一个算1s。 在stm32f103x_it.c这个文件中处理两个定时器,10ms的那个实现了ucGUI用户手册上说的1s中调用GUI_TouchExec()这个函数100次左右用来检测触摸,1s的那个是为了有时候一些测试性能时候的方便设置的,那个可以删掉。 因为是裸奔的,自然就不能指望多任务了,经过适当的初始化之后,把要实现的功能写在main函数中好了,记得在超级循环中加入GUI_Exec()来实现回调。 驱动是经过我适当优化的,主要就是去掉函数层层调用,直接改用寄存器操作,尽量使用TFT驱动IC的窗口模式等这种没有什么技术含量的优化,太有技术含量的我也不会,而且深究下去的话会降低ucGUI原本代码的可读性,没有必要了。因为这个暂时还不是重点。 也就这样了,如果有对ucGUI有兴趣的,欢迎一起交流,我在2群199418378,找sprone好了。 顺带说一句,如果要在TFT上显示个数值什么的非中文的字符的话,用这个模板轻易搞定,呵呵,只要再bsp中间把你的数据采集到,在主函数中处理好,只要调用ucGUI那个显示字符的函数就可以了。 http://viewtool.com/bbs/static/image/filetype/rar.gif06_ucgui.rar 3.45 MB, 下载次数: 947 STM32裸奔ucGUI

  • 2018-12-13
  • 发表了主题帖: I2C接口的EEPROM烧写软件介绍以及源码下载

    本软件可以通过Ginkgo I2C适配器对EEPROM芯片进行读写数据,当然也可以自己修改程序用于自己的硬件。 软件功能简介: http://viewtool.com/bbs/data/attachment/forum/201303/18/144047cewxaswwe3hcg3hy.jpg 支持多通道操作,硬件模式支持2个通道,软件模式支持8个通道。可以根据不同的EEPROM型号设置不同字节长度的子地址宽度。可以根据不同的芯片设置连续写数据字节长度(数据包长)。可以设置不同的总线速率。、可以设置EEPROM在I2C总线上的地址。可以读数据、写数据、对比数据。可以打开文件,并将文件中的数据写在软件右侧界面上。可以将右侧界面中的数据保存为文件。读写数据有进度显示。带各种操作日志记录。 可以直接运行的软件包下载: http://viewtool.com/bbs/static/image/filetype/rar.gif Ginkgo EEPROM.rar (4.42 MB, 下载次数: 139) 程序源码下载: http://viewtool.com/bbs/static/image/filetype/rar.gif I2C_EEPROM_SR.rar (1.08 MB, 下载次数: 148) 此内容由EEWORLD论坛网友viewtool原创,如需转载或用于商业用途需征得作者同意并注明出处

TA暂时无记录哦~

最近访客

< 1/1 >

统计信息

已有6人来访过

  • 芯币:114
  • 好友:--
  • 主题:27
  • 回复:1
  • 课时:--
  • 资源:--

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言