หากฉันต้องการสร้างอุปกรณ์อย่างง่ายที่สื่อสารกับคอมพิวเตอร์ของฉันได้ว่าสวิตช์ที่สามารถปิดเสียงคอมพิวเตอร์เมื่อเปิดและปิดและเสียบเข้ากับ USB สิ่งที่จะเป็นวิธีที่ประหยัดที่สุดและง่ายที่สุดในการทำสิ่งนี้
หากฉันต้องการสร้างอุปกรณ์อย่างง่ายที่สื่อสารกับคอมพิวเตอร์ของฉันได้ว่าสวิตช์ที่สามารถปิดเสียงคอมพิวเตอร์เมื่อเปิดและปิดและเสียบเข้ากับ USB สิ่งที่จะเป็นวิธีที่ประหยัดที่สุดและง่ายที่สุดในการทำสิ่งนี้
คำตอบ:
ที่ง่ายที่สุด? คว้าArduinoและเขียน Python สองบรรทัด Arduino เป็นโปรแกรมที่ใช้งานง่ายอย่างเหลือเชื่อไม่ต้องใช้ฮาร์ดแวร์เพิ่มเติมใด ๆ ในการทำงานและเป็นที่นิยมมาก Pythonมีไลบรารี่อนุกรมที่ตรงไปตรงมามากไลและสามารถเขียนได้ง่าย
รหัสตัวอย่าง
Python: เรียกใช้สคริปต์นี้เป็นบริการ ฉันใช้ Ubuntu ดังนั้นสคริปต์นี้จะปรากฏขึ้นเพื่อแจ้งให้คุณทราบเมื่อมีการกดปุ่มบน Arduino
#! /usr/bin/python
import serial
import pynotify
ser = serial.Serial('/dev/ttyUSB0', 9600)
while True:
x = ser.read()
if x == 'b':
# Show notification
n = pynotify.Notification("Arduino", "The button was pressed.")
n.show()
Arduino:
void setup(){
// Assuming button is active low and on pin 4
pinMode(4, INPUT);
Serial.begin(9600);
}
void loop(){
if(digitalRead(4) == LOW){
Serial.print('b');
}
}
สร้างอุปกรณ์คลาส Human Interface Device USB นั่นคือคลาสเดียวกันที่ใช้โดยคีย์บอร์ด, เม้าส์, จอยสติ๊ก, แผ่นเกมและสิ่งที่คล้ายกัน พีซีของคุณรองรับไดรเวอร์อุปกรณ์อย่างครบถ้วนแล้วสำหรับอุปกรณ์ HID ดังนั้นการเข้าถึงซอฟต์แวร์จึงเป็นเรื่องง่าย จำนวนมากของตัวชี้และแม้กระทั่งรหัสตัวอย่างสามารถพบได้ที่ยานแอเซลสันของหน้า HID สำรวจเว็บไซต์ของเธอเพื่อรับข้อมูลที่ดีมากมายเกี่ยวกับการพัฒนาอุปกรณ์ USB
ตระกูลไมโครโปรเซสเซอร์ขนาดเล็กจำนวนมากสามารถทำ HIDs ได้ ฉันเคยเห็นมันทำที่ USB Low Speed ด้วย ATtiny 8-pin AVR ในซอฟต์แวร์ทั้งหมด
เลือกชิปที่คุณต้องการจากนั้นค้นหา "แหล่งข้อมูลปกติ" เพื่อหาตัวอย่าง HID
อีกวิธีหนึ่งคือการสร้างอุปกรณ์สื่อสารแบบอนุกรม มีชิปตัวเดียวจากFTDIอยู่หลายตัว FT232Rเป็นทางเลือกที่ได้รับความนิยม จำเป็นต้องมีไดรเวอร์ แต่ไดรเวอร์ของ Windows Certified นั้นรู้จักกับ Found New Hardware ดังนั้นการติดตั้งจึงไม่ยาก เมื่อติดตั้งแล้วคุณจะมีอุปกรณ์ที่ดูเหมือนพอร์ต COM มีไดรเวอร์อื่นให้ใช้ซึ่งจะช่วยให้คุณเข้าถึงหมุด GPIO และใช้งานในโหมดขั้นสูงเพิ่มเติม
ปรับปรุง 2015นี้มีการเชื่อมโยงไปยังhttp://www.lvr.com/hidpage.htmซึ่งดูเหมือนว่าจะมีการเชื่อมโยงผุและค้นพบสถานที่ใหม่ต้องขอบคุณเอ Marce Jan Lakeview Research ยังคงเป็นแหล่งข้อมูลที่ยอดเยี่ยมเกี่ยวกับการใช้งาน USB ได้ในทางปฏิบัติ
นี่คือโพสต์บล็อกที่มีรายละเอียดมากhttp://msdn.microsoft.com/en-us/devlabs/dd491992พร้อมซอฟต์แวร์เพื่อใช้ PIC18F4550 ราคาไม่เกิน 5 ดอลลาร์เพื่อเชื่อมต่อผ่าน USB เป็นอุปกรณ์ HID มาตรฐาน ซอฟต์แวร์ที่มีให้สามารถใช้เชื่อมต่อกับอุปกรณ์ HID ใดก็ได้ดังนั้นหากคุณต้องการชิปสำรองซอฟต์แวร์จะยังคงทำงานได้
ข้อดีเพิ่มเติมคือโพสต์บล็อกแสดงวิธีการสื่อสารแบบสองทิศทางดังนั้นไม่เพียง แต่คุณสามารถเชื่อมต่อสวิตช์ที่คุณสามารถเปิดและปิดไฟ LED
นี่เป็นโครงการง่าย ๆ ของฉันที่ใช้ PIC18F2455 อิงจากซอฟต์แวร์ USB ของ Brad Minch PCBs มีให้บริการจาก Olimex