当前位置: 首页 > news >正文

网站建设的流程住宅设计网站推荐

网站建设的流程,住宅设计网站推荐,网络营销专业学校有哪些,专业网站设计招聘信息一、概述 ch36x_lib库是Linux系统下用于开发CH36X系列设备CH365/CH367/CH368等芯片应用的软件接口库,此接口库主要提供以下功能: 设备打开/关闭 获取芯片类型/驱动版本 获取IO基地址/Memory基地址/中断号 配置空间读写(支持单字节/双字节…

一、概述

ch36x_lib库是Linux系统下用于开发CH36X系列设备CH365/CH367/CH368等芯片应用的软件接口库,此接口库主要提供以下功能:

  • 设备打开/关闭

  • 获取芯片类型/驱动版本

  • 获取IO基地址/Memory基地址/中断号

  • 配置空间读写(支持单字节/双字节/四字节)

  • IO空间读写(支持单字节/双字节/四字节)

  • Memory空间读写(支持单字节/双字节/四字节/块)

  • 中断启用/禁用/设置中断服务程序

  • SPI模式设置/SPI透传接口/FLASH Lock/擦除/读写

  • I2C读写

应用框图:

二、接口函数说明

  1. ch36x_open

     int ch36x_open(const char *devname)功能:打开设备参数:devname:设备完整路径名返回:成功时返回文件描述符,失败时返回负值
  2. ch36x_close

    int ch36x_close(int fd)
    ​
    功能:关闭设备
    ​
    参数:fd:设备文件描述符
    ​
    返回:成功时返回0,失败时返回其他值
  3. ch36x_get_chiptype

    int ch36x_get_chiptype(int fd, enum CHIP_TYPE *chiptype)
    ​
    功能:获取当前打开的芯片型号
    ​
    参数:fd:设备文件描述符,chiptype:芯片类型名
    ​
    返回:成功时返回0,失败时返回其他值
  4. ch36x_get_version

    int ch36x_get_version(int fd, char *version)
    ​
    功能:获取当前驱动版本
    ​
    参数:fd:设备文件描述符,version:驱动版本字符串
    ​
    返回:成功时返回0,失败时返回其他值
  5. ch36x_get_irq

    int ch36x_get_irq(int fd, int *irq)
    ​
    功能:获取系统分配的中断号
    ​
    参数:fd:设备文件描述符,irq:设备中断号
    ​
    返回:成功时返回0,失败时返回其他值
  6. ch36x_get_ioaddr

    int ch36x_get_ioaddr(int fd, void *ioaddr)
    ​
    功能:获取系统为设备分配的IO基址
    ​
    参数:fd:设备文件描述符,ioaddr:系统分配的IO基址
    ​
    返回:成功时返回0,失败时返回其他值
  7. ch36x_get_memaddr

    int ch36x_get_memaddr(int fd, void *memaddr)
    ​
    功能:获取系统为设备分配的Memory基址
    ​
    参数:fd:设备文件描述符,memaddr:系统分配的Memory基址
    ​
    返回:成功时返回0,失败时返回其他值
  8. ch36x_read_config_byte

    int ch36x_read_config_byte(int fd, uint8_t offset, uint8_t *obyte);
    ​
    功能:以字节为单位读取配置空间
    ​
    参数:fd:设备文件描述符,offset:配置空间偏移地址,obyte:读取到的8位数据
    ​
    返回:成功时返回0,失败时返回其他值
  9. ch36x_read_config_word

    int ch36x_read_config_word(int fd, uint8_t offset, uint16_t *oword);功能:以字为单位读取配置空间参数:fd:设备文件描述符,offset:配置空间偏移地址,oword:读取到的16位数据返回:成功时返回0,失败时返回其他值
  10. ch36x_read_config_dword

    int ch36x_read_config_dword(int fd, uint8_t offset, uint32_t *odword)功能:以双字为单位读取配置空间参数:fd:设备文件描述符,offset:配置空间偏移地址,odword:读取到的32位数据返回:成功时返回0,失败时返回其他值
  11. ch36x_write_config_byte

    int ch36x_write_config_byte(int fd, uint8_t offset, uint8_t ibyte);功能:以字节为单位写数据到取配置空间参数:fd:设备文件描述符,offset:配置空间偏移地址,ibyte:写入的8位数据返回:成功时返回0,失败时返回其他值
  12. ch36x_write_config_word

    int ch36x_write_config_word(int fd, uint8_t offset, uint16_t iword)功能:以字为单位写数据到取配置空间参数:fd:设备文件描述符,offset:配置空间偏移地址,iword:写入的16位数据返回:成功时返回0,失败时返回其他值
  13. ch36x_write_config_dword

    int ch36x_write_config_dword(int fd, uint8_t offset, uint32_t idword)功能:以双字为单位写数据到取配置空间参数:fd:设备文件描述符,offset:配置空间偏移地址,idword:写入的32位数据返回:成功时返回0,失败时返回其他值
  14. ch36x_read_io_byte

    int ch36x_read_io_byte(int fd, uint8_t offset, uint8_t *obyte)功能:以字节为单位读取IO空间参数:fd:设备文件描述符,offset:IO空间偏移地址,obyte:读取到的8位数据返回:成功时返回0,失败时返回其他值
  15. ch36x_read_io_word

    int ch36x_read_io_word(int fd, uint8_t offset, uint16_t *oword)功能:以字为单位读取IO空间参数:fd:设备文件描述符,offset:IO偏移地址,oword:读取到的16位数据返回:成功时返回0,失败时返回其他值
  16. ch36x_read_io_dword

    int ch36x_read_io_dword(int fd, uint8_t offset, uint32_t *odword)功能:以双字为单位读取IO空间参数:fd:设备文件描述符,offset:IO空间偏移地址,odword:读取到的32位数据返回:成功时返回0,失败时返回其他值
  17. ch36x_write_io_byte

    int ch36x_write_io_byte(int fd, uint8_t offset, uint8_t ibyte)功能:以字节为单位写数据到IO空间参数:fd:设备文件描述符,offset:IO空间偏移地址,ibyte:写入的8位数据返回:成功时返回0,失败时返回其他值
  18. ch36x_write_io_word

    int ch36x_write_io_word(int fd, uint8_t offset, uint16_t iword)功能:以字为单位写数据到IO空间参数:fd:设备文件描述符,offset:IO空间偏移地址,iword:写入的16位数据返回:成功时返回0,失败时返回其他值
  19. ch36x_write_io_dword

    int ch36x_write_io_dword(int fd, uint8_t offset, uint32_t dword);功能:以双字为单位写数据到IO空间参数:fd:设备文件描述符,offset:IO空间偏移地址,dword:写入的32位数据返回:成功时返回0,失败时返回其他值
  20. ch36x_read_mem_byte

    int ch36x_read_mem_byte(int fd, uint16_t offset, uint8_t *obyte)功能:以字节为单位读取Memory空间参数:fd:设备文件描述符,offset:Memory空间偏移地址,obyte:读取到的8位数据返回:成功时返回0,失败时返回其他值
  21. ch36x_read_mem_word

    int ch36x_read_mem_word(int fd, uint16_t offset, uint16_t *oword)功能:以字为单位读取Memory空间参数:fd:设备文件描述符,offset:Memory空间偏移地址,oword:读取到的16位数据返回:成功时返回0,失败时返回其他值
  22. ch36x_read_mem_dword

    int ch36x_read_mem_dword(int fd, uint16_t offset, uint32_t *odword)功能:以双字为单位读取Memory空间参数:fd:设备文件描述符,offset:Memory空间偏移地址,odword:读取到的32位数据返回:成功时返回0,失败时返回其他值
  23. ch36x_write_mem_byte

    int ch36x_write_mem_byte(int fd, uint16_t offset, uint8_t ibyte)功能:以字节为单位写数据到Memory空间参数:fd:设备文件描述符,offset:Memory空间偏移地址,ibyte:写入的8位数据返回:成功时返回0,失败时返回其他值
  24. ch36x_write_mem_word

    int ch36x_write_mem_word(int fd, uint16_t offset, uint16_t iword)功能:以字为单位写数据到Memory空间参数:fd:设备文件描述符,offset:Memory空间偏移地址,iword:写入的16位数据返回:成功时返回0,失败时返回其他值
  25. ch36x_write_mem_dword

    int ch36x_write_mem_dword(int fd, uint16_t offset, uint32_t idword)功能:以双字为单位写数据到Memory空间参数:fd:设备文件描述符,offset:Memory空间偏移地址,idword:写入的32位数据返回:成功时返回0,失败时返回其他值
  26. ch36x_read_mem_block

    int ch36x_read_mem_block(int fd, uint16_t offset, uint8_t *obuffer, uint32_t len)功能:以块为单位读取Memory空间的数据参数:fd:设备文件描述符,obuffer:读取的数据,len:读取数据的长度返回:成功时返回0,失败时返回其他值
  27. ch36x_write_mem_block

    int ch36x_write_mem_block(int fd, uint16_t offset, uint8_t *ibuffer, uint32_t len)功能:以块为单位写入数据到Memory空间参数:fd:设备文件描述符,ibuffer:要写入的数据,len:写入数据的长度返回:成功时返回0,失败时返回其他值
  28. ch36x_enable_isr

    int ch36x_enable_isr(int fd, enum INTMODE mode)功能:开启中断参数:fd:设备文件描述符,mode:设置中断触发方式,支持高/低电平、上升沿/下降沿返回:成功时返回0,失败时返回其他值
  29. ch36x_disable_isr

    int ch36x_disable_isr(int fd);功能:关闭中断参数:fd:设备文件描述符返回:成功时返回0,失败时返回其他值
  30. ch36x_set_int_routine

    void ch36x_set_int_routine(int fd, void *isr_handler)功能:设置中断服务函数参数:fd:设备文件描述符,isr_handler:中断服务函数
  31. ch36x_set_stream

    int ch36x_set_stream(int fd, uint8_t mode)功能:设置SPI模式参数:fd:设备文件描述符,mode:SPI模式设置参数返回:成功时返回0,失败时返回其他值
  32. ch36x_stream_spi

    int ch36x_stream_spi(int fd, uint8_t *ibuffer, uint32_t ilen, uint8_t *obuffer, uint32_t olen)功能:SPI数据收发参数:fd:设备文件描述符,ibuffer:发送的数据,ilen:发送数据的长度,obuffer:接收返回的数据,olen:接收数据的长度返回:成功时返回0,失败时返回其他值
  33. ch36x_flash_lock

    int ch36x_flash_lock(int fd, uint8_t lock)功能:锁/解锁FLASH参数:fd:设备文件描述符,lock:锁/解锁使能,0->解锁,1->上锁返回:成功时返回0,失败时返回其他值
  34. ch36x_flash_erase

    int ch36x_flash_erase(int fd, uint32_t addr, uint32_t ilen)功能:擦除FLASH数据参数:fd:设备文件描述符,addr:FLASH擦除起始地址,ilen:擦除长度返回:成功时返回0,失败时返回其他值
  35. ch36x_flash_read

    int ch36x_flash_read(int fd, uint32_t addr, uint8_t *obuffer, uint32_t olen)功能:读取FLASH数据参数:fd:设备文件描述符,addr:FLASH读取起始地址,obuffer:读取的数据,ilen:读取数据长度返回:成功时返回0,失败时返回其他值
  36. ch36x_flash_write

    int ch36x_flash_write(int fd, uint32_t addr, uint8_t *ibuffer, uint32_t ilen)功能:写入FLASH数据参数:fd:设备文件描述符,addr:FLASH写入起始地址,ibuffer:写入的数据,ilen:写入数据长度返回:成功时返回0,失败时返回其他值
  37. ch36x_i2c_write

    int ch36x_i2c_write(int fd, uint8_t addr, uint8_t reg, uint8_t *ibuffer, uint32_t ilen)功能:写I2C操作参数:fd:设备文件描述符,addr:从机设备地址,reg:从机寄存器地址,ilen:发送数据长度返回:成功时返回0,失败时返回其他值
  38. ch36x_i2c_read

    int ch36x_i2c_read(int fd, uint8_t addr, uint8_t reg, uint8_t *obuffer, uint32_t olen)功能:读I2C操作参数:fd:设备文件描述符,addr:从机设备地址,reg:从机寄存器地址,olen:读取数据长度返回:成功时返回0,失败时返回其他值

开发资料包的demo文件夹下提供的例子程序演示了如何使用ch36x_lib库中的接口函数开发目标程序,一般情况下用户可以基于此例程修改,也可以根据此开发说明自行开发。

http://www.dtcms.com/a/555234.html

相关文章:

  • 阿里通义千问之文本生成图像
  • 申请的网站怎么建设有经验的常州网站建设
  • 温州网站网络公司WordPress书籍插件
  • cse复习 文件共享 nfs服务
  • 广州企业自助建站哈尔滨网页制作要多少钱
  • 360网站推广官网硅钙钾镁肥做性视频网站有哪些
  • 一起做单网站怎么样最流行网站开发工具
  • Sora 2:从视频生成到世界模拟,OpenAI的“终极游戏”
  • 网站建设开发ppt模板今天无法登陆建设银行网站呢
  • Redis哨兵与集群模式
  • 慈溪市建设局网站西安市建设工程信息网诚信信息平台官网
  • 网站后台上传图片步骤网络营销的50种方法
  • 电子商务网站建设实训步骤wordpress双击返回顶部
  • 网站地图用什么格式ps国外教程网站
  • 在线网站seo诊断自动化东莞网站建设
  • 解决Nacos发布配置失败问题
  • 编写Netfilter模块过滤ARP数据包
  • 呼吸能量饮食饮水代谢检测系统 多通道小动物代谢监控系统 小动物代谢检测系统
  • 图片网站怎么建设网站开发需求问卷
  • 前端很难学吗seo服务方案
  • 优化网站软文东莞石龙网站建设
  • 二手设备回收做哪个网站好h5游戏是什么意思
  • 顺德做网站设计的公司丹灶网站制作
  • 网站建设的7种流程图公司网站页脚
  • 网站设计论文题目网站备案手机号码
  • 潍坊400建网站公司小孩子做手工做游戏的网站
  • VTK开源视觉库 | 行业应用第一篇
  • 网站页面分辨率鞍山网站制作谁家好
  • 延安免费做网站公司个人免费网站建设
  • C++ / Linux 学习 Day 2:引用、拷贝构造 与 auto.sh 自动编译脚本