资讯详情

传感器自学笔记第十六章——双轴摇杆模块

作者:GWD 时间:2019.7.1

一、 学习要点 1.检测正常电压时2..5V,最大值5V,最小值0V,实际上是两个x,y方向滑动变阻器,使用PCF通过检测8591模数转换模块电压值的变化,可以知道摇杆的位置; 2.它就像游戏控制台中的操纵杆。您可以控制输入操纵杆模块 x、 y、 z 它可以被视为按钮和电位计在特定值下实现某种功能的组合。数据类型 x,y 维维模拟输入信号 z 因此,维是数字输入信号,x 和 y 端口连接到模拟插脚传感器端, z 端口连接到数字端口。 二、 手册分析 1、 在这里插入图片描述 2、PS2 游戏双轴摇杆传感器模块采用原装优质金属 PS2 具有摇杆电位器的制造(X,Y)2 轴模拟输出, (Z)1 数字输出路按钮。 单片机可制作遥控器等互动作品。 三、 编程 1.程序功能:摇杆X、Y轴分别接PCF8591的AIN0、AIN1引脚,沿着X、Y移动摇杆串口方向打印的数字呈线性变化,按下摇杆P2.0引脚的小灯点亮; 2、程序效果: 2、PS2 游戏双轴摇杆传感器模块采用原装优质金属 PS2 具有摇杆电位器的制造(X,Y)2 轴模拟输出, (Z)1 数字输出路按钮。 单片机可制作遥控器等互动作品。 三、 编程 1.程序功能:摇杆X、Y轴分别接PCF8591的AIN0、AIN1引脚,沿着X、Y移动摇杆串口方向打印的数字呈线性变化,按下摇杆P2.0引脚的小灯亮了; 2、程序效果: 3、代码 Main.c

#include <reg52.h> //包含头文件,一般不需要更改,头文件包含特殊功能寄存器的定义                         #include "stdio.h" #include "delay.h" #include "IIC.h" #include "PCF8591.h"  typedef unsigned char uChar8; typedef unsigned int uInt16;  void InitUART  (void) {     TH1 = 0xFD;           // TH1:  重装值 9600 波特率 晶振 11.0592MHz    TL1 = TH1;     TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit 重装        //       timer 0,16位计数           SCON  = 0x50;          // SCON: 模式 1, 8-bit UART, 使能接收    ES  = 1;                  //打开串口中断  TR1 = 1;                  // TR1:  timer 1 打开        TI=1;  }                  void main (void) {  char i=0;  int x=0,y=0;  InitUART();  while (1)                         {     x =  RD_OneByte2Pcf8591(0x92,0x40);   y =  RD_OneByte2Pcf8591(0x92,0x41);   printf("摇杆位置 X=%d,Y=%d\n\r",x,y);   Delay2000ms();        } }  

PCF8591.c

#include "PCF8591.h" void WR_OneByte2Pcf8591(unsigned char address,unsigned char cmd,unsigned char dat) {  _nop_();  iic_start();  _nop_();  iic_sendbyte(address);  _nop_();  iic_sendbyte(cmd);  _nop_();  iic_sendbyte(dat); }  int RD_OneByte2Pcf8591(unsigned char address,unsigned char cmd) {  int num = 0;  iic_start();   //address=0x41  iic_sendbyte(address);  iic_sendbyte(cmd);  iic_start();   //address=0x41  iic_sendbyte(address|0x01);  num = iic_rcvbyte_nack();   return (num);   }  

代码下载地址: 链接:https://pan.baidu.com/s/1aNVDaUgucrI3oTHRR80EDw 提取码:00ug

标签: gwd150传感器gwd75传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台