STM32 IIC频率

ding_di 2017-03-16 04:32:37
STM32 IIC频率,现在测试的频率是200K。 如何提高到400Khz 或者 1 Mhz ? 使用的是STM32,自带的软件模拟IIC代码。
...全文
1175 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ding_di 2017-07-22
  • 打赏
  • 举报
回复
感谢大家,我用的是模拟IIC,通过对CLK的高低电瓶延时,提高了IIC速率。
ding_di 2017-03-25
  • 打赏
  • 举报
回复
最终定论,通过调试void IIC_Send_Byte(u8 txd) 里面模拟IIC的 delay() 函数实现IIC速率的上升。 这个是经过示波器测试的结果。 后面的网友没有异议了。下次上来结贴。
Acuity. 2017-03-23
  • 打赏
  • 举报
回复
stm32一直用模拟iic,产品上不敢用硬件iic。
ding_di 2017-03-20
  • 打赏
  • 举报
回复
我用的是keil 5 . 我认为:我现在使用的是软件IIC,而这个IIC_mode_config()函数是设置硬件IIC的,在这里没有起作用。 还有没有其他大虾,调试过400khz 的。
uid123 2017-03-17
  • 打赏
  • 举报
回复
引用 4 楼 ding_di 的回复:
我把void IIC_Mode_config(void),放到main 函数里面。显示无法识别这个函数。 怎么调用IIC库函数。
前面include的头文件里面么??找头文件相关部分,如果有就改头文件的相关部分,改动前记得备份,直接改应该也能起作用,这个应该是在里面。你用的是keil么??有一个相关的什么.a51文件,里面找到相关部分就应该可以改了吧。
of123 2017-03-17
  • 打赏
  • 举报
回复
如果你这里软件仿真的是主机端,查一下与定时有关的语句或变量(甚至可能是常量宏定义)。一般可能性较大的,是利用定时器,看一下定时器计数寄存器的设置。
ding_di 2017-03-17
  • 打赏
  • 举报
回复
不太懂,自动分频。 我问的IIC的传输速率,带驱动代码里面如何调。 STM32的单片机,外面挂的是8MHZ的晶振。
ding_di 2017-03-17
  • 打赏
  • 举报
回复


我把void IIC_Mode_config(void),放到main 函数里面。显示无法识别这个函数。
怎么调用IIC库函数。
uid123 2017-03-16
  • 打赏
  • 举报
回复
你那个设定是自动分频的么??还是不能设定的??(看看说明书。)如果是自己可以设定的就像电脑一样调整跳线帽,或者进入设定画面进行设定。如果只能靠晶振那么就换晶振。

21,620

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧