タグ

ブックマーク / raspberrylife.wordpress.com (3)

  • WiringPi

    RaspberryPiでPythonを使ってGPIOの入出力を行う場合、GPIOモジュールをimportすれば手軽に使うことができるのだが、GIPOモジュールが実際にアクセスする /dev/mem デバイスはルート権限でしか開くことができない。 そのため、GPIOモジュールをimportするプログラムはルート権限で実行しないと、以下のようなエラーが出てしまう。 RPi.GPIO.SetupException: No access to /dev/mem.  Try running as root! その場合はpythonを起動する時にsudoを付けて実行すれば良いのだが、CGIとしてPythonスクリプトを実行しようと思った場合は、ちょっと困ったことになる。CGIとして実行されるスクリプトは、デフォルトではルート権限にならないのだ。 ルート権限としてCGIを実行する方法はいくつかあるが、そ

    WiringPi
  • Dynamic LED

    7セグメントLEDをマイコンにつないで表示するためには、ドットを含めると8の制御線が必要になる。一個だけならば良いが、複数個になると個数x8の制御線が必要になるので、そのままでは不可能。 良く使われているのがダイナミック点灯という方式で、これは7セグメントLEDを一個ずつ順番に点灯させ、高速に切り替えることで全ての桁が点灯しているように見せる、残像を利用した方式。この方式なら制御線は8+LEDの個数だけで済む。 秋月電子通商で7セグメントLED4個をダイナミック点灯用に並べたモジュールが出ているので、これをRaspberry Piで試してみた。使用したのはカソードコモンの高輝度青色LEDタイプ。 LEDのダイナミック点灯プログラムは高速なコンパイラ言語で作るのが普通で、Pythonのようなインタプリタ言語ではチラついたりして上手く行かないのでは無いか?と思ったのだが、結論から言うとそ

    Dynamic LED
    ginga0118
    ginga0118 2014/11/18
  • PySide(3)

    Qt Designerで作成した .ui ファイルには、フォームとコントロール全ての情報がxml形式で含まれていて loader = QUiLoader() UI = loader.load(ファイルパス名) のように読み込むと、配置したコントロールのオブジェクトが全て含まれたUIオブジェクトが作成される。たとえばLabelコントロールのオブジェクト名を”label”とした場合 UI.label.setText(‘Foo’) とすればラベルコントロールのテキストを変更することができる。 それだけ分かっていれば、コードのみでPySideのGUIを作成したプログラムをQt Designer版に対応させるのは簡単に行える。 ボタンオブジェクト名 = QtGui.QPushButton(ボタンテキスト) ボタンオブジェクト名.clicked.connect(関数名) を UI.ボタンオブジェクト名

    PySide(3)
    ginga0118
    ginga0118 2014/11/14
  • 1