โปรแกรมจำลองดิสก์ USB การสร้างแฟลชไดรฟ์เสมือนโดยใช้โปรแกรม OSFmount เป็นตัวอย่าง คำแนะนำในการใช้ OSFmount

การพัฒนา อุปกรณ์ต่างๆที่ใช้ไมโครคอนโทรลเลอร์เป็นกิจกรรมที่คุ้มค่าแก่ผู้คลั่งไคล้คอมพิวเตอร์ตัวจริง ไม่ต้องสงสัยเลยว่าคุณสมบัติที่มีประโยชน์ของอุปกรณ์ใด ๆ จะเป็นอินเทอร์เฟซ USB สำหรับเชื่อมต่อกับคอมพิวเตอร์ แต่จะเกิดอะไรขึ้นถ้าชิป AVR ไม่รองรับฮาร์ดแวร์สำหรับ USB?

V-USB: ขนาดมีความสำคัญ

เมื่อพัฒนาอุปกรณ์ของคุณเองมักเกิดปัญหาในการเชื่อมต่อกับคอมพิวเตอร์ ฉันต้องบอกว่า พอร์ต LPTและ COM - ตอนนี้เปิดใหม่แล้ว เมนบอร์ดพีซีไม่ต้องพูดถึงแล็ปท็อปซึ่งอินเทอร์เฟซเหล่านี้หายไปนานแล้ว ดังนั้น คอมพิวเตอร์สมัยใหม่ไม่มีทางเลือกอื่นนอกจากอินเทอร์เฟซ USB

หากใช้ทรัพยากรของชิปหนึ่งร้อยเปอร์เซ็นต์จะเป็นการดีกว่าถ้าดูอุปกรณ์ที่รองรับฮาร์ดแวร์สำหรับบัสอนุกรมสากลทันที (ไมโครคอนโทรลเลอร์ดังกล่าวอยู่ในกลุ่มผู้ผลิตรายใด) ในกรณีอื่นๆ คุณสามารถใช้ซอฟต์แวร์ USB ได้

สำหรับ ไมโครคอนโทรลเลอร์ Atmelมีโครงการ V-USB ที่ยอดเยี่ยมที่นำเสนอการใช้งานซอฟต์แวร์ความเร็วต่ำ อุปกรณ์ USB 1.1. รหัส V-USB จะทำงานบนอุปกรณ์ AVR ใด ๆ ที่มีหน่วยความจำแฟลชอย่างน้อย 2KB และ RAM ขนาด 128 ไบต์ด้วย ความถี่สัญญาณนาฬิกา 12; 12.8; 15; 16; 16.8 หรือ 20 เมกะเฮิรตซ์

สินค้าสามารถใช้ได้ภายใน โอเพ่นซอร์สใบอนุญาต GPL และในเชิงพาณิชย์ เพื่อที่จะพัฒนาอุปกรณ์ USB ของคุณเอง คุณจะต้องซื้อใบอนุญาตบางประเภทด้วย แต่คนจาก V-USB ก็ดูแลเรื่องนี้เช่นกัน โดยซื้อ Vendor ID - Product ID หนึ่งคู่ และอนุญาตให้ใครก็ได้ใช้มัน

ฮาร์ดแวร์สำหรับเชื่อมต่อบัส USB เข้ากับไมโครคอนโทรลเลอร์นั้นง่ายมาก หากอุปกรณ์ไม่กินไฟมากเกินไปก็สามารถจ่ายไฟจากบัสได้โดยตรง (ถือว่าสายไฟ คอมพิวเตอร์ยูเอสบีและสามารถจ่ายกระแสได้สูงถึง 500 mA) เนื่องจากเส้นข้อมูล (D+ และ D–) ใช้ระดับสัญญาณ 3.6 V นอกเหนือจากตัวต้านทานจำกัดกระแสแล้ว ซีเนอร์ไดโอดจึงจำเป็นเพื่อให้ตรงกับตรรกะ 5 V ของชิป เพื่อระบุประเภทของการเชื่อมต่อ คุณต้อง "ดึง" แรงดันไฟฟ้าของแหล่งจ่ายผ่านความต้านทาน 1.5 kOhm ไปยังเส้น D–

ทางเลือกอื่นการจับคู่ผ่าน USB - ลดแรงดันไฟฟ้าของตัวควบคุมโดยใช้ชิปรักษาเสถียรภาพที่เหมาะสมหรือเพียงไดโอดคู่หนึ่ง ไดอะแกรมล่าสุดสามารถพบได้บนเว็บไซต์โครงการ V-USB

โปรแกรมเมอร์ USBtiny

มีโปรแกรมเมอร์มากมายสำหรับไมโครคอนโทรลเลอร์ AVR USBtiny ถูกกล่าวถึงในที่นี้ส่วนหนึ่งเนื่องจากมีการใช้งานซอฟต์แวร์ USB ที่คล้ายกับ V-USB วงจรของโปรแกรมเมอร์นี้เรียบง่าย: เวอร์ชัน 2 มีสองไมโครวงจรและเวอร์ชันแรกมีเพียงวงจรเดียวเท่านั้น (ชิป ATtiny2313 เอง) ขอบคุณ คำอธิบายโดยละเอียดบนเว็บไซต์และด้วยส่วนประกอบที่เรียบง่าย ทำให้อุปกรณ์นี้สร้างได้ง่ายแม้สำหรับมือใหม่ USBtiny เข้ากันได้กับโปรแกรม avrdude ยอดนิยมที่ใช้สำหรับการเขียนโปรแกรมไมโครคอนโทรลเลอร์ AVR

ปัญหาเดียวคือการอัปโหลดเฟิร์มแวร์ไปยังชิปโปรแกรมเมอร์ - สำหรับสิ่งนี้ คุณต้อง... โปรแกรมเมอร์ หากคุณมีคอมพิวเตอร์ที่มีพอร์ต LPT คุณสามารถสร้างหนึ่งในตัวเลือก FBPRG หรือที่เรียกว่า "ห้าสาย" ซึ่งก็คือ

การเตรียมเลื่อน

เครื่องมือซอฟต์แวร์ที่จำเป็นในการใช้เฟิร์มแวร์ที่ง่ายที่สุดสำหรับอุปกรณ์ USB นั้นมีความพรั่งพร้อมอย่างยิ่ง: คอมไพเลอร์ gcc-avr, ไลบรารี avr-libc, โปรแกรมเมอร์ avrdude และ binutils ที่ตั้งค่าไว้สำหรับ AVR บน Debian/Ubuntu ทุกสิ่งที่คุณต้องการได้รับการติดตั้งด้วยคำสั่งเดียว:

$ sudo apt-get ติดตั้ง avrdude binutils-avr gcc-avr avr-libc

บนอินเทอร์เน็ตที่กว้างใหญ่นั้นหาได้ไม่ยาก คำแนะนำโดยละเอียดผ่าน V-USB และ libusb (เป็นภาษาอังกฤษ) ตามคู่มือในการเพิ่มการรองรับ USB ให้กับโปรเจ็กต์คุณจะต้องมีโฟลเดอร์ usbdrv จากไฟล์เก็บถาวรด้วย รุ่นล่าสุด V-USB ที่รูทของโฟลเดอร์นี้จะมีเทมเพลตการกำหนดค่า usbconfig-prototype.h คุณต้องทำสำเนาของไฟล์นี้ โดยเรียกว่า usbconfig.h ถัดไป แก้ไข usbconfig.h โดยระบุพอร์ต (D) บรรทัดที่จะใช้สำหรับ I/O หมายเลขบรรทัด D+ (2) และ D– (3) รวมถึงความถี่ (12 MHz) ที่ ซึ่งชิปทำงานอยู่ (ATtiny2313 ):

#กำหนด USB_CFG_IOPORTNAME D #กำหนด USB_CFG_DMINUS_BIT 3 #กำหนด USB_CFG_DPLUS_BIT 2 #กำหนด USB_CFG_CLOCK_KHZ 12000

หากต้องการใช้ใบอนุญาต V-USB สำหรับอุปกรณ์ คุณไม่จำเป็นต้องเปลี่ยนผู้ผลิตและ ID ตัวเลขของอุปกรณ์ แต่คุณสามารถเลือกชื่อสัญลักษณ์ได้ตามต้องการ (จะช่วยให้คุณสามารถแยกแยะอุปกรณ์ที่ใช้ V-USB หลายเครื่องที่เชื่อมต่อกับคอมพิวเตอร์เครื่องเดียวกันได้):

#กำหนด USB_CFG_VENDOR_ID 0xc0, 0x16 #กำหนด USB_CFG_DEVICE_ID 0xdc, 0x05 #กำหนด USB_CFG_VENDOR_NAME "n", "e", "t", "s", "4", "g", "e", "e", "k" ,"s",".","c", "o", "m" #กำหนด USB_CFG_VENDOR_NAME_LEN 14 #กำหนด USB_CFG_DEVICE_NAME "U", "S", "B", "e", "x", "a" ,"m", "p", "l", "e" #define USB_CFG_DEVICE_NAME_LEN 10

แกดเจ็ตต่างๆ

คุณมีความคิดสำหรับอุปกรณ์ใด ๆ หรือไม่? อย่ารีบเร่งในการบัดกรีและเขียนโค้ด แต่ดูสิ อาจมีบางคนทำสิ่งที่คล้ายกันไปแล้ว หากคุณไม่สามารถใช้ไดอะแกรมและแหล่งที่มาสำเร็จรูปได้ อย่างน้อยคุณก็ไม่จำเป็นต้องเริ่มต้นทุกอย่างตั้งแต่ต้น

ตัวอย่างเช่นโครงการ V-USB ต้องขอบคุณ นโยบายการออกใบอนุญาตได้สะสมฐานที่เหมาะสมของโซลูชันสำเร็จรูป (รวมถึงการแจกจ่ายฟรี) ที่นี่คุณจะพบการใช้งานคีย์บอร์ด อะแดปเตอร์ USB สำหรับจอยสติ๊ก เกมแพด (รวมถึงรุ่นที่หายาก เช่น SNES/NES, Nintendo 64, จอยสติ๊ก ZX Spectrum, Sony PlayStation 1/2) และอื่นๆ ที่คล้ายกัน อะแดปเตอร์ DMX, พอร์ต COM และ UART เสมือน, i2c, เซอร์โว, DCF77, อินเทอร์เฟซไร้สาย IR - ทุกสิ่งที่จะช่วยให้คุณเชื่อมต่ออุปกรณ์ใหม่เข้ากับพีซีของคุณได้มากขึ้น เครื่องบันทึก แท่นสำหรับโพรบและเซ็นเซอร์ อะแดปเตอร์สำหรับจอ LCD โปรแกรมเมอร์และตัวโหลดก็มีประโยชน์ในครัวเรือนเช่นกัน

โปรแกรมสำหรับชิปนั้นเป็นโปรแกรมเบื้องต้น!

เมื่อโต้ตอบผ่านบัส USB คอมพิวเตอร์จะเป็นอุปกรณ์หลักที่จะส่งข้อความคำขอควบคุมเป็นระยะ ผู้ควบคุมจึงเป็นทาสและต้องตอบสนองต่อคำร้องขอ รูปแบบข้อความควบคุมถูกกำหนดโดยโครงสร้าง usbRequest_t จากไฟล์ usbdrv.h:

Typedef struct usbRequest ( uchar bmRequestType; uchar bRequest; usbWord_t wValue; usbWord_t wIndex; usbWord_t wLength; ) usbRequest_t;

มาสร้างไฟล์ main.c ในระดับเดียวกับโฟลเดอร์ usbdrv และอธิบายไฟล์ส่วนหัว คำจำกัดความ และตัวแปรที่จำเป็นในนั้น:

#รวม #รวม #รวม #include "usbdrv.h" #define F_CPU 12000000L // ความถี่ MK #include #define DATA_OUT 1 // ส่งคำสั่ง #define DATA_IN 2 // รับคำสั่ง // บัฟเฟอร์ uchar แบบคงที่ ReplyBuf = "Hello World!"; dataLength แบบคงที่ = 0, dataReceived = 0;

ใน main.c เราจะแทนที่ฟังก์ชัน usbFunctionSetup ซึ่งจะถูกเรียกโดยอัตโนมัติเมื่อได้รับคำขอใหม่:

USB_PUBLIC uchar usbFunctionSetup(uchar data) ( usbRequest_t *rq = (void *)data; switch(rq->bRequest) ( case DATA_OUT: // ประมวลผลคำสั่งเพื่อส่งข้อมูล usbMsgPtr = ReplyBuf; // ระบุขนาดการส่งคืนบัฟเฟอร์ของ (replyBuf ); / / ส่งคืนขนาดบัฟเฟอร์กรณี DATA_IN: // กำลังประมวลผลคำสั่งรับข้อมูล dataLength = (uchar)rq->wLength.word; // รับความยาว dataReceived = 0; // จะมีการเรียก usbFunctionWrite หลายครั้งถ้า ( dataLength > sizeof(replyBuf)) // กำลังตรวจสอบ overflow dataLength = sizeof(replyBuf); return USB_NO_MSG; // Return 255 ) return 0; )

ดังที่คุณเห็นจากรายการ วิธีที่ง่ายที่สุดในการส่งข้อมูลไปยังคอมพิวเตอร์คือการตั้งค่า usbFunctionSetup เป็นค่าของตัวชี้ usbMsgPtr ไปที่บัฟเฟอร์ RAM (replyBuf) ซึ่งมีข้อมูลอยู่ จากนั้นจึงส่งคืนความยาวของข้อมูล ขนาดบัฟเฟอร์ไม่ควรเกิน 254 ไบต์ สำหรับ ATtiny2313 ที่มี RAM ขนาด 128 ไบต์ ก็เพียงพอแล้ว สำหรับอุปกรณ์ที่ใช้งานได้มากขึ้น มีวิธีที่สอง - แทนที่ฟังก์ชัน usbFunctionRead

ในการรับข้อมูล อันดับแรก คุณต้องใช้ฟังก์ชัน usbFunctionSetup เพื่อแยกความยาวของข้อความจากฟิลด์ wLength ของคำขอ และจัดเก็บไว้ในตัวแปรส่วนกลาง dataLength ประการที่สองใน main.c คุณต้องแทนที่ฟังก์ชัน usbFunctionWrite ซึ่งออกแบบมาเพื่อประมวลผลข้อมูลที่ได้รับและจะถูกเรียกโดยอัตโนมัติ (และหลายครั้งอย่างเห็นได้ชัด) หาก usbFunctionSetup ส่งคืนค่า USB_NO_MSG (255):

USB_PUBLIC uchar usbFunctionWrite(uchar *data, uchar len) ( uchar i; // บันทึกส่วนที่ได้รับของข้อมูลลงในบัฟเฟอร์สำหรับ (i = 0; dataReceived< dataLength && i < len; i++, dataReceived++) replyBuf = data[i]; return (dataReceived == dataLength); }

จริงๆ แล้ว ฟังก์ชัน usbFunctionWrite จะเติมบัฟเฟอร์ ReplyBuf ด้วยข้อมูลที่ได้รับ

อย่างไรก็ตาม เพื่อให้วิธีนี้ใช้งานได้ คุณต้องทำการเปลี่ยนแปลง usbconfig.h:

#define USB_CFG_IMPLEMENT_FN_WRITE 1

ฟังก์ชั่นสุดท้ายของเฟิร์มแวร์คือหลัก:

Int main() ( usbInit(); // เริ่มต้น USB usbDeviceConnect(); // เชื่อมต่ออุปกรณ์ sei(); // เปิดใช้งานการขัดจังหวะ // รอข้อความควบคุมในการวนซ้ำไม่สิ้นสุดในขณะที่ (1) usbPoll(); กลับ 0 ; )

มาใช้ USART/UART กันเถอะ

ทางเลือกที่ดีสำหรับซอฟต์แวร์/ฮาร์ดแวร์ USB คือการใช้อินเทอร์เฟซ USART/UART ยอดนิยมในชิปที่มีตัวแปลงบุคคลที่สามของโปรโตคอลนี้เป็น USB ซึ่งสามารถทำได้โดยใช้ชิป FT232RL เป็นต้น

Libusb: ไม่สวมเสื้อผ้าหรือเปลือยเปล่า

คุณอาจถามว่า: คุณจะต้องเขียนไดรเวอร์สำหรับระบบปฏิบัติการคอมพิวเตอร์เพื่อเชื่อมต่ออุปกรณ์ USB หรือไม่? หากคุณใช้ libusb คุณสามารถทำได้โดยไม่ต้องใช้โมดูลเคอร์เนลที่มีคุณสมบัติครบถ้วน Libusb เป็นไลบรารีโอเพ่นซอร์สที่ช่วยให้คุณตั้งโปรแกรมได้อย่างรวดเร็ว ประการแรก ค้นหาอุปกรณ์บนบัส และประการที่สอง แลกเปลี่ยนข้อมูลกับอุปกรณ์นั้น

ภายใต้ Linux ไลบรารีและไฟล์ส่วนหัวที่จำเป็นสามารถรับได้จากซอร์สโค้ด ควรใช้พื้นที่เก็บข้อมูลมาตรฐานของการแจกจ่ายของคุณ สำหรับ Debian/Ubuntu เช่นนี้:

$ sudo apt-get ติดตั้ง libusb-dev

นอกจากนี้ยังมีพอร์ต libusb สำหรับ Windows - libusb-win32 ตรงกันข้ามกับชื่อของโครงการ รองรับระบบปฏิบัติการ 64 บิตจาก Microsoft ด้วย (เริ่มจากเวอร์ชัน 1.2.0.0)

แต่ libusb เป็นหัวข้อสนทนาที่แยกจากกัน ฉันคิดว่าคุณคุ้นเคยกับการเขียนโปรแกรมพีซีและสามารถคิดออกได้ด้วยตัวเอง ดังนั้นฉันจะสั้น ๆ สร้างไฟล์ usbtest.c และเริ่มเติมเนื้อหา ก่อนอื่นให้ไฟล์ส่วนหัวและคำจำกัดความที่จำเป็น:

#รวม [...] // สำหรับคอมพิวเตอร์ ความหมายของคำสั่งจะกลับกัน // แต่การกำหนดยังคงเหมือนเดิม #define DATA_OUT 1 #define DATA_IN 2

ฟังก์ชัน usbOpenDevice เพื่อเริ่มต้นอุปกรณ์:

Usb_init(); // เริ่มต้น USB usb_find_busses(); // ค้นหาบัส usb_find_devices(); // ค้นหาอุปกรณ์ // ระบุบัสทั้งหมดสำหรับ (bus=usb_get_busses(); bus; bus=bus->ถัดไป) ( // ระบุอุปกรณ์ทั้งหมดบนบัสสำหรับ (dev=bus->อุปกรณ์; dev; dev=dev- > ถัดไป) ( // หากผู้จำหน่ายและรหัสผลิตภัณฑ์ไม่ตรงกัน... if(dev->descriptor.idVendor != vendor || dev->descriptor.idProduct != product) ดำเนินการต่อ; // ...ข้ามสิ่งนี้ การวนซ้ำ // พยายามรับตัวจัดการอุปกรณ์ if(!(handle = usb_open(dev))) ( fprintf(stderr, "%s\n", usb_strerror()); Continue; ) return handle; // Return handle ) ) // ไม่พบอุปกรณ์ส่งคืน NULL;

อย่างที่คุณเห็นพารามิเตอร์ usbOpenDevice เป็นตัวระบุตัวเลขของผู้ผลิตและอุปกรณ์ หากมีอุปกรณ์อยู่บนบัส ตัวอธิบายจะถูกส่งกลับ หากมีอุปกรณ์หลายตัวบน V-USB คุณจะต้องเพิ่มการตรวจสอบชื่อสัญลักษณ์ของผู้ขายและผลิตภัณฑ์

และฟังก์ชั่นหลักของยูทิลิตี้คอนโซล usbtest:

Int main(int argc, char **argv) ( // ตัวอธิบายอุปกรณ์ usb_dev_handle *handle = NULL; int nBytes = 0; char buffer; // กำลังมองหาตัวจัดการอุปกรณ์ = usbOpenDevice(0x16C0, 0x05DC); if(handle == NULL) ( fprintf(stderr, "Could not find USB device!\n"); exit(1); ) // อาร์กิวเมนต์ออก - รับข้อมูลจากชิป if(strcmp(argv, "out") == 0) ( nBytes = usb_control_msg (ตัวจัดการ, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_IN, DATA_OUT, 0, 0, (ถ่าน *)บัฟเฟอร์, ขนาดของ(บัฟเฟอร์), 5000); printf("มี %d ไบต์: %s\n", nBytes, บัฟเฟอร์) ; // อาร์กิวเมนต์ใน - ส่งสตริง (อาร์กิวเมนต์ถัดไป) ) else if(strcmp(argv, "in") == 0 && argc > 2) ( nBytes = usb_control_msg(handle, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_OUT, DATA_IN, 0, 0 , argv, strlen(argv)+1, 5000); ) ถ้า(nBytes< 0) fprintf(stderr, "%s\n", usb_strerror()); usb_close(handle); // Закрыть дескриптор return 0; }

ฟังก์ชัน usb_control_msg ซึ่งประกาศไว้ในไฟล์รวม usb.h จะควบคุมการพักอยู่ที่นี่ มันมีพารามิเตอร์มากมายและสร้างข้อความควบคุมเหล่านั้นจริง ๆ ซึ่งการประมวลผลนั้นถูกนำไปใช้ในเฟิร์มแวร์ไมโครคอนโทรลเลอร์

โพรทูสกำลังพักผ่อน

Proteus ISIS เครื่องจำลองวงจรไฟฟ้าที่ทุกคนชื่นชอบนั้นไม่มีประโยชน์เมื่อพัฒนาอุปกรณ์ USB ที่ใช้ซอฟต์แวร์ โปรแกรมจำลอง USB รองรับชิปที่รองรับฮาร์ดแวร์ Universal Serial Bus เท่านั้น (เช่น AT90USB646 หรือ AT90USB1286)

เราประกอบ แฟลช ทดสอบ

ด้านล่างนี้เป็น Makefile ขนาดเล็ก แต่มีประโยชน์มากซึ่งคุณสามารถรับเฟิร์มแวร์สำหรับชิปได้อย่างง่ายดาย - main.hex และไบนารียูทิลิตี้ usbtest โดยใช้คำสั่ง make จาก main.c และ usbtest.c:

CC = avr-gcc OBJCOPY = avr-objcopy CFLAGS = -Wall -Os -Iusbdrv -mmcu=attiny2313 OBJFLAGS = -j .text -j .data -O ihex OBJECTS = usbdrv/usbdrv.o usbdrv/oddebug.o usbdrv/usbdrvasm .o main.o CMDLINE = usbtest # Goal: รวบรวมทุกอย่างทั้งหมด: main.hex $(CMDLINE) # สร้างยูทิลิตี้สำหรับคอมพิวเตอร์ $(CMDLINE): usbtest.c gcc -I ./libusb/include -L ./libusb /lib /gcc -O -Wall usbtest.c -o usbtest -lusb # ล้างโปรเจ็กต์จากรหัสไบนารี่ที่สะอาด: $(RM) *.o *.hex *.elf usbdrv/*.o # รับไฟล์เฟิร์มแวร์จาก ไฟล์เอลฟ์ %.hex: %.elf $(OBJCOPY) $(OBJFLAGS) $< $@ # Сборка elf-файла main.elf: $(OBJECTS) $(CC) $(CFLAGS) $(OBJECTS) -o $@ # Сборка файлов библиотеки V-USB $(OBJECTS): usbdrv/usbconfig.h # C в объектный код %.o: %.c $(CC) $(CFLAGS) -c $< -o $@ # asm в объектный код %.o: %.S $(CC) $(CFLAGS) -x assembler-with-cpp -c $< -o $@

หากต้องการอัปโหลดเฟิร์มแวร์ไปยังไมโครคอนโทรลเลอร์โดยใช้โปรแกรมเมอร์ usbtiny ให้พิมพ์คำสั่ง:

$ sudo avrdude -p t2313 -c usbtiny -e -U แฟลช:w:main.hex:i -U lfuse:w:0xef:m

ใน avrdude การตั้งค่าฟิวส์ไม่ชัดเจนนัก แต่สามารถคำนวณได้อย่างง่ายดายในเครื่องคิดเลขออนไลน์เครื่องใดเครื่องหนึ่ง


เราเชื่อมต่ออุปกรณ์กับคอมพิวเตอร์และตรวจสอบวิธีการทำงาน (usbtest โดยมีพารามิเตอร์ out อ่านบรรทัดใน - เขียนบรรทัดที่ระบุลงในบัฟเฟอร์ชิป):

$ sudo ./usbtest ใน all_ok $ sudo ./usbtest ออก

น้ำมันดินหนึ่งช้อน

ซอฟต์แวร์ USB ไม่ใช่ยาครอบจักรวาล การใช้งานซอฟต์แวร์มักจะมีการทำให้ง่ายขึ้นหลายประการ เช่น ขาดการตรวจสอบผลรวมและสมมาตรของช่องสัญญาณ ซึ่งส่งผลเสียต่อภูมิคุ้มกันทางเสียง นอกจากนี้ไลบรารีซอฟต์แวร์มักจะใช้โหมดการทำงาน USB ความเร็วต่ำ และโค้ดไลบรารี USB จะกินหน่วยความจำขนาดเล็กของชิปจนหมด

มาดูกัน...

ในระดับลอจิก โปรโตคอล USB ถือเป็นการถ่ายโอนข้อมูลแพ็กเก็ตหลายระดับ ง่ายต่อการตรวจสอบ (และในขณะเดียวกันก็เรียนรู้สิ่งที่น่าสนใจมากมายเกี่ยวกับ USB) โดยใช้ตัววิเคราะห์โปรโตคอลเครือข่าย Wireshark คุณต้องดาวน์โหลดไดรเวอร์จอภาพ USB ก่อน:

$ sudo modprobe usbmon

ตอนนี้คุณสามารถเลือกบัส USB ได้จากรายการอินเทอร์เฟซ Wireshark คุณสามารถดูหมายเลขบัสของอุปกรณ์ได้ เช่น ในบันทึก

บทสรุป

ฉันหวังว่าหลังจากที่คุณได้เรียนรู้วิธีการถ่ายโอนข้อมูลระหว่างคอมพิวเตอร์และไมโครคอนโทรลเลอร์ AVR แล้ว ความหลงใหลในอุปกรณ์อิเล็กทรอนิกส์ของคุณก็จะพลุ่งพล่านขึ้นมาใหม่ ทำให้เกิดอุปกรณ์ดั้งเดิมและมีประโยชน์มากมาย สิ่งที่เหลืออยู่ก็คือขอให้คุณประสบความสำเร็จในสาขาที่ยากลำบากแต่น่าสนใจนี้

โครงการ Olof Lagerkvist เป็นโปรแกรมที่ยอดเยี่ยมสำหรับการจำลองดิสก์ แต่เนื่องจากทุกคนสามารถจำลองดิสก์ได้ จึงไม่ใช่ทุกคนที่สามารถสร้างแฟลชไดรฟ์หรือฟล็อปปี้ดิสก์ได้ ดิสก์ถูกสร้างขึ้นในหน่วยความจำเสมือนซึ่งสามารถอัพโหลดทางกายภาพไปยังไฟล์อิมเมจได้ หลังการติดตั้ง โปรแกรมจะพร้อมใช้งานจากแผงควบคุมพีซี

คลิก "ตกลง" และภาพเสมือนก็พร้อม

ภาพ
สามารถบันทึกและติดตั้งรูปภาพได้หากจำเป็น สิ่งนี้จะมีประโยชน์ที่ไหน? ตัวอย่างเช่นสำหรับคนเกียจคร้านคุณสามารถอัปโหลดใบรับรองสำหรับ CryptoPro ไปยังแฟลชไดรฟ์เสมือนดังกล่าวได้)) หรือใช้เป็นดิสก์ใน RAM เพื่อจัดเก็บแคช ไฟล์เพจ และสิ่งอื่น ๆ
นอกจากนี้ยังมี GUI ทางเลือกอื่น -

การเชื่อมต่ออัตโนมัติ:
ปิดเสียงสะท้อน
rem ใส่ autoload สำหรับการติดตั้งอัตโนมัติ
c:\WINDOWS\system32\imdisk.exe -a -f "%PROGRAMFILES%\flash.img" -m f: -o rem

ตัวเลือกบรรทัดคำสั่งบางอย่าง:

imdisk.exe -e -s 300M -m B: - เพิ่มดิสก์ B 300 MB

imdisk -a -t ไฟล์ -o ro -m y: -f C:\Boot.img- เมานต์อิมเมจ Boot.img ด้วยดิสก์ Y อ่านอย่างเดียว

imdisk -a -t ไฟล์ -m y: -f C:\Boot.img- เมานต์อิมเมจ Boot.img ด้วยดิสก์ Y อ่าน/เขียนเท่านั้น

imdisk -d -m y: - ถอนติดตั้งดิสก์ Y

imdisk -a -s 150M -m #: -p "/fs:ntfs /y /q /v:imdisk- สร้างดิสก์ที่มีขนาด 150 MB อักษรชื่อไดรฟ์ตัวแรกว่าง ฟอร์แมตเป็น NTFS ป้ายกำกับดิสก์ imdisk

imdisk -a -s 10% -m #: -p "/fs:ntfs /y /q /v:imdisk- เช่นเดียวกับรุ่นก่อนหน้ามีเพียงขนาดเท่านั้นที่ระบุว่าเป็นหน่วยความจำว่าง 10 เปอร์เซ็นต์

imdisk -a -s -500M -m #: -p "/fs:ntfs /y /q /v:imdisk- เช่นเดียวกับอันก่อนหน้ามีเพียงขนาดเท่านั้นที่ถูกระบุด้วยเครื่องหมายลบนั่นคือเท่ากับจำนวนหน่วยความจำว่างลบด้วยขนาดที่ระบุ ด้วยหน่วยความจำว่าง 1200 MB ขนาดดิสก์จะกลายเป็น 1200-500 = 700 MB

imdisk.exe -a -t พร็อกซี -o ip -f 127.0.0.1:80 -m Z:- ใช้กับเซิฟเวอร์ก็เจอในเน็ตแต่ยังไม่ได้ทดสอบจริง

เอ - การเชื่อมต่อเสมือน ดิสก์.

D - ปิดระบบเสมือน ดิสก์.

E - การแก้ไขเสมือน ดิสก์.

_________________________

B - ระบุออฟเซ็ตนั่นคือจุดเริ่มต้นของข้อมูลบนดิสก์ซึ่งระบุสำหรับดิสก์ที่สร้างขึ้น โปรแกรมที่แตกต่างกันในรูปภาพที่คุณต้องข้ามแอตทริบิวต์เริ่มต้นในไฟล์

S - ขนาดดิสก์เสมือน ขนาดคือจำนวนไบต์ เว้นแต่ต่อท้ายด้วย a (อัตโนมัติ), b (บล็อก 512 ไบต์), k (พันไบต์), m (ล้านไบต์), g (พันล้านไบต์), t (ล้านล้านไบต์), K (กิโลไบต์) , M (เมกะไบต์), G (กิกะไบต์) หรือ T (เทราไบต์) หนึ่งพันไบต์และหนึ่งกิโลไบต์ต่างกันตรงที่หนึ่งกิโลไบต์จะมี 1,024 ไบต์ ไม่ใช่ 1,000 ตัวอย่างเช่น -s 150M หรือ -s 10% - 10 เปอร์เซ็นต์ของหน่วยความจำว่าง พารามิเตอร์ -500M - ที่มีเครื่องหมายลบจะกำหนดขนาดของดิสก์ที่สร้างขึ้นเป็นจำนวนหน่วยความจำว่างลบด้วยขนาดที่ระบุ

O - ตัวเลือกชุดใช้ร่วมกับพารามิเตอร์ที่ระบุด้านล่าง

โร - อ่านอย่างเดียว

rw - อ่าน/เขียน

rem - ติดตั้งเป็นดิสก์แบบถอดได้ (แฟลชไดรฟ์) สิ่งนี้จะกำหนดคุณสมบัติของดิสก์ การแคช ฯลฯ

แก้ไข - ติดตั้งเป็นดิสก์ถาวรแบบถาวร (ตรงข้ามกับ rem)

cd - สร้างซีดีรอม / ดีวีดีรอมเสมือน

fd - สร้างฟล็อปปี้ดิสก์ ค่าเริ่มต้นสำหรับขนาด 160K, 180K, 320K, 360K, 640K, 720K, 820K, 1200K, 1440K, 1680K, 1722K, 2880K, 123264K หรือ 234752K

hd - สร้างพาร์ติชั่นฮาร์ด

ip - พารามิเตอร์สำหรับเชื่อมต่อกับพร็อกซีเซิร์ฟเวอร์

comm - เชื่อมต่อกับเซิร์ฟเวอร์หน่วยความจำผ่านพอร์ต COM

________________

M - ระบุอักษรระบุไดรฟ์ ตัวอย่างเช่น -m B: หรือ -m y: หรือ -m #: - อักษรระบุไดรฟ์ว่างตัวแรก

F - ชื่อไฟล์เสมือน ดิสก์ เช่น -f C:\Boot.img หรือ -f \\server\share\image.bin หรือ -F\อุปกรณ์\Harddisk0\Partition1\image.bin- อย่างหลังเมื่อไม่ได้กำหนดอักษรระบุไดรฟ์และกำหนดโดยหมายเลขฮาร์ดไดรฟ์หมายเลขพาร์ติชัน ( ไดรฟ์แบบลอจิคัล) แล้วก็เส้นทางที่แท้จริง

มันคืออะไรและทำไมจึงจำเป็น?
หากวิทยุในรถของคุณมีอินพุตสำหรับเครื่องเปลี่ยนซีดีคุณสามารถเชื่อมต่ออะแดปเตอร์ที่คล้ายกันเข้ากับวิทยุได้มันจะหลอกวิทยุและจะคิดว่ามีเครื่องเปลี่ยนเชื่อมต่ออยู่และแทนที่จะเป็นดิสก์แฟลชไดรฟ์ธรรมดาที่มี มีการใช้ดนตรี สามารถควบคุมอะแดปเตอร์ได้ วิธีปกติรวมถึงการควบคุมพวงมาลัย

มีการวิจารณ์อะแดปเตอร์ที่คล้ายกันหลายรายการใน Muska ซึ่งมีชื่อเสียงที่สุดคือ Yatour ของจีน

ฉันตัดสินใจไปในเส้นทางที่แปลกใหม่ ฉันตัดสินใจลองใช้ Russian Trioma Flipper 2
คะแนนโดยรวม - ยอดเยี่ยม พอใจกับการซื้อ แนะนำ

สำหรับรายละเอียดโปรดดูด้านล่าง

คำนำ

ฉันมีความปรารถนาง่ายๆ - ฉันอยากฟังเพลงในรถ วิทยุไม่ได้มีสิ่งที่เหมาะสมเสมอไป ฉันเบื่อที่จะต้องพกซีดีหลายแผ่นติดตัวและบันทึกเสียงอยู่ตลอดเวลา
ในเปอโยต์ 407 2007 ของฉันมี GU (เฮดยูนิต) ซึ่งต่อมาเรียกง่ายๆ ว่าเครื่องบันทึกเทปวิทยุโดยไม่มี USB บลูทูธ และแม้จะไม่มีอินพุต AUX ตามปกติก็ตาม

หากรถของคุณมีวิทยุธรรมดาที่ไม่ได้เชื่อมต่อกับการควบคุมฟังก์ชั่นใดๆ ของรถ วิธีที่ง่ายที่สุดคือซื้อวิทยุใหม่ คุณสามารถซื้อวิทยุที่มีตราสินค้าพร้อมอินพุต USB ได้ในราคาประมาณหนึ่งร้อยยูโร จะต้องใช้จ่ายอีกจำนวนหนึ่งจึงจะเข้าใจการควบคุมพวงมาลัย

คุณสามารถแฮ็กและต่ออินพุต AUX (เสียง) ได้ แต่คุณยังคงต้องมีแหล่งกำเนิดเสียง และคุณจะต้องลืมการควบคุมพวงมาลัยไปได้เลย

ฉันละทิ้งตัวเลือกที่มีเครื่องส่งสัญญาณ FM มานานแล้ว - ฉันลองใช้เครื่องส่งสัญญาณที่แตกต่างกันสองสามตัวคุณภาพเสียงไม่ค่อยดีนัก

มีวิธีอื่น: เชื่อมต่ออะแดปเตอร์เข้ากับวิทยุที่อินพุตของเครื่องเปลี่ยนซีดีซึ่งจะช่วยให้คุณสามารถฟังเพลงจากแฟลชไดรฟ์ควบคุมอะแดปเตอร์โดยใช้วิธีมาตรฐานของวิทยุรวมถึงจากพวงมาลัยด้วย คุณสามารถค้นหาอะแดปเตอร์ที่คล้ายกันได้จาก ผู้ผลิตที่แตกต่างกันกับ พารามิเตอร์ที่แตกต่างกันและมีความแตกต่างในด้านคุณภาพ ความน่าเชื่อถือ ความสะดวก หรือราคา
อะแดปเตอร์ที่มีชื่อเสียงที่สุดคือ Yatour สิ่งที่เจ๋งที่สุดคือ American Grom Audio ซึ่งเล่น FLAC เหนือสิ่งอื่นใด มีอุปกรณ์อีกสองสามตัว - Audiolink, Xcarlink, DMC, Dension

ก่อนอื่นฉันเริ่มดูยาทัวร์ ใน Ali มีราคาตั้งแต่ $50 แต่บทวิจารณ์บนอินเทอร์เน็ตทำให้ความกระตือรือร้นลดลงเล็กน้อย อะแดปเตอร์มีเอาต์พุตเชิงเส้นที่มีระดับคงที่ ดังนั้นในวิทยุหลายเครื่อง ระดับเสียงจึงต่ำกว่าจากวิทยุอย่างเห็นได้ชัด บางครั้งการทำงานไม่เสถียร, ค้าง, มีความสำคัญต่อการมีไฟล์ต่างประเทศในแฟลชไดรฟ์ จำนวนไดเร็กทอรีที่รองรับ - จำนวนดิสก์ที่วิทยุรองรับในกรณีของฉันคือ 6

Yatour ไม่มีเว็บไซต์อย่างเป็นทางการ เว็บไซต์ของ Yatour บนอินเทอร์เน็ตเป็นเว็บไซต์ของผู้ขาย และข้อมูลจะต้องถูกรวบรวมทีละนิดในที่ต่างๆ ส่วนใหญ่ผู้ที่ติดตั้งเองจะเขียนตอบกลับไป แต่ประสบการณ์ของพวกเขาไม่เหมาะกับวิทยุของคุณเสมอไป
แต่ฉันโชคดีที่ได้พบกับผู้ขายชาวเบลารุส Sergei หรือที่รู้จักในชื่อ SSD ซึ่งตอบทุกคำถามของฉันรวมถึงคุณสมบัติการทำงานกับวิทยุของฉันด้วย
โดยทั่วไปใช้งานได้แต่อาจมีปัญหากับระดับเสียงและการทำงานที่ไม่เสถียร ฉันได้ยินเกี่ยวกับ Grom Audio และ Triome เป็นครั้งแรกจาก Sergei ซึ่งเขาจำหน่ายด้วย

Grom Audio บน Android รองรับ FLAC แต่ไม่มีรุ่นสำหรับรถของฉัน

แต่ Trioma Flipper 2 สนใจฉัน ประการแรกความสามารถในการปรับระดับเอาต์พุต (ระดับเสียง) นอกจากนี้ยังมีการจัดระเบียบโฟลเดอร์ที่สะดวกกว่ามากและอาจมีได้อีกมากมาย และมีรถบั๊กน้อยกว่ามาก
Po ยืมตารางเปรียบเทียบที่ดีระหว่าง Yator และ Trioma


คำชี้แจงเกี่ยวกับ Yaturs:
1. ไฟล์ที่ไม่เกี่ยวข้องจะไม่รบกวนการเล่น อย่างน้อยก็ในเฟิร์มแวร์บางตัว

ดังนั้นฉันจึงตัดสินใจเลือก ทรีโอมา!!!
เมื่อซื้ออะแดปเตอร์ต้องแน่ใจว่าได้เลือกรุ่นสำหรับรถยนต์ของคุณ แม่นยำยิ่งขึ้นภายใต้วิทยุติดรถยนต์ในรถของคุณ วิทยุที่แตกต่างกันอาจมีขั้วต่อที่แตกต่างกันสำหรับเครื่องเปลี่ยนที่ไม่สามารถใช้งานร่วมกันได้

Trioma หาซื้อได้ที่ไหน?

มีสถานที่บนเว็บไซต์ของผู้ผลิตที่จำหน่ายผลิตภัณฑ์ Trioma ไม่มีปัญหาในการซื้ออะแดปเตอร์ในรัสเซียหรือเบลารุส และในยุโรป ซึ่งฉันซื้อได้ง่ายกว่าและไม่ต้องผ่านพิธีการศุลกากรและชำระ VAT ราคาก็สูงเป็นสองเท่า จาก 120 ยูโรไม่รวมค่าจัดส่ง

ฉันเริ่มมองหาเพื่อนที่สามารถนำอะแดปเตอร์จากรัสเซียหรือเบลารุสมาให้ฉัน พบ!!! ฉันพบเพื่อนจากรัสเซียที่สั่งซื้อและนำอะแดปเตอร์มาให้ฉันเมื่อต้นเดือนกุมภาพันธ์! โอเล็กขอบคุณ!

และนี่คืออะแดปเตอร์ที่บ้านของฉัน!



ชุดประกอบด้วยอะแดปเตอร์ สายเคเบิลสำหรับเชื่อมต่อกับวิทยุ และ สายยูเอสบี.
ความยาวของสายเคเบิลสำหรับเชื่อมต่อกับวิทยุคือเพียง 40 ซม. ซึ่งกำหนดข้อจำกัดเกี่ยวกับตำแหน่งของอะแดปเตอร์ในรถยนต์โดยทันที - ต้องวางไว้ด้านหลังวิทยุโดยตรง คุณไม่สามารถเข้าถึงช่องเก็บของด้วยซ้ำ .
อะแดปเตอร์มีขนาดประมาณกล่องบุหรี่ กล่องพลาสติกเรียบง่ายพร้อมสายยื่นออกมาสำหรับเชื่อมต่ออุปกรณ์หรือสาย AUX อย่างไรก็ตาม หลังจากที่ฉันเชื่อมต่ออะแดปเตอร์เข้ากับวิทยุแล้ว จะไม่มีใครเห็นอีก
นอกจากนี้ ฉันยังใช้สาย AUX ที่มีมินิแจ็คที่ปลายสาย (+500r)


อีกไม่กี่ภาพ

ขั้วต่อสำหรับเชื่อมต่ออุปกรณ์เพิ่มเติม สาย AUX หรืออะแดปเตอร์บลูทูธ


แม่กับอะแดปเตอร์


พ่อบนเคเบิล


ขั้วต่อสำหรับวิทยุ RD4


ห้ามเปิด รับประกันครับ


การติดตั้ง

เครื่องบันทึกเทปวิทยุ RD4 คลายเกลียวสกรูสองตัวที่มีรูปหกเหลี่ยมแล้วนำเครื่องบันทึกเทปวิทยุออก

ด้านหลังมีขั้วต่อที่เหมาะสมสองตัว หนึ่งในนั้นใช้งานไม่ได้ - ตรวจสอบแล้ว;)
ภาพถ่ายแสดงตัวเชื่อมต่อที่จำเป็น มีสายไฟสำหรับเชื่อมต่อเครื่องเปลี่ยนอยู่แล้ว ดังนั้นเราจึงดึงขั้วต่อที่ติดตั้งไว้ออกแล้วเปิดเครื่องของเรา


เราต่อสายเคเบิลเข้ากับอะแดปเตอร์ เปิดสวิตช์กุญแจและปาฏิหาริย์ - ทุกอย่างทำงานได้ทันที!!! นอกจากนี้ระดับเสียงยังใกล้เคียงกับจากซีดีในตัวโดยประมาณ

แต่แล้วเราก็เริ่มคิดถึงตำแหน่งที่จะเชื่อมต่อสาย USB วิธีที่ง่ายที่สุดในกรณีของฉันคือการเดินสายเคเบิลใต้พวงมาลัยเข้าไปในช่องเก็บของเล็ก ๆ ทางด้านซ้ายของคนขับ


ตัวอะแดปเตอร์นั้นถูกใส่เข้าไปในช่องด้านหลังด้านซ้ายของวิทยุ มีพื้นที่ไม่มากนัก หลังจากติดตั้งวิทยุเข้าที่แล้ว อะแดปเตอร์ก็ถูกยึดไว้ด้วยสายเคเบิล ดังนั้นจึงไม่จำเป็นต้องยึดอะแดปเตอร์เพิ่มเติม

ในฟอรัมทั้งหมดเขียนว่าวิทยุต้องมีการเปิดใช้งานเครื่องเปลี่ยนในบริการ สำหรับฉันทุกอย่างกลายเป็นเรื่องง่ายขึ้นมาก หลังจากเปิดเครื่อง วิทยุจะระบุได้ว่ามีการเชื่อมต่อเครื่องเปลี่ยนสายอยู่ และสามารถเลือกเครื่องผ่านทางสวิตช์อินพุตได้ (วิทยุ/ซีดี/เครื่องเปลี่ยน)
เมื่อปรากฎว่าไม่จำเป็นต้องเปิดใช้งานสำหรับวิทยุ แต่สำหรับจอแสดงผลเพื่อให้สามารถสะท้อนข้อมูลสำหรับผู้เปลี่ยนได้
แต่เมื่อหกเดือนที่แล้วฉันและชาวจีนทำได้ดีมากส่งจอแสดงผลพร้อมฟังก์ชั่นที่เปิดใช้งานทั้งหมด ดังนั้นทุกอย่างจึงใช้งานได้สำหรับฉันโดยไม่ต้องเปิดใช้งานเพิ่มเติม

การทำงานของอะแดปเตอร์

คุณภาพเสียง.เทียบได้กับเครื่องเล่นซีดี เสียงมาตรฐานในรถค่อนข้างปานกลาง ดังนั้นคุณจะไม่ได้ยินความแตกต่างจากเครื่องเล่นซีดีมาตรฐานในรถของฉันอย่างแน่นอน
ความเร็วในการเปลี่ยน. น้อยกว่าสองสามวินาทีหลังจากเปิดสวิตช์กุญแจบนแฟลชไดรฟ์พร้อมแคตตาล็อกสองสามโหล พวกเขาเขียนในฟอรัมว่ามีไดเร็กทอรีหลายร้อยรายการความเร็วจะลดลง อะแดปเตอร์จะจดจำตำแหน่งที่เล่นก่อนที่จะปิดและเริ่มเล่นจากที่เดิม ทรัพย์สินนี้มีคุณค่าสำหรับผู้ที่ชอบฟังหนังสือเสียง อะแดปเตอร์จะจดจำตำแหน่งจากแฟลชไดรฟ์ 4 ตัวล่าสุด/
การสลับแทร็กในเสี้ยววินาที ไม่ว่าแทร็กจะอยู่ในไดเร็กทอรีเดียวกันหรือไดเร็กทอรีอื่นก็ไม่ต่างกัน ไม่มีเสียงภายนอกระหว่างการเปลี่ยน
การเปลี่ยนแฟลชไดรฟ์ขณะที่วิทยุทำงาน ให้ถอดแฟลชไดรฟ์ออกแล้วใส่อันใหม่ ตรวจพบภายในไม่กี่วินาทีและเริ่มเล่นทันที ในระหว่างการเปลี่ยน อาจส่งเสียงหรินๆ สั้นๆ ที่เงียบมาก

อะแดปเตอร์เข้าใจไดเร็กทอรี 32 ไดเร็กทอรี ซึ่งสามารถมีไดเร็กทอรีย่อยได้ 32 ไดเร็กทอรี ซึ่งแต่ละไดเร็กทอรีสามารถมีไฟล์ได้สูงสุด 99 ไฟล์ แต่ไม่นานฉันก็ตระหนักได้ว่าสวิตช์ดิสก์ของฉันเปลี่ยนเฉพาะดิสก์หกแผ่นแรกเท่านั้น แม้ว่าในโหมดสุ่ม อะแดปเตอร์จะมองเห็นไดเร็กทอรีทั้งหมด

ฉันถามคำถามในฟอรัม Trioma ฝ่ายสนับสนุนตอบกลับอย่างรวดเร็วและเสนอตัวเลือกสำหรับการจัดระเบียบไดเร็กทอรี ปัญหาปรากฏว่าบน RD4 ปุ่มต่างๆ แม้ว่าพวกเขาจะใช้งานฟังก์ชั่น Disc+/Disk- แต่ในความเป็นจริงแล้ว พวกเขาส่งคำสั่งเพื่อเลือกดิสก์ 1-6 โดยตรงไปยังอะแดปเตอร์ ดังนั้นปุ่มเหล่านี้จึงสามารถสลับไดเร็กทอรีรากได้ 6 ไดเร็กทอรีหรือไดเร็กทอรีย่อย 6 ไดเร็กทอรีเท่านั้น
และไม่สามารถจัดการไดเร็กทอรี 1,024 รายการในวิทยุของฉันได้ คุณสามารถจัดการไดเร็กทอรีได้เพียง 32*6=192 ไดเร็กทอรี;)

คำอธิบายระบุว่าปุ่ม FF/FR ทำหน้าที่คู่กัน นั่นคือการเปลี่ยนไดเร็กทอรี/ไดเร็กทอรีย่อยและการกรอกลับ
แต่บน RD4 Track+/Track- จะรวมเข้ากับ FF/FR และสำหรับอะแดปเตอร์ ปุ่มเหล่านี้มีจุดประสงค์สามประการ:
1. กดสั้นๆ - Track+/Track-
2. กดค้างไว้ 2-3 วินาที ปล่อยเมื่อไร เสียงจะหายไปจากแทร็กปัจจุบัน - สลับไดเร็กทอรี
3. กดแบบยาว > 3 วินาที จะมีเสียงอู้อี้แบบเร่ง - ย้อนกลับ
เวลาเป็นเวลาโดยประมาณ คุณต้องเน้นไปที่เสียง

ก่อนตัดสินใจซื้อ ฉันคิดว่าฉันจะเก็บเมกะแฟลชไดร์ฟขนาดใหญ่ไว้หนึ่งตัวพร้อมแค็ตตาล็อกหลายร้อยรายการ แต่ตอนนี้ฉันเห็นว่าการมีแฟลชไดรฟ์หลายตัวที่มีตัวเลือกต่างกันจะสะดวกกว่า
ฉันมีสิ่งนี้ตอนนี้:
1. เพลงป๊อปรัสเซียยุค 80-90
2. เพลงป็อปต่างประเทศยุค 80-90
3. เครื่องดนตรี

ทั้งหมด.ด้วยเงินเพียงเล็กน้อย ฉันได้อะแดปเตอร์ที่ไม่มีข้อผิดพลาดซึ่งมีคุณภาพเสียงที่ดีและการควบคุมที่เรียบง่ายและใช้งานง่าย ฉันพอใจมากกับการซื้อ Trioma - ทำได้ดีมาก!!!

ลิงค์เพิ่มเติม

คำถามที่พบบ่อยขนาดเล็ก

ยังมีคำถามอยู่บ้าง รีวิวนี้ฉันตัดสินใจย้ายพวกมันไปไว้ในมินิฟากแยกต่างหาก ฉันจะเพิ่มคำถามที่เกิดขึ้นในความคิดเห็นที่นี่ด้วย
  • ต้องทำอย่างไรเพื่อให้แน่ใจว่าชื่อ (ชื่อไฟล์ แท็ก หรืออะไรก็ตาม) ปรากฏบนจอแสดงผล
  • อะแดปเตอร์ Triom จะ "เห็น" แท็ก ชื่อไฟล์ และชื่อโฟลเดอร์อย่างแน่นอน หากเป็นไปได้ จะแสดงสตริงข้อความบนจอแสดงผลวิทยุมาตรฐาน: BMW และรถยนต์ทุกคันที่มีบัส MOST แบบออปติคัล บางทีในไม่ช้า เอาต์พุตข้อความจะถูกนำมาใช้กับอุปกรณ์ Toyota/Lexus บางรุ่น
  • เครื่องเปลี่ยนซีดีทำงานได้โดยไม่มีปัญหาใดๆ
  • ฉันเกรงว่าคุณจะเข้าใจผิด: เราไม่รู้จักเครื่องเปลี่ยนภายนอกใดๆ นอกเหนือจากรุ่นที่กล่าวข้างต้นที่สามารถรับมือกับงานนี้ได้ ตัวเปลี่ยนที่ติดตั้งไว้ในเฮดยูนิตนั้นเป็นอีกเรื่องหนึ่ง โดยที่ข้อความจะถูกส่งตรงไปยังตัวควบคุมการแสดงผล - นี่เป็นกลไกที่แตกต่างไปจากเดิมอย่างสิ้นเชิง
  • เป็นไปได้หรือไม่ที่จะเชื่อมต่ออุปกรณ์เพิ่มเติมเข้ากับอะแดปเตอร์ Trioma Flipper 2
  • คุณสามารถเชื่อมต่อสายอะแดปเตอร์ตัวผู้ AUX-minijack 3.5 เข้ากับอะแดปเตอร์ได้
ฉันกำลังวางแผนที่จะซื้อ +23 เพิ่มในรายการโปรด ฉันชอบรีวิว +21 +46

บางครั้งมีสถานการณ์ที่คุณต้องทำงานกับยูทิลิตี้ (การบัญชี โซเชียล ซึ่งต้องใช้สื่อภายนอกบนคอมพิวเตอร์) หรือคุณเพียงแค่ต้องติดตั้งระบบปฏิบัติการเวอร์ชันใหม่ แต่จะทำอย่างไรถ้าไม่มีทั้งแฟลชไดรฟ์หรือซีดีฟรี มีทางออก! ความต้องการ โปรแกรมพิเศษซึ่งจะทำงานเป็นแฟลชไดรฟ์เสมือน

OSFmount เป็นเครื่องช่วยชีวิตสำหรับผู้ที่ไม่มีสื่อแบบถอดได้

OSFmount เป็นโปรแกรมขนาดเล็กที่จะช่วยคุณสร้างไดรฟ์ แอปพลิเคชันนี้สามารถสร้างทั้งอิมเมจของไดรฟ์และ RAM สำเร็จรูปซึ่งมีอยู่ใน RAM เท่านั้น ฟลอปปีฮาร์ดไดรฟ์ ออปติคัลดิสก์เทียม และที่สำคัญที่สุดคือแฟลชไดรฟ์เสมือน - โปรแกรมสามารถติดตั้งอิมเมจเหล่านี้ทั้งหมดได้ แฟลชไดรฟ์เสมือน Windows 10, Windows 8, Windows 7 จะถูกสร้างขึ้นในทุกรูปแบบ ระบบปฏิบัติการ Windows ทั้งในสภาพแวดล้อมแบบ 64 บิตและในสภาพแวดล้อมแบบ 32 บิต ในการติดตั้งคุณสามารถกำหนดตัวอักษรเฉพาะสำหรับดิสก์ปลอมและตั้งค่าคุณสมบัติที่จำเป็นได้ ในขณะเดียวกันขนาดของยูทิลิตี้ไม่ถึง 2 เมกะไบต์ด้วยซ้ำขนาดเพียง 1.95 MB ข้อเสียเพียงอย่างเดียวคือโปรแกรมไม่รองรับภาษารัสเซีย

คำแนะนำในการใช้ OSFmount

ใช้งานง่ายและการสร้างแฟลชไดรฟ์ไม่ต้องใช้เวลาและความพยายามมากนัก ดังนั้น วิธีสร้างแฟลชไดรฟ์เสมือนบนคอมพิวเตอร์ของคุณโดยใช้ OSFmount:


คุณอาจต้องมีตัวเลือกบางอย่างที่เปิดขึ้นหลังจากคลิกที่ "ขับเคลื่อนการดำเนินการ" ตัวเลือกนี้มีดังต่อไปนี้:

  • ลงจากหลังม้า - สำหรับการลงจากหลังม้า;
  • รูปแบบ - การใช้ตัวเลือกนี้คุณสามารถทำการฟอร์แมตได้
  • Savetoimagefile - เพื่อบันทึกในรูปแบบที่ต้องการ
  • เปิด - เพื่อเปิด;
  • ตั้งค่าสื่อแบบอ่านอย่างเดียว - ห้ามการบันทึก
  • Extendedsize - ใช้สำหรับการขยาย
  • ตั้งค่าสื่อที่เขียนได้ - อนุญาตให้บันทึก

นี่คือวิธีที่คุณสามารถสร้างแฟลช usb เสมือนบนคอมพิวเตอร์ของคุณได้อย่างง่ายดาย คุณสามารถเลือกภาพใดก็ได้สำหรับแฟลชเสมือน แต่ในกรณีของอิมเมจที่สามารถบูตได้ จะต้องฟอร์แมตไดรฟ์และจะเปิดในแอปพลิเคชันนี้เท่านั้น

แอปพลิเคชันเวอร์ชันอื่นคือ Virtual Flash Drive ซึ่งง่ายและสะดวกมากสำหรับการสร้างการจัดเก็บข้อมูลปลอม ความแตกต่างของพวกเขาคือ OSTmount มีมากกว่านั้น ตัวเลือกเพิ่มเติมและนอกเหนือจากแฟลช usb คุณสามารถสร้างไดรฟ์เทียมอื่น ๆ ได้

บทสรุป

ตอนนี้เห็นได้ชัดว่าแม้ว่าคุณจะไม่มีสื่อภายนอกอยู่ในมือ แต่คุณต้องการมันจริงๆ คุณสามารถสร้างอะนาล็อกที่สร้างขึ้นโดยเทียมได้ด้วยการคลิกเพียงไม่กี่ครั้ง

บางครั้งสถานการณ์เกิดขึ้นเมื่อคุณต้องการแฟลชไดรฟ์ แต่คุณไม่มีมันอยู่ในมือ ตัวอย่างเช่น บางโปรแกรมการบัญชีและการรายงานจำเป็นต้องมี จัดเก็บข้อมูลภายนอก. ในสถานการณ์เช่นนี้ คุณสามารถสร้างอุปกรณ์จัดเก็บข้อมูลเสมือนได้

การใช้ซอฟต์แวร์พิเศษสามารถทำได้หลายวิธี ลองดูที่แต่ละขั้นตอน

วิธีที่ 1: OSFmount

โปรแกรมขนาดเล็กนี้มีประโยชน์มากเมื่อคุณไม่มีแฟลชไดรฟ์อยู่ในมือ ใช้งานได้กับ Windows เวอร์ชันใดก็ได้

หลังจากที่คุณดาวน์โหลดโปรแกรมแล้ว ให้ทำดังนี้:



เมื่อทำงานกับโปรแกรมนี้คุณอาจต้องการ ฟังก์ชั่นเพิ่มเติม. ในการดำเนินการนี้ คุณต้องป้อนรายการในหน้าต่างหลัก “ขับเคลื่อนการกระทำ”. จากนั้นจะสามารถใช้ตัวเลือกต่อไปนี้ได้:

  • ลงจากหลังม้า – ถอนเมานต์โวลุ่ม;
  • รูปแบบ—การจัดรูปแบบวอลุ่ม;
  • ตั้งค่าสื่อแบบอ่านอย่างเดียว – ห้ามการบันทึก;
  • ขยายขนาด – ขยายขนาดของอุปกรณ์เสมือน
  • Savetoimagefile – ใช้เพื่อบันทึกในรูปแบบที่ต้องการ

วิธีที่ 2: แฟลชไดรฟ์เสมือน

ทางเลือกที่ดีสำหรับวิธีการที่อธิบายไว้ข้างต้น เมื่อสร้างแฟลชไดรฟ์เสมือน โปรแกรมนี้ช่วยให้คุณสามารถปกป้องข้อมูลในนั้นโดยใช้รหัสผ่าน ข้อดีของสิ่งนี้คือใช้งานได้กับ Windows เวอร์ชันเก่า ดังนั้น หากคุณมี Windows XP หรือต่ำกว่าบนคอมพิวเตอร์ของคุณ ยูทิลิตี้นี้จะช่วยให้คุณเตรียมอุปกรณ์จัดเก็บข้อมูลเสมือนบนคอมพิวเตอร์ของคุณได้อย่างรวดเร็ว

คำแนะนำในการใช้โปรแกรมนี้มีลักษณะดังนี้:

  1. ดาวน์โหลดและติดตั้ง Virtual Flash Drive
  2. ในหน้าต่างหลัก ให้คลิกปุ่ม "เม้าท์ใหม่".
  3. หน้าต่างจะปรากฏขึ้น "สร้างวอลุ่มใหม่"ระบุเส้นทางเพื่อสร้างสื่อเสมือนในนั้นแล้วคลิก "ตกลง".


อย่างที่คุณเห็นโปรแกรมนี้ใช้งานง่ายมาก

วิธีที่ 3: ImDisk

นี่คือหนึ่งในที่สุด โปรแกรมยอดนิยมเพื่อสร้างฟล็อปปี้ดิสก์เสมือน โดยใช้ไฟล์รูปภาพหรือหน่วยความจำคอมพิวเตอร์ก็สร้าง ดิสก์เสมือน. เมื่อใช้ปุ่มพิเศษเมื่อโหลดแฟลชไดรฟ์จะปรากฏเป็นดิสก์แบบถอดได้เสมือน


วิธีที่ 4: ที่เก็บข้อมูลบนคลาวด์

การพัฒนาเทคโนโลยีทำให้สามารถสร้างแฟลชไดรฟ์เสมือนและจัดเก็บข้อมูลบนอินเทอร์เน็ตได้ วิธีการนี้เป็นโฟลเดอร์ที่มีไฟล์ที่ผู้ใช้เฉพาะสามารถเข้าถึงได้จากคอมพิวเตอร์ทุกเครื่องที่เชื่อมต่อกับอินเทอร์เน็ต

การจัดเก็บข้อมูลดังกล่าว ได้แก่ Yandex.Disk, Google Drive และ Mail.ru Cloud หลักการใช้บริการเหล่านี้ก็เหมือนกัน

มาดูวิธีการทำงานกับ Yandex Disk กัน ทรัพยากรนี้ช่วยให้คุณจัดเก็บข้อมูลได้ฟรีสูงสุด 10 GB



การทำงานกับสื่อบันทึกข้อมูลเสมือนช่วยให้คุณสามารถจัดการข้อมูลของคุณได้อย่างเต็มที่: จัดกลุ่มลงในโฟลเดอร์ ลบข้อมูลที่ไม่จำเป็น และแม้แต่แชร์ลิงก์ไปยังข้อมูลกับผู้ใช้รายอื่น