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

[国产MCU]-BL602开发实例-I2C与总线设备地址扫描

I2C与总线设备扫描

文章目录

  • I2C与总线设备扫描
    • 1、I2C介绍
    • 2、I2C驱动API介绍
    • 3、I2C使用实例

I2C (Inter-Intergrated Circuit)是一种串行通讯总线,使用多主从架构,用来连接低速外围装置。 每个器件都有一个唯一的地址识别,并且都可以作为一个发送器或接收器。每个连接到总线的器件都可以通过唯一的地址和一直存在的主、从机关系用软件设置地址,主机可以作为主机发送器或主机接收器。 如果有两个或多个主机同时初始化,数据传输可以通过冲突检测和仲裁防止数据被破坏。 BL602/BL604包含一个I2C控制器主机,可灵活配置slaveAddr、subAddr以及传输数据,方便与从设备通信,提供2个word深度的fifo,提供中断功能,可搭配DMA使用提高效率,可灵活调整时钟频率。

本文将详细介绍如何使用BL602的I2C模块。

1、I2C介绍

BL602芯片的I2C有如下特性:

  • 支持主机模式
  • 支持多主机模式和仲裁功能
  • 时钟频率可灵活调整
  • 最高工作频率为40MHz

I2C时钟设置

I2C的时钟是由bclk(bus clock)而来,可以在bclk时钟的基础上做分频处理。 寄存器 I2C_PRD_DATA 可以对数据段的时钟做分频处理。i2c

http://www.lryc.cn/news/121713.html

相关文章:

  • Python Opencv实践 - 图像平移
  • 易服客工作室:WordPress 6.3性能改进
  • LeetCode 周赛上分之旅 #39 结合中心扩展的单调栈贪心问题
  • 山东布谷科技直播软件开发WebRTC技术:建立实时通信优质平台
  • Golang-语言源码级调试器 Delve
  • 构建Docker容器监控系统(Cadvisor +InfluxDB+Grafana)
  • 【Vue3】keep-alive 缓存组件
  • 24成都信息工程大学809软件工程考研
  • Filament for Android 编译搭建(基于Ubuntu20.04系统)
  • 【MySQL--->数据库操作】
  • PhotoShop2023 Beta AI版安装教程
  • 并发冲突导致流量放大的线上问题解决
  • Spring Cloud Gateway过滤器GlobalFilter详解
  • 【LeetCode】1281.整数的各位积和之差
  • 22、springboot的Profile(通过yml配置文件配置 profile,快速切换项目的开发环境)
  • 2023-08-12力扣每日一题-暴力hard
  • Mac安装nvm教程及使用
  • 左值引用和右值引用
  • JavaWeb 中对 HTTP 协议的学习
  • 06-hadoop集群搭建(root用户)
  • MySQL 窗口函数是什么,有这么好用
  • 用户数据报协议UDP
  • STM32F429IGT6使用CubeMX配置外部中断按键
  • 时序预测 | Python实现LSTM长短期记忆网络时间序列预测(电力负荷预测)
  • [开发|前端] 路由守卫笔记
  • 网络基础——网络的由来与发展史
  • 八数码(bfs)
  • CCLINK IE FIELD BASIC转MODBUS-TCP网关cclink与以太网的区别
  • 【Rust】Rust学习 第十一章编写自动化测试
  • 关于使用pycharm遇到只能使用unittest方式运行,无法直接选择Run