CST816D高性能自电容触控芯片数据手册

需积分: 5 31 下载量 51 浏览量 更新于2024-08-03 收藏 1.33MB PDF 举报
CST816D是一款高性能的自电容触控芯片,由上海海栎创微电子有限公司制造。该芯片集成了高速MCU内核和内置DSP电路,提供快速自电容感应技术,支持三角形等多种自电容图案,实现了单点手势识别和真实两点操作,具备极高的灵敏度和低的待机功耗。主要特点包括: 1. **内置硬件组件**: - 内置快速自电容检测电路,用于实时触控信号处理。 - 高性能数字信号处理器(DSP)模块,增强算法处理能力。 - 支持在线编程,便于用户根据需求进行软件更新。 - 内置看门狗功能,确保系统稳定性。 - 具备多按键控制,满足复杂应用需求。 - 提供待机手势唤醒功能,提高用户体验。 2. **电容屏特性**: - 最多支持13个感应通道,灵活扩展触控区域。 - 通道设计支持悬空和下拉模式,适应不同环境。 - 模组参数自动调校功能,简化系统集成。 3. **性能指标**: - 高刷新率超过100Hz,保证流畅的触控响应。 - 能同时实现单点和真实两点操作,满足多种触控交互需求。 4. **功耗管理**: - 动态模式下典型功耗为4mA,降低能耗。 - 休眠模式下典型功耗仅为8uA,适合电池续航要求高的设备。 5. **通信接口**: - I2C主/从通信接口,工作频率可配置在10kHz至400kHz范围内。 - 电压兼容1.8V和3.3V,方便系统集成。 6. **电源需求**: - 单电源供电,工作电压范围2.8V至3.6V,支持宽电压输入。 - 电源纹波要求小于50mV,保证电路稳定。 7. **应用领域**: - 主要适用于小型智能穿戴设备,如手环、手表,推荐TP尺寸在1.8英寸以内。 8. **参考电路**: - 提供了电路图示例,指导用户正确连接CMOD滤波电容和其他组件。 - 注明了CMOD滤波电容的精度要求、推荐值范围(1nF到5.6nF),以及放置位置。 9. **订货信息**: - 提供了料号、封装形式(QFNWB3*3-20L, P0.4T0.55)、表面印刷和包装选项。 - 包括生产跟踪码和编带包装(每包5000件)。 通过CST816D数据手册,开发人员可以详细了解芯片的特性和使用方法,以便在实际项目中优化触控性能,降低功耗,并确保与海栎创微电子的其他硬件和软件组件顺利集成。
2023-05-27 上传
2023-05-27 上传

import serial import modbus_tk.defines as cst from modbus_tk import modbus_rtu import struct # 打开两个串口 com1 = serial.Serial(port='com2', baudrate=38400, bytesize=8, parity='N', stopbits=1) com2 = serial.Serial(port='com3', baudrate=38400, bytesize=8, parity='N', stopbits=1) # 创建Modbus RTU主机(master) master = modbus_rtu.RtuMaster(com1) master.set_timeout(1.0) master.set_verbose(True) # 读取保持寄存器数据 red = master.execute(1, cst.READ_HOLDING_REGISTERS, 0, 9) print(red) # 将字节数组划分为若干个长度为4的子数组 # def hex_f(a,b): # # g1=b # # z=a+g1#高低16位组合 # # z1=hex(z)[2:]#取0x后边的部分 # # # print(z1) # # return struct.unpack('!f', z1.decode('hex'))[0]#返回浮点数 # # e = hex_f(red[0],red[1]) # # print(e) red1 = master.execute(1, cst.READ_HOLDING_REGISTERS, 0, 9)[0] # 这里可以修改需要读取的功能码 print(red1) new = int(red1 * 0.8) print(new) red =master.execute(1, function_code=cst.WRITE_MULTIPLE_REGISTERS, starting_address=0, output_value=[new]) # 读取输入寄存器数据 input_regs = master.execute(1, cst.READ_INPUT_REGISTERS, 0, 9) print(input_regs,1) # 读取输入线圈数据 input_bits = master.execute(1, cst.READ_COILS, 0, 9) print(input_bits,2) # 读取输出线圈数据 output_bits = master.execute(1, cst.READ_DISCRETE_INPUTS, 0, 9) print(output_bits,3) # 将所有读取数据打包为Modbus RTU消息并写入com2串口 data = red + input_regs + input_bits + output_bits com2.write(master._do_crc(data)) # 关闭串口 com1.close() com2.close()AttributeError: 'RtuMaster' object has no attribute '_do_crc'咋修改不报错

2023-05-27 上传