থামান / জাগানো বোতামটি তৈরি করছেন?


10

আমি পিন 5 এবং 6 ব্যবহার করে একটি জাগ্রত-থেকে-থামানো বোতামটি আপ করেছি These এই দুটি পিন, সংযুক্ত হওয়ার পরে, হলের থেকে শক্তি পুনরায় সেট করবে এবং পুনরায় বুট করবে। আমি এই একই বোতামটি ব্যবহার করতে চাই, যদি আমি পারি তবে একটি কমান্ড চালাতে চাইলে, চাপলে কম্পিউটারটি বন্ধ করে দেওয়া হবে sudo halt। এটা কি সম্ভব হবে? জন্য sudo haltবোতাম, আমি বাটন GPIO 1 থেকে সংযোগ করতে তারপর GPIO 6 (মাঠ) এবং একটি সাধারণ GPIO পিন বিভক্ত প্রয়োজন হবে। আমি জানি না যে জিপিআইও 5 এর সাথে এটির সাথে সংযোগ স্থাপন করা সম্ভব / নিরাপদ কিনা।

উত্তর:


8

অন্যান্য জিপিআইও পিন যুক্ত করার দরকার নেই। আপনি আপনার থামার বাটনটির জন্য একই পিনগুলি ব্যবহার করতে পারেন।

এখানে কিছু অজগর কোড রয়েছে যা পিনটি পোল করবে 5 5. বোতামটি টিপলে পিন 5 টি টানতে টানতে হবে (পিন 6), এবং কোডটি নীচে পড়বে। সেক্ষেত্রে haltকমান্ড চালানো হবে

#!/usr/bin/python
import RPi.GPIO as GPIO
import time
import subprocess

GPIO.setmode(GPIO.BOARD)
# set pin 5 to input, and enable the internal pull-up resistor
GPIO.setup(5, GPIO.IN, pull_up_down=GPIO.PUD_UP)

oldButtonState1 = True
while True:
    buttonState1 = GPIO.input(5)

    if buttonState1 != oldButtonState1 and buttonState1 == False :
        # print "Button 1 pressed"
        subprocess.call("halt", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

    oldButtonState1 = buttonState1

    time.sleep(.1)

পুনশ্চ. আমি ওয়েক থেকে হাল্ট ফাংশন সম্পর্কে জানতাম না। আপনাকে ধন্যবাদ আমি এখন জানি! সূতরাং ধন্যবাদ.


1
উজ্জ্বল! আমি বুঝতে পারিনি যে আমি কেবল 5 এবং 6 এ এগুলি করতে পারি Thank ধন্যবাদ! :)
রায়ান ম্যাকক্লুরে

সুতরাং, আমরা দু'জনেই আজ কিছু শিখেছি (-:
গারবেন

আমার কাছে আরও একটি নোট। আপনি একটি প্রেস রিবুট করতে কোডটিও সংশোধন করতে পারেন, এবং শাটডাউন করতে প্রেস (এবং বিপরীতে) ধরে রাখতে পারেন।
গারবেন 20

কীভাবে আপনার স্ক্রিপ্ট অবিচ্ছিন্নভাবে চলছে, অর্থাত্‍ ডিমনাইজড? সিনেমা দেখার সময় আপনি কি পারফরম্যান্সের কোনও হ্রাস লক্ষ্য করেছেন?
এথনাসিস

1
প্রকৃতপক্ষে, এটি খুব দীর্ঘ সময়, তবে যখন সিপিইউ কয়েক সেকেন্ডের জন্য 100% হিট করে না, উদাহরণস্বরূপ, পূর্ণ এইচডি চলচ্চিত্রের ডিকোডিংয়ের সময়। আমি এটি দিয়ে চেষ্টা করব, টেস্টিং কখনই ব্যাথা করে না। সাহায্য করার জন্য ধন্যবাদ!
এথেন্যাসিস

2

একটি রিসেট বোতামটি পি 6 হেডারের সাথে সংযুক্ত করা যেতে পারে, যার সাহায্যে পাই পুনরায় সেট করা যায়। মুহুর্তে পি 6 এর দুটি পিন একসাথে সংক্ষিপ্ত করা সিপিইউ-এর একটি নরম পুনঃস্থাপনের কারণ ঘটবে (যা পাইকে থামিয়ে / বন্ধ করার অবস্থা থেকে 'জাগ্রত' করতে পারে)

CF


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.