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

PS2无线遥控手柄与STM32单片机通信

[复制链接]
STMCU-管管 发布时间:2020-12-3 17:42
PS2无线遥控手柄与STM32单片机通信
* m2 [( {8 S/ D5 c! ]
+ \/ {6 M2 s7 e' R
PS2无线遥控手柄
5 x  b4 j% h. @8 z- m接下来要做一个小车玩玩,在网上淘了一个PS2无线遥控手柄,用于控制小车的前进、后退等功能。
0 @* z& p" G0 X( U+ N" p
9 c0 m1 K& |4 [5 g4 Q1 Q
& n, n" a$ X1 v7 n7 [
实物图如下:) W* H0 H2 r+ }; I$ e7 @
11.png
其中有两个PS2游戏摇杆,对应的驱动原理参见下文:% ~4 ^' `$ N2 M, [, a
: [3 k* N+ K% R' C7 x

& A5 G7 S- U/ c2 ^PS2游戏摇杆原理及控制实现
1 U& B2 `  {4 Z( c- s7 ^* M' m4 Y3 k# T  f# K; L
- ^* L/ D" |  |7 u, Y+ ^7 w
接收器
# _+ y" d& Q# ~; Z. F! ^8 P+ E, {与这个手柄配套的还有一个接收器,用于接收PS2无线遥控手柄发送过来的数据1 F, [  |: Q  G3 ~+ C7 g+ Q& |
12.png
该接收器一共有六个引脚,分别定义如下:
! C$ G; s! m4 M# \  ?& [* e4 i
13.png
注意:
% \+ h! D- p/ x% @4 \3 w
; D0 l# m4 S2 G+ \& O% e- f

9 Y# k% b; L7 B当接收器上的绿灯常亮时,证明手柄和接收器配对成功,可以正常进行数据通讯。如果手柄和接收器断开了,按手柄上的START键即可恢复配对;: W9 j0 K# g9 c" f1 \; P/ h: L

5 `6 T  u1 ~& T4 b( \( p
, M- c" ^  `7 |$ D  f. Y
当手柄上的MODE指示灯没有点亮的时候,游戏摇杆四个方向输出按键键码值;当点击MODE按键后,手柄上的MODE指示灯变亮(红色),此时游戏摇杆四个方向输出AD值。
5 b( h: E3 R9 l( V/ z8 `) a% |
2 R+ H/ J, f* u5 Z9 z4 W  W

+ z8 ?* H; G% w, p9 D" d硬件连接+ j3 @  ~& Q3 D( q. L" W, m
% V7 P1 F8 Y" F9 F. u
接收器与STM32连接如下:
& G0 t7 \# W3 _2 q4 |7 u/ H
14.png
15.png
“注: 使用杜邦线直接与核心板相连即可,这里为了拍照查看方便,选用智能风扇的那个底板与接收器相连。
# E6 z" R. h; d" M' d# L9 E  g程序移植
16.png
因为这个手柄通讯协议在手册中写的不详细,咱们就不分析协议部分了,我将商家提供的驱动文件放到了咱们的工程目录中,具体位置如下所示:
2 p5 o- X1 N, e
17.png
添加驱动文件
7 Y- A- d' s- D0 V; ^6 I1 A添加工程包含路径* b8 c& Q5 q( |" u  ?$ y( S3 `$ V# q
18.png
添加pstwo.c文件* }8 D2 f# s+ M/ y5 s
19.png
修改宏定义
! ]* G5 C% s4 H' Z4 i$ p# C
20.png
修改GPIO初始化代码
* g3 A" |8 T3 L
21.png
上面的宏定义和GPIO的初始化代码要跟实际相连的GPIO一致。# q( ^  x& [1 [( A' v  U0 C+ o# K

8 V: T$ e  r6 p# J4 p

2 `( `" I0 u( ]9 U1 ~main.c文件直接使用即可,不用修改了。! k* h; Z2 Z# O
" S' Z$ v4 `5 o* z
, x$ U0 f' V4 |
结果展示1 x  L' w3 F- E
测试出了所有按键的键码值,留着备用:
3 }/ N  X& q# v: I; D
22.png

. Z# D( e+ ^5 q) i只需要占用4个GPIO口即可实现16个按键的扩展,而且具有无线功能,作为小车的遥控器太适合了。8 K/ S9 j: z# ?8 [

9 I. e6 p/ K1 \9 y
收藏 3 评论3 发布时间:2020-12-3 17:42

举报

3个回答
kylixyao 回答时间:2020-12-4 10:34:50
兄弟,上源码啊
Kevin_G 回答时间:2020-12-4 15:28:36
兄弟,上源码啊
fpy135228 回答时间:2020-12-30 11:35:00
兄弟,上源码啊
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版