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

【实战经验】CEC 输出的数据和数据长度始终不匹配

[复制链接]
zero99 发布时间:2017-4-10 10:01
CEC 输出数据始终和输出长度不匹配8 |0 O9 J2 m4 r, x
5 u9 f" w* n# P( j
前言' j, d7 ]' I+ Z
      客户反应使用我们的STM32F446 的CEC 库的时候,输出的数据和数据长度始终不匹配,跟电视通信不正常,如果输出的数据始终比长度多一个字节.客户试着按字节数减一去做输出,但是又不能输出一个字节的情况.! h3 c3 ]/ y# ?# i6 A/ \* w

0 d! n% n8 Y  j' @  \( n2 F% R1 e
调研5 k5 t% J% ]2 S: P( x; @" ^7 G* }
首先,我们来看看CEC 发送数据的过程:3 E1 ]! U% Q/ L. p
    1,数据格式,包含一个起始位,header OPCODE 以及0 到14 个字节的OPERAND 数据.以及一个EOM 和ACK.
) W! j, l: @, D# e$ E7 F. h( @
31.png 0 I( }2 W4 e: f) L  R
9 B5 h" w" g" t  k! T7 ^
    2 发送过程: 从下面两个寄存器的描述来看,当我们发送最后一个字节之前,要将EOM 置位.而每一次发送数据的第四位时候,它会发出TXBR 的请求(请求发送下一个数据)* L4 \% G: C$ H4 ?- z9 b
32.png 4 @0 D0 {8 \) j% j' z# N2 g8 v) |* b
6 B, X3 ~+ n. ?1 ~2 f' f
    3 发送函数: 当客户在调用下面发送函数的时候,数据跟长度不匹配.- u0 ?: H) a8 B: @- }
             HAL_CEC_Transmit_IT(&hcec,InitiatorAddress ,DestinationAddress, (uint8_t *)&Tab_Tx, TxSize);$ @' I: r7 }& }
33.png
5 I* I; L  |2 G7 i   例如 :发送2 个字节(TxSize=2) 0x44 和0x43,但是我在后面发觉多出来一个字节(如下图),而如果我们将TxSize 设为1,反而数据发送正确. 从上面的函数来看,并没有什么错误.它仅仅开始发送了HEADER 和开始发送.
% y+ \9 Z( z* l
34.png ! G$ b3 y6 V+ y  ~$ S; |) t

) U* T; {; W& n9 \) x# o    4 中断处理函数:
4 F9 w" S8 A& V2 R8 ^8 K7 Y# ?7 ?
35.png ) _& G- F! E- L4 _! j/ S
5 H! W/ E  M' T* L' X2 `, [5 J
从上面的函数来看当我们发送字节数大于0 的时候,他每次发送一个字节,而当等于0 的时候它置位EOM,并且再次放了一个字节进入TXDR,看到这里就明白了,错误出现在这里了,既然是发送字节为0 了,为什么还要放一个字节呢?这里应该是最后一个字节的时候,置位EOM 和发送一个字节数据,而当再次中断来这里SIZE 变为0 的时候什么都不做.
+ A- d% Q4 Z. g( O
- \; U1 @5 z; j0 e8 N解决方法:* T1 c$ ~* n  e( _0 }  e
    按照下面的方法修改中断处理函数,送给客户验证,能够正常发送数据并且跟电视通信正常2 h$ }3 _1 n7 J1 T( }
36.png 7 S+ y* c3 p( a6 \6 n9 f+ i9 V: E

* `" x3 v0 A+ }$ c: I2 O: J# M. e$ f1 s
文档下载% `( j; Q5 k6 N) `6 B1 P) R

2 P) H, e5 b+ ~* S# \更多实战经验" W; @* V2 E0 c& t
收藏 评论2 发布时间:2017-4-10 10:01

举报

2个回答
feixiang20 回答时间:2017-6-28 12:51:47
是说是开发者自己编写错误么
烛音 回答时间:2022-6-21 17:49:28
为啥我通过CEC给TV发命令,TV没反应
' I7 z. ]! n( o/ Q6 L' u5 S

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版