【求助】如何用Arduino模拟一个比例电位器(摇杆电位器)
就是上边这个玩意。。。。
通常用在游戏机手柄上或者遥控器上边的
具体作用就是控制方向什么的嘛。
我想远程用Arduino控制一下 摇杆就是个A/D转换,你想用单片机模拟,可以直接输出数据,就是不知道你前期的数据怎么来。 参考这个
http://www.geek-workshop.com/thread-96-1-1.html 老胖熊 发表于 2015-7-23 13:17 static/image/common/back.gif
摇杆就是个A/D转换,你想用单片机模拟,可以直接输出数据,就是不知道你前期的数据怎么来。
我也是这么想的。。。
用DA输出值到摇杆那边对应引脚。
前期数据?我是直接手机通过wifi透传到串口,让Arduino解析协议生成的 asdfcgdc 发表于 2015-7-23 16:06 static/image/common/back.gif
参考这个
http://www.geek-workshop.com/thread-96-1-1.html
怎么用我是明白的。但是反过来模拟一个它在起作用,脑袋思路有点模糊 楼上通通理解错误。楼主问的不是如何读取电位器,是问如何通过Arduino模拟一个电位器。
很简单,弄个数字电位器芯片就可以了。 楼主,可以用数字电位器AD5131,来模拟普通电位器http://www.hacker-china.com/maker/336.html 在arduino官网找到的数字电位器AD5171https://www.arduino.cc/en/Tutorial/DigitalPotentiometer maxims 发表于 2015-7-23 18:16 static/image/common/back.gif
怎么用我是明白的。但是反过来模拟一个它在起作用,脑袋思路有点模糊
反正就是显示两个轴加一个开关 本帖最后由 darkorigin 于 2015-7-24 11:01 编辑
不需要什么所谓的模拟啊
楼主贴的这个 可以理解为2个电位器 (X轴和Y轴)
最简单的原理就是 输出电位值。。。 只要ARDUINO的GND和需要输出电路的GND相连 然后用PWM模拟脚直接输出数据就好了。。。2个脚 输出2个值。。。
楼主这个设计估计是要求做成某些设备的遥控接受器(比如航模 电动模型)
就是输出模拟量就好ARDUINO直接自带DA脚只要用程序设置模式 然后用函数直接输出模拟值即可. 不需要什么外挂芯片...
int Pin_e = 9;// 输出连接到数字引脚9
void setup()
{
pinMode(Pin_e,OUTPUT);//设置引脚为输出引脚
}
void loop()
{
for (int i=0; i <= 255; i++) analogWrite(Pin_e,i);//用I的值作为模拟输出量输出 ,用电位绘制曲线会是一个斜线
}
代码很简单就是设置模式 和模拟输出 2个函数
你只要写好你的接受和数据处理代码然后直接用PWM方式输出数据即可 490HZ的频率 输出模拟值 开关量 直接就是一个数字脚即可 给1就是高电平 给0就是低电平 主要是状态信息比如控制某一个LED的开启,控制起落架 等等。。。 越说越乱了;P 比如,10位深度,那么这个摇杆对应的就是0-1023,从手机那里发送0-1023间的数据就行了,这边就处理这个数就行。中间只是省去了读摇杆电阻转换成0-1023的过程。希望我理解的是错的;P darkorigin 发表于 2015-7-24 10:44 static/image/common/back.gif
不需要什么所谓的模拟啊
楼主贴的这个 可以理解为2个电位器 (X轴和Y轴)
不,你理解错了。我不是做接收端。
而是在模拟你手工操作摇杆的样子。。。。
它的构造我明白的,但问题是,这个XY在操作过程中有一个相关联的相互作用……
单独一个电位器用DA输出很容易就模拟它了。 老胖熊 发表于 2015-7-24 12:46 static/image/common/back.gif
比如,10位深度,那么这个摇杆对应的就是0-1023,从手机那里发送0-1023间的数据就行了,这边就处理这个数就 ...
是的,你的理解是正确的。
就是模拟它的一个变化过程。
不过重点是XY在变化的时候,他们有互相影响的。。
比如,我表示一个向左操作(相当于时钟表盘的9点整/270度角),X变化了,Y不动还是中点值。
不过如果我要表示一个右上操作呢(相当于2点半/45度角)?按说,可以先模拟X再模拟Y……
页:
[1]
2