SG90舵机(Arduino)/XY轴摇杆使用(Arduino)

XY轴摇杆使用

需要注意,必须是 ADC 引脚才可以接收模拟信号输入

c 复制代码
/** 接线
 *  PS2摇杆      Arduino
 *  x           A0
 *  y           A1
 *  sw          7
*/

const int yg_x_pin = A0;
const int yg_y_pin = A1;
const int yg_btn_pin = 7;  // 摇杆按下的输入引脚 

void setup() {
  // 摇杆引脚连接
  pinMode(yg_btn_pin, INPUT);
  digitalWrite(yg_btn_pin, HIGH);
 
  Serial.begin(9600);
}

void loop() { 
  // x/y 引脚读取需要使用 analogRead,按钮使用 digitalRead 即可
  yg_x_val = analogRead(yg_x_pin);
  yg_y_val = analogRead(yg_y_pin);
  yg_btn_val = digitalRead(yg_btn_pin); 
  
  
  // Serial.print("\tX: ");
  // Serial.print(yg_x_val, DEC);
  // Serial.print("\tY: ");
  // Serial.print(yg_y_val, DEC);
  // Serial.print("\tZ: ");
  // Serial.println(yg_btn_val);
}

SG90舵机

c 复制代码
/**
 **** Arduino 接线 ****
 * Arduino   传感器
 * 5v       红色
 * GND       棕色
 * 8         黄色      
**/


#include <Servo.h>
Servo myservo;

void setup() {
  // 连接上引脚,注意这里每个舵机的后两位值是不一样的,如果发现舵机转动的角度不对时可以设置后面两位数组,默认情况下无需设置
  // myservo.attach(引脚, 脉冲宽度最小值, 脉冲宽度最大值);
  // D5 可以输出 PWM , D5 引脚对应 gpio14
  myservo.attach(8, 500, 2500); 
}
void loop() {
    int pos;
   // 慢慢转动到 180 度
  for (pos = 0; pos <= 180; pos += 1) {
    myservo.write(pos);
    delay(15);
  }

   // 慢慢转动到 0 度
  for (pos = 180; pos >= 0; pos -= 1) {
    myservo.write(pos);
    delay(15);
  }
}
相关推荐
一起养小猫2 小时前
【贡献经历】从零到贡献者:我的Kurator开源社区参与之旅
分布式·物联网·云原生·开源·华为云·istio·kurator
广东大榕树信息科技有限公司3 小时前
机房动环管理如何通过智能可视化实现高效运维?
运维·网络·物联网·国产动环监控系统·动环监控系统
广东大榕树信息科技有限公司3 小时前
当提升动力环境监控效率时,如何实现全面的数据集成与可视化?
运维·网络·物联网·国产动环监控系统·动环监控系统
专业开发者3 小时前
Wi-Fi 6E:赋能企业级网络连接升级
物联网
小柯博客5 小时前
从零开始打造 OpenSTLinux 6.6 Yocto 系统 - STM32MP2(基于STM32CubeMX)(九)
c语言·stm32·单片机·嵌入式硬件·物联网·嵌入式·yocto
sdyeswlw5 小时前
一二三物联网医院后勤综合运维管理系统:让后勤保障更智能、更省心
运维·物联网
珠海西格电力16 小时前
零碳园区物流园区架构协同方案
人工智能·物联网·架构·能源
dreamczf16 小时前
如何确定项目中的产品选型-物联网设备
单片机·物联网·嵌入式软件
Tel1992530800417 小时前
高速相机触发脉冲计数器信号采集模块 4倍频 5Mhz 的高速脉冲进行计数
数码相机·物联网·3dsmax·工业自动化·仪器仪表·工控设备
Big_潘大师20 小时前
十轴IMU模块-AHRS角度姿态、加速度计、磁力计、气压陀螺仪传感器
stm32·单片机·嵌入式硬件·arduino·陀螺仪