DavidZH

  • 2019-09-05
  • 回复了主题帖: 开源一个STM32 USB手柄

    带RF吗??

  • 2019-09-01
  • 回复了主题帖: 2019年STM32全国巡回研讨会即将开启,现在报名赢三重礼

    报名;

  • 2019-08-30
  • 回复了主题帖: 三十而立---一穷二白,重新开始!!!

    本帖最后由 DavidZH 于 2019-8-30 23:03 编辑 你这仪器就好几十万了, 牛逼; 工作感觉是你的副业;哈哈,玩笑话;  祝老板创业成功, 有机会找我买芯片哦,多支持你

  • 回复了主题帖: CP2102与CH340的区别

     哈哈,CP2102 找我,CP2104, CP2108 都是好东西;

  • 2019-08-12
  • 回复了主题帖: 我的TPMS胎压监测的坎坷之路

    老板,快来找我们采购芯片;

  • 2019-08-10
  • 发表了主题帖: 基于PSOC6开发板模拟I2C 解X-NUCLEO-IKS01A3的LIS2DW12

    今天解析LIS2DW12, 模拟IIC接口,先验证ID: uint8_t LIS2DW12_Read_Date(uint8_t SlaveAddress, uint8_t RegAddress) { uint8_t recvDate; uint8_t succ, stime=0; I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); while((succ !=1)&&(stime<3)) { I2C_Stop(); I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); //写 stime++; } I2C_Send_Byte(RegAddress); I2C_Start(); I2C_Send_Byte(SlaveAddress | 0x01); //读 recvDate = I2C_Read_Byte(1); //NACK I2C_Stop(); return recvDate; } printf("PID_LSM2 = %X\r\n",LIS2DW12_Read_Date(LIS2DW12_ADD, 0x0F)); 此内容由EEWORLD论坛网友DavidZH原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 发表了主题帖: 基于PSOC6开发板模拟I2C 解X-NUCLEO-IKS01A3的LSM6DSO

    本帖最后由 DavidZH 于 2019-8-10 23:09 编辑      今天解析LSM6DSO, 接口I模拟IIC, 驱动还是按照原来的, 验证读ID: uint8_t LSM6DSO_Read_Date(uint8_t SlaveAddress, uint8_t RegAddress) { uint8_t recvDate; uint8_t succ, stime=0; I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); while((succ !=1)&&(stime<3)) { I2C_Stop(); I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); //写 stime++; } I2C_Send_Byte(RegAddress); I2C_Start(); I2C_Send_Byte(SlaveAddress | 0x01); //读 recvDate = I2C_Read_Byte(1); //NACK I2C_Stop(); return recvDate; } printf("PID_LSM = %X\r\n",LPS22HH_Read_Date(LSM6DSO_ADD, 0x0F)); 寄存器文件: 此内容由EEWORLD论坛网友DavidZH原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 发表了主题帖: 基于PSOC6开发板模拟I2C 解X-NUCLEO-IKS01A3的LPS22HH

         本次解析的是LPS22HH 芯片, 接口还是IIC,  驱动还是按照原来的, 先实验读ID; uint8_t LPS22HH_Read_Date(uint8_t SlaveAddress, uint8_t RegAddress) { uint8_t recvDate; uint8_t succ, stime=0; I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); while((succ !=1)&&(stime<3)) { I2C_Stop(); I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); //写 stime++; } I2C_Send_Byte(RegAddress); I2C_Start(); I2C_Send_Byte(SlaveAddress | 0x01); //读 recvDate = I2C_Read_Byte(1); //NACK I2C_Stop(); return recvDate; } printf("PID_LPS = %X\r\n",LPS22HH_Read_Date(LPS22HH_ADD, 0x0F)); 此内容由EEWORLD论坛网友DavidZH原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-08-07
  • 回复了主题帖: 【奖品发送完毕】快来访问泰克高速串行通信专题 配置您的专属解决方案 赢好礼!

    确认信息无误,麻烦兑换成E金币,谢谢EEWORLD 和SOSO ;

  • 回复了主题帖: 【免费试用】彻底改变 HMI !TI 最新 MSP430 开发板组合套件,尝鲜体验中

    soso 发表于 2019-8-7 14:00 这是要试用的节奏吗?把测评需求写的详细些:)
      , 时间腾不过来, CYPRESS的触摸我还是比较熟悉;看看其他大侠测试的结果;

  • 回复了主题帖: 【免费试用】彻底改变 HMI !TI 最新 MSP430 开发板组合套件,尝鲜体验中

    来和CYPRESS的触摸比较下,看谁的更好用? 触摸不是TI的强项啊;

  • 回复了主题帖: 下载100%有礼|前30名合格下载 TE 最新传感器白皮书的工程师

    本帖最后由 DavidZH 于 2019-8-7 13:41 编辑 截图如下:

  • 2019-08-06
  • 回复了主题帖: 基于PSOC6开发板模拟I2C 解X-NUCLEO-IKS01A3的HTS221

    dcexpert 发表于 2019-7-30 10:37 可以成功读取ID寄存器,就只需要解析数据。和其它传感器不同在于需要先读取内置的数据,然后进行插值计算, ...
    多谢指教;

  • 2019-07-30
  • 发表了主题帖: 基于PSOC6开发板模拟I2C 解X-NUCLEO-IKS01A3的HTS221

           上一回我们已经验证了I2C 能正确运行,由于HTS221和STTS751 都连在同一I2C BUS总线上,用同一个i2c 程序进行分时复用读取即可; 具体代码如下: uint8_t HTS221_Read_Date(uint8_t SlaveAddress, uint8_t RegAddress) { uint8_t recvDate; uint8_t succ, stime=0; I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); while((succ !=1)&&(stime<3)) { I2C_Stop(); I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); //写 stime++; } I2C_Send_Byte(RegAddress); I2C_Start(); I2C_Send_Byte(SlaveAddress | 0x01); //读 recvDate = I2C_Read_Byte(1); //NACK I2C_Stop(); return recvDate; } 测试: PID = HTS221_Read_Date(HTS221_ADD, HTS221_WHO_AM_I_REG); printf("PID = %X \r\n", PID); CyDelay(800); 具体代码可以参考: 此内容由EEWORLD论坛网友DavidZH原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-07-27
  • 回复了主题帖: 基于PSOC6开发板模拟I2C 解X-NUCLEO-IKS01A3的STTS751;

    本帖最后由 DavidZH 于 2019-7-27 23:04 编辑
    littleshrimp 发表于 2019-7-27 22:12 为什么不把两个板子直接叠起来?不是更方便?
    多谢提醒,的确; ST_X-NUCLEO-IKS01A3 板子上有2组I2C, 其中I2C1 接HTS221,LPS22HH,STTS751,连接在开发板上, 另外一组I2C2, 连接LIS2DW12,LSM6DSO 连接板子的SDA,SCL,  可以直接和开发板连接;

  • 回复了主题帖: arduino的X-NUCLEO-IKS01A3驱动

    dcexpert 发表于 2019-7-25 16:34 arduino的好处是容易复制和使用,缺点是难以改进和调试。
    是啊,都封装成C++;

  • 回复了主题帖: 求X-CUBE-MEMS1固件包

    链接:https://pan.baidu.com/s/1jImRWnRzGwyJGf_AmJ1S0Q  提取码:0i7j  复制这段内容后打开百度网盘手机App,操作更方便哦

  • 发表了主题帖: 基于PSOC6开发板模拟I2C 解X-NUCLEO-IKS01A3的STTS751;

    本帖最后由 DavidZH 于 2019-7-27 21:35 编辑           周末终于有时间来研究下X-NUCLEO-IKS01A3,先从简单的开始,STTS751  是ST的I2C接口的数字温度传感器; 硬件: STTS751  是接的I2C1, 地址0x94, 电压是不常见的2.5V,如果是单独用的话,还得加LDO; 软件:         I2C 底层协议:开始,结束, 发数据和接受数据,ACK, NACK; 具体要看怎么自己怎么写; void I2C_Start(void); void I2C_Stop(void); uint8_t I2C_Send_Byte(uint8_t oneByte); uint8_t I2C_Read_Byte(uint8_t bLSByte);        大概的流程图很简单, 写器件地址,写寄存器地址和读数据即可; uint8_t STTS751_Write_Cmd(uint8_t SlaveAddress, uint8_t RegAddress, uint8_t Cmd) { uint8_t succ, stime=0; I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); while((succ !=1) &&(stime <3)) { I2C_Stop(); I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); stime++; } succ = I2C_Send_Byte(RegAddress); succ = I2C_Send_Byte(Cmd); I2C_Stop(); return succ; } uint8_t STTS751_Read_Date(uint8_t SlaveAddress, uint8_t RegAddress) { uint8_t recvDate; uint8_t succ, stime=0; I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); while((succ !=1)&&(stime<3)) { I2C_Stop(); I2C_Start(); succ = I2C_Send_Byte(SlaveAddress & 0xfe); //写 stime++; } I2C_Send_Byte(RegAddress); I2C_Start(); I2C_Send_Byte(SlaveAddress | 0x01); //读 recvDate = I2C_Read_Byte(1); //NACK I2C_Stop(); return recvDate; } 从原理图上看给的地址是0x94; Main 函数如下: int main(void) { uint8_t PID; uint8_t TempH, TempL; double Temp; Cy_SCB_UART_Init(Uart_Printf_HW, &Uart_Printf_config, &Uart_Printf_context); Cy_SCB_UART_Enable(Uart_Printf_HW); __enable_irq(); /* Enable global interrupts. */ for(;;) { while(1) { PID =STTS751_Read_Date(0x94, 0xfe); TempH = STTS751_Read_Date(0x94, 0x00); printf("TempH = %d \r\n", TempH); printf("PID = %X \r\n", PID); } } } 有个Production ID,还有一个温度值, 32℃, 好热啊!!! PSOC6 和X-NUCLEO-IKS01A3还挺配的,有秋水共长天一色的感觉; 此内容由EEWORLD论坛网友DavidZH原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-07-25
  • 回复了主题帖: arduino的X-NUCLEO-IKS01A3驱动

    dcexpert 发表于 2019-7-21 22:33 开始没有输出,很可能是arduino接口的接触不太好。
    Arduio有直接例子,还有CPP的函数,写的非常好,就是很难理解,

  • 2019-07-18
  • 回复了主题帖: 基于STM32F411RE的ST MEMS传感器板(IKS01A3) 开箱体验!

    hujj 发表于 2019-7-17 20:20     请问楼主使用的是这个网页打开图形操作界面吗?我每次点击最后都是打不开页面,最长的时间等 ...
    我是直接在ST官网下载的,去官网找下,不行的话,再告诉我;

最近访客

< 1/3 >

统计信息

已有116人来访过

  • 芯币:885
  • 好友:1
  • 主题:65
  • 回复:1580
  • 课时:--
  • 资源:4

留言

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


DavidZH 2018-3-13
建议按照完整版,
zhengbang 2018-3-6
您好,我在配置Visual Studio :时,工具栏里没有Embeded Tools Manager,
请问这是什么情况,百度也没找到,文档也没找到。
升级VS2017也没有Embeded Tools Manager选项。  请问能帮忙吗  谢谢
查看全部