Raspberry PiでGPIO 関連のURLは、下記が役に立ちそうですね。
※私はRaspberry Piもっていませんので、詳しい回答ができずにすみません。
最初から書かれているので、とてもいい資料です。
https://tool-lab.com/make-course/raspberrypi/
疑似的にアナログ信号を出力する方法が良く書かれています。今回は、ここが
役にたつかもしれません。
http://ag.hatenablog.com/entry/2015/07/31/013013
擬似的なアナログ出力 (PWM)
Raspberry Pi はアナログ出力できません。PWM (Pulse Width Modulation) で擬似的にアナログ出力します。
python
1#!/usr/bin/env python
2# -*- coding: utf-8 -*-
3import RPi.GPIO as GPIO
4import time
5
6# 初期設定
7GPIO.setmode(GPIO.BCM)
8
9# GPIO 14 を出力に設定
10GPIO.setup(14, GPIO.OUT)
11
12# PWM 設定
13freq = 50 # Hz (PWM のパルスを一秒間に 50 個生成)
14duty = 0.0 # デューティー比 0.0 で出力開始 (パルス内に占める HIGH 状態の時間が 0.0 %)
15pwm = GPIO.PWM(14, freq)
16pwm.start(duty)
17
18try:
19 # デューティー比 (duty cycle) を 0..100 の範囲で変化 (Ctrl-C 待ち)
20 while True:
21 duty = (duty + 1) % 101
22 print "%s GPIO 14 duty cycle %d%%" % (time.strftime("%Y/%m/%d %H:%M:%S"), duty)
23 pwm.ChangeDutyCycle(duty)
24 time.sleep(0.1)
25except:
26 print "interrupted"
27finally:
28 # 後片付け
29 pwm.stop()
30 GPIO.cleanup()