Не удается запустить файл при загрузке с Raspberry Pi - PullRequest
0 голосов
/ 20 июня 2020

Я пробовал несколько способов (crontab и r c .local) сделать это. Я трижды проверял свой код и процессы каждый раз, но безрезультатно.

Я делаю подарок на день отца с кнопкой, на которой написано его любимое слово «Нет!». Каждый раз при перезагрузке моя программа вообще не реагирует на GPIO и прикрепленную кнопку. Так ли я структурировал свой неряшливый код?

Я не являюсь родным в Python, поэтому прошу вас помочь мне.

При запуске с терминала или через Тонни он работает отлично. Но не смотря ни на что, при запуске не загружается!

Вот мой r c .local

Вот мой код для программы:

import pygame
from random import randint
import RPi.GPIO as GPIO


GPIO.setwarnings(False) # Ignore warning for now
GPIO.setmode(GPIO.BOARD) # Use physical pin numbering
GPIO.setup(10, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)


pygame.mixer.init()

#pygame.mixer.music.play()
while pygame.mixer.music.get_busy() == True:
    continue


proverbFile = 'proverbs/Pro1.mp3'
num = 5
def randNo ():
    noFile = '/home/pi/Desktop/audio/no/No1.mp3'
    print('Executed!')
    default = 1
    global num
    pulled = 1
    while num == pulled:
        pulled = randint(1,4)
        print('Same!')

    num = pulled
    print(num)
    noFile = noFile.replace(str(default), str(num), 1)
    print(noFile)
    pygame.mixer.music.load(noFile)
    pygame.mixer.music.play()
    default = num

def button_callback(channel):
        print("Button was pushed!")
        randNo()

GPIO.add_event_detect(10,GPIO.RISING,callback=button_callback)

#while True:
#    keyPress = input('Press q to quit: ')

#    if keyPress == 'q':
#        break;



#GPIO.add_event_detect(10,GPIO.RISING,callback=button_callback) # Setup event on pin 10 rising edge

1 Ответ

0 голосов
/ 20 июня 2020

Если вы хотите, чтобы сценарий запускался при загрузке в среду LXDE, вы можете посмотреть это сообщение на форуме Raspberry Pi :

Navigate to ~/.config/lxsession/LXDE-pi

Откройте файл автозапуска в эта папка:

$ sudo nano autostart

Добавьте @midori в новую строку. Если вы хотите запустить что-то вроде сценария python, поместите что-то вроде @ python my python .py в новую строку. Запуск файла сценария будет иметь вид @. / Superscript, но по какой-то причине сценарий работает с бесконечным l oop (возможно, это остановит это).

Save and exit: Ctrl+X, Y, Enter

Перезагрузите Raspberry Pi в среде LXDE .

ответ от здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...