你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32L0 HAL驱动 串口 DMA,I2C读MPU6050 精华  

[复制链接]
党国特派员 发布时间:2015-1-6 13:21
阅读主题, 点击返回1楼
赞 1 收藏 17 评论75 发布时间:2015-1-6 13:21
75个回答
没有人对我说 回答时间:2016-4-15 23:15:02
请问一下,我可不可以使用IIC和DMA将传感器中的所以寄存器的值全部读出来,使用9250的传感器??
党国特派员 回答时间:2016-4-16 09:42:17
没有人对我说 发表于 2016-4-15 23:15+ ^* G! q. z& Z! X% {/ y* U7 Z
请问一下,我可不可以使用IIC和DMA将传感器中的所以寄存器的值全部读出来,使用9250的传感器?? ...
8 i( @, i( ?* F& V5 B& c' Z$ i
当然可以了。
吃货天下 回答时间:2016-6-20 21:42:48
uint8_t i2cRead(uint16_t DevAddress, uint16_t MemAddress)
# \2 _/ D8 t  }, W9 N{% u! y1 u1 [* ^$ ~& }
        uint8_t data[1];8 v( S' g7 S1 @; g# n, Y9 D
              HAL_Delay(50);3 V. K# r7 I# |& x9 {
        HAL_I2C_Mem_Read(&hi2c2, DevAddress, MemAddress, I2C_MEMADD_SIZE_8BIT, data, 1, 500);
* n0 d9 Y% G4 A$ k6 O0 ~        return data[0];
5 I* B5 n0 p0 i}
& V2 p$ u+ Q) O1 m! v不通过DM A或者中断,直接这样在while中读取* e) f. m  q5 r, L3 U6 M; c/ J9 o
  while (1)
8 b  o# u. A7 j  {1 i3 W  q& \* a$ N* X. D
  /* USER CODE END WHILE */
9 o. t5 B: \- S
# C& N2 @1 ^) Q2 |2 a& z+ x  /* USER CODE BEGIN 3 */
5 v# m/ S: f3 R
) i: U1 J, u% ]. Y4 e$ D; m
7 T! M7 b3 N# l. K; adata2[0]=i2c_read(0x68,0x75,1,data1);       
% U  x/ q9 j! g/ ?6 }8 ~HAL_Delay(5);3 q  \! O: f3 D, v2 F* Y, V
/ k4 E5 F. L: L6 r1 n
  }. H2 L+ p8 U, t* e1 g4 O- K3 ^. a
中读不出数来,是为啥那,楼主帮忙解决解决,谢谢
mr.hs 回答时间:2016-7-1 15:43:15
请问i2c初始化哪里的从机地址有什么用
& T1 r8 y  _$ k  X# n我看有些列子写了  有些没有写
坚定力量 回答时间:2016-8-21 09:30:17
非常棒的东西,感谢分享
beebird 回答时间:2016-8-21 10:16:37
非常好,感谢分享
qingyu_lv 回答时间:2016-11-1 16:41:28
楼主,跪求工程,包含这个上位机更好!嘿嘿
0 Q# [: _+ M2 j6 l- d0 H# T
DarkG 回答时间:2017-1-19 20:26:03
文件 是不是没给全啊,PWR_MGMT_1 这个宏定义也没有找到
人总要学会慢慢长大 回答时间:2017-5-17 22:23:33
我就想问你的SLAVEDRESS 是多少?
% D8 k; S4 K" m0 P5 p' i7 r/ I# d3 I' f/ K" f2 ~6 F

" z2 s7 P' G" ^* S# o2 c2 ^2 e uint8_t REG_data;; o0 F% G$ o. Y: d
    while(HAL_I2C_Master_Transmit(&hi2cx,SlaveAddress,®_Address,1,5000) != HAL_OK)% m: U; F. o3 O9 b  o" q
    {
6 p% n, a7 b# M, Y        if(HAL_I2C_GetError(&hi2cx) != HAL_I2C_ERROR_AF)
- L) V4 d3 l: P* A6 \        {}
( M7 v; z4 z: r/ i6 ^: B    }
. y: y# P2 y; B   
. b2 Z4 {* r" j    if(HAL_I2C_Master_Receive(&hi2cx,SlaveAddress+1,®_data,1,5000) != HAL_OK)) ?7 k$ A4 v4 w' E( `* L- X
    {
7 l0 e7 S1 t4 B        if(HAL_I2C_GetError(&hi2cx) != HAL_I2C_ERROR_AF)
" K! I5 J$ O) F/ e+ R: H) W" C, J        {}
2 M0 b* V$ `9 S- b  q0 i- H% e    }
epochal 回答时间:2017-5-18 07:29:48
谢谢分享!!!
秋水之下 回答时间:2017-5-21 20:17:38
人总要学会慢慢长大 发表于 2017-5-17 22:23  q6 q5 f9 |9 U
我就想问你的SLAVEDRESS 是多少?

  G4 z% O$ |; I. {//**************************************
1 O% S, K+ h# U9 X: C. r//从I2C设备读取一个字节数据
5 e+ C0 m5 M. H//**************************************& R7 L; I4 g# ^5 I2 W% r
uint8_t Single_ReadI2C(uint8_t REG_Address), ?0 w# I2 n4 t
{
, q. k: ^7 {& B" v  X7 X) i% e    uint8_t REG_data;
3 s& _  J! o" \0 {; I    while(HAL_I2C_Master_Transmit(&hi2c1,MPU6050_DEFAULT_ADDRESS,&REG_Address,1,5000) != HAL_OK)
" |  H$ `& G- N" X    {
# s- }9 F! Z/ j( y  I: l5 |        if(HAL_I2C_GetError(&hi2c1) != HAL_I2C_ERROR_AF)
3 o* C5 e# T- n5 @0 e& h        {}
) g7 b1 |- y- \. c0 _0 P) Y    }
# V2 r2 K* K. h/ P   
& b, F$ `! k% `: O, D( N1 i; `    if(HAL_I2C_Master_Receive(&hi2c1,MPU6050_DEFAULT_ADDRESS+1,&REG_data,1,5000) != HAL_OK)
- a: e  l: N% y. s( v    {5 S" {% d- i1 N# O! r0 Z
        if(HAL_I2C_GetError(&hi2c1) != HAL_I2C_ERROR_AF)% m. C1 ^1 l7 p  ]$ K; q; D3 L! D
        {}
+ i  C3 I* H/ V  c# r0 [' j    }
9 C& M9 ]+ y& }9 V( S    return REG_data;* Q' s7 E4 y' S6 Q
}1 Z8 F6 {1 U7 D7 I" Q7 r5 Q! `
xiaoouyang 回答时间:2018-7-11 16:47:59
学到了 请问楼主 工程文件能不能分享一下哦
党国特派员 回答时间:2018-7-30 09:32:07
xiaoouyang 发表于 2018-7-11 16:47' W7 v. I  e! ?' p" Q
学到了 请问楼主 工程文件能不能分享一下哦

% P5 L1 ~' M3 {5 ?# Q好久之前的,找不到了。
g2004-148848 回答时间:2018-8-6 23:23:21
楼主辛苦谢谢分享
caiyangan 回答时间:2019-6-3 13:57:02
最近刚好搞这个先学习一下谢谢楼主

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版