30行代码实现网页端控制树莓派LED灯

Django+树莓派实现网页端控制LED灯


平台:

  1. 尽量用python 3.6,python 3.7也可以,但是会报一个小错误,直接百度就可以解决。
  2. Django版本:1.11.8

再看一下工程目录结构(别吓着你,其实很多文件是自动生成的,只有templates文件夹和views.py文件是自己创建的):
在这里插入图片描述

//创建Django工作目录,我的目录是/home/pi/django/day02
cd django/day02   # 进入工作目录
django-admin startproject mysite1   # mysite1为项目名称
# 此时工作目录就会生成上图所示(templates文件夹及views.py文件需要自己创建)

需要修改的配置如下:

在settings.py文件中加一行路径,其实就是指定templates文件夹的位置。
在这里插入图片描述
好啦,现在就可以正式开始编程了!!
urls.py文件的代码如下:在这里插入图片描述
views.py文件如下:
在这里插入图片描述
urls.py的代码:

#  urls.py
from django.conf.urls import url
from django.contrib import admin
from . import views

urlpatterns = [
      url(r'^admin/',admin.site.urls),
      url(r'^index/',views.light_view),
      url(r'^turn_on/',views.turn_on),
      url(r'^turn_off/',views.turn_off),

]

views.py的代码如下:

from django.http import HttpResponse
import RPi.GPIO as GPIO
import time
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(18,GPIO.OUT)
from django.shortcuts import render

def light_view(request):

    return render(request,'led.html')

def turn_on(request):
    GPIO.output(18,GPIO.LOW)
    return render(request,'led.html')

def turn_off(request):
    GPIO.output(18,GPIO.HIGH)
    return render(request,'led.html')

led.html的代码非常简单:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>网页端控制LED</title>
</head>
<body>
    <a href="/turn_on"><button></button></a>
    <a href="/turn_off"><button></button></a>
</body>
</html>

运行:

在工作目录输入python3 manage.py runserver(看到红色警告忽略即可)
在这里插入图片描述
打开网页进行访问页面:输入127.0.0.1:8000/index/
然后就可以控制树莓派的LED灯啦!!!
在这里插入图片描述

  • 4
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值