1. 首页
  2. 嵌入式软件

树莓派添加开机自启动python脚本程序

在树莓派上添加开机执行python脚本的程序,以下为用LED测试脚本来演示说明。

1、环境

  • 树莓派为raspberry pi cm4;

2、步骤

2.1、写python脚本

如下为LED闪烁的测试脚本程序:

# !/usr/bin/python

import RPi.GPIO as GPIO
import time
import os
import sys

led_pin = 26

GPIO.setmode(GPIO.BCM)
GPIO.setup(led_pin, GPIO.OUT)

while True:
    GPIO.output(led_pin,1)
    time.sleep(0.2)
    GPIO.output(led_pin,0)
    time.sleep(0.2)

将上述文件保存到 /home/pi/led.py 。

2.2、写启动脚本

一个脚本示例如下:

#!/bin/bash 
# /etc/init.d/led
### BEGIN INIT INFO
# Provides: embbnux 
# Required-Start: $remote_fs $syslog 
# Required-Stop: $remote_fs $syslog 
# Default-Start: 2 3 4 5 
# Default-Stop: 0 1 6 
# Short-Description: led initscript 
# Description: This service is used to test led
### END INIT INFO
case "$1" in 
    start) 
    echo "Starting led service" 
        nohup /usr/bin/python /home/pi/led.py &
    ;;
    stop) 
    echo "Stopping led service"
        #kill led.py
        kill $(ps aux | grep -m 1 'python /home/pi/led.py' | awk '{ print $2 }') 
    ;;
    *) 
    echo "Usage: service led start|stop" 
    exit 1 
    ;; 
    esac
exit 0

将上述脚本保存在 /home/pi/led。

2.3、开机执行

在 /home/pi 下依次执行下面命令

  • 更改执行权限
sudo chmod +x led.py
sudo chmod +x led
  • 添加启动项并开始服务
sudo cp led /etc/init.d/
sudo update-rc.d led defaults
sudo service led start
  • 重启后可以看到开机后会自动执行LED闪烁
版权声明:本文为博主原创文章,转载请声明。

发表评论

邮箱地址不会被公开。 必填项已用*标注

联系我们

MakerInChina
邮箱:bally909@aliyun.com