首页 > 其他分享 >CH585 CH584 I2C时钟配置(超1MHz 最高1.8MHz)

CH585 CH584 I2C时钟配置(超1MHz 最高1.8MHz)

时间:2024-12-26 11:10:11浏览次数:2  
标签:Thigh 1MHz 时钟 1.8 Tlow CCR I2C Tclk CH584

  1. I2C的R16_I2C_CTRL2寄存器描述:

[5:0] FREQ :允许的范围在2~36MHz之间。必须设置在000010b 到100100b 之间

   RB_I2C_FREQ决定SCL的建立时间和SDA的保持时间,理论上I2C

频率可以达到一分频,实际频率可在36MHz之上,可使用最高80MHz。

  1.  I2C的R16_I2C_CKCFGR寄存器描述:

[11:0] CCR RW :时钟分频系数域,决定SCL 时钟的频率波形。

RB_I2C_CCR决定SCL高电平维持多少个系统主时钟周期。

其计算公式如下:(Tclk为FREQ时钟周期,Tscl为I2C的scl时钟周期,Thigh和Tlow分别为scl一个周期种的高低电平占比,Fclk为FREQ时钟频率,Fscl为I2C的scl时钟频率)

在I2C标准模式或SMBus模式下:(100kHz及其以下

Thigh = CCR ×TPCLK1

Tlow = CCR ×TPCLK1

即:Tscl = Thigh+ Tlow = 2 * CCR ×Tclk

  假设FREQ = 60,即频率为60MHz,需要得到100KHz频率,即:

    CCR =  =   =  = 300

在I2C快速模式下:

如果DUTY = 0:

Thigh = CCR ×Tclk

Tlow = 2 × CCR ×Tclk

即:Tscl = Thigh+ Tlow = 3 * CCR ×Tclk

 

如果DUTY = 1:

Thigh = 9 × CCR ×Tclk

Tlow = 16 × CCR ×Tclk

即:Tscl = Thigh+ Tlow = 25 * CCR ×Tclk

例如:在快速模式下,FREQ = 80,产生800kHz的SCL的频率:

  CCR =  =   =  = 4

注: 1. CCR允许设定的最小值为0x04,在快速DUTY = 0 模式下允许的最小值为0x0A(测试值,具体分频系数往极限调整时会受到建立时间和保持时间的影响,极限情况很可能采不到数据,比如在电平拉升的这段时间采,可能原本高电平采到低电平);在快速DUTY = 1 模式下允许的最小值为0x01;

2. 只有在关闭I2C时(PE = 0)才能设置CCR寄存器;

3. Fclk应当是10MHz的整数倍,这样可以正确产生400kHz的快速时钟。

 

3.I2C例程实际收发速率:

      中断收发:    4.55702ms/200字节   (351k bit/s)

      非中断收发:  4.51829ms/200字节   (354k bit/s)

  注:该实际速度计算时按一字节8bit计算,没有将应答位时间计入(即一字节9bit),实际上只浪费了装填数据的时间,收发速度接近400k bit/s

标签:Thigh,1MHz,时钟,1.8,Tlow,CCR,I2C,Tclk,CH584
From: https://www.cnblogs.com/debugdabiaoge/p/18632279

相关文章

  • 德普微一级代理 DP021N03FGLI DFN5*6 DPMOS N-MOSFET 30V 180A 1.8mΩ
    主要特点• Uses advanced MOSFET-DPMOS technology• Extremely low on-resistance RDS(on)• ExcellentQgxRDS(on) product(FOM)• Qualifiedaccording to JEDEC criteria (industrial grade)产品概述典型应用• Motorcontrol and drive• B......
  • 11.8
    用计算机测量时间要想在计算机上制作一个时钟需要一个周期性的振动源——最好有很好的精确性和正确性——以及一种让软件获取振动源的时标的方法。要想专门为了计时而制造一台计算机是很容易的。不过,多数现在流行的计算机体系结构在设计时都没有考虑过要提供很好的时钟。我将会结......
  • OJ题目详解——1.8~05:计算鞍点
    描述给定一个5*5的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。例如:在下面的例子中(第4行第1列的元素就是鞍点,值为8)。11356912478101056911864721510112025......
  • OJ题目详解——1.8~06:图像相似度
    描述给出两幅相同大小的黑白图像(用0-1矩阵)表示,求它们的相似度。说明:若两幅图像在相同位置上的像素点颜色相同,则称它们在该位置具有相同的像素点。两幅图像的相似度定义为相同像素点数占总像素点数的百分比。输入第一行包含两个整数m和n,表示图像的行数和列数,中间用单个空格......
  • OJ题目详解——1.8~11:图像旋转
    描述输入一个n行m列的黑白图像,将它顺时针旋转90度后输出。输入第一行包含两个整数n和m,表示图像包含像素点的行数和列数。1<=n<=100,1<=m<=100。接下来n行,每行m个整数,表示图像的每个像素点灰度。相邻两个整数之间用单个空格隔开,每个元素均在0~255之间。输出m行,每行......
  • OJ题目详解——1.8~14:扫雷游戏地雷数计算
    描述扫雷游戏是一款十分经典的单机小游戏。它的精髓在于,通过已翻开格子所提示的周围格地雷数,来判断未翻开格子里是否是地雷。现在给出n行m列的雷区中的地雷分布,要求计算出每个非地雷格的周围格地雷数。注:每个格子周围格有八个:上、下、左、右、左上、右上、左下、右下。输入......
  • jdk1.8安装及环境配置(最新最详细教学!!!)
    jdk1.8安装:看了网上很多关于jdk1.8的安装,我觉得有时候会让人云里雾里,虽然自己可能配置成功,不过没有一套自己的思路,我结合自己的经验来说一下。jdk在windows有两种安装方式,一种是解压缩包,还有一种是点击运行安装注意两种方式选一个就行,一般选择解压缩,解压完成,然后配置环境变......
  • JDK 1.8 的安装
    ‍下载地址:地址:https://www.oracle.com/java/technologies/javase/javase9-archive-downloads.htmljdk?jre?jvm?Javadevelopmentkit java开发工具包jdkJavaRuntimeEnvironmentjava运行环境jreJavaVirtualMachine java虚拟机jvmjdk安装方法:以下可以用来复......
  • vscode怎么配置java jdk 1.8(jdk如何配置在windows)
    首先我想说高版本Vscode不支持jdk8,所以需要配置文件。1.安装jdkjavaJDK1.8版本下载_jdk1.8下载资源-CSDN文库首先都会去确认JDK的安装是否正确,两个命令缺一不可。打开‘cmd’--> java-version,javac-version安装JDK选择安装目录安装过程中会出现两次安装提示。第......
  • 8条笔记,30天涨粉1.8w!用AI做林黛玉怼人视频,涨粉太香了!(附完整教程)
    大家好,我是程序员X小鹿,前互联网大厂程序员,自由职业2年+,也一名AIGC爱好者,持续分享更多前沿的「AI工具」和「AI副业玩法」,欢迎一起交流~最近「林黛玉怼人」系列的账号太火了!而且内容太太太让人上瘾了!在小红书刷到了林黛玉怼人的视频,愣是被硬控了10多分钟,才「依依不舍......