DIGITAL SYSTEMS 2 Irving Abraham Angeles Botello.
USING USB AS HUMAN INTERFACE DEVICE AND AS A VIRTUAL SERIAL COM
The student will be able to configure a USB interface using the high performance microcontroller PIC18F4550, in order to exchange data with the PC.
THEORETICAL FRAMEWORKExplain the types of transfers used by the USB 2.0:
The USB specification defines four types of data transfers that peripherals can support: Control transfers are used to provide the host with information concerning the type and functionality of the attached device. All devices must support control transfers. The other three types of transfers – interrupt, bulk, or isochronous – are specific todata manipulation of the application. Interrupt transfers are used when a peripheral wants to be “polled” by the host periodically to see if it has data to send to the host. Keyboards, mice, and joysticks are examples of devices that typically use interrupt transfers. Bulk transfers are used to move data between the host system and the peripheral when data integrity is more critical than datalatency, and they also include error checking and retries if errors are detected. Printers, scanners, and storage devices are examples of devices that depend primarily on bulk transfers. Isochronous transfers are used for moving “real-time” data. In these transfers, the streaming of the data is more critical than the accuracy of the data. There is no error-checking or retries associated withisochronous transfers. Web-cams, speakers and microphones are examples of devices that utilize isochronous transfers.
Include the schematic with the minimum circuit necessary to do an USB 2.0 interface with the PIC18F4550:
Define the following concepts: HID, Embedded Software, Virtual Serial Com, End Point and Enumeration process:
HID > A human interface device or HID is a type of computerdevice that interacts directly with, and most often takes input from, humans and may deliver output to humans. The term "HID" most commonly refers to the USB-HID specification. The term was coined by Mike Van Flandern of Microsoft when he proposed the USB committee create a Human Input Device class working group. The working group was renamed as the Human Interface Device class at the suggestion ofTom Schmidt of DEC because the proposed standard supported bi-directional communication. Embedded software > Embedded software is computer software that plays an integral role in the electronics it is supplied with. Embedded software's principal role is not Information technology, but rather the interaction with the physical world. It's written for machines that are not, first and foremost,computers. Embedded software is 'built in' to the electronics in cars, telephones, audio equipment, robots, appliances, toys, security systems, pacemakers, televisions and digital watches, for example. This software can become very sophisticated in applications like airplanes, missiles, process control systems, and so on. Embedded software is usually written for special purpose hardware: that is computerchips that are different from general purpose CPUs, sometimes using Real-time operating system such as LynxOS, VxWorks, Linux (with patched kernel), PikeOS, eCos, ThreadX, Windows CE, Fusion RTOS, Nucleus RTOS, RTEMS, Integrity, QNX and OSE. Communications protocols designed for use in embedded systems are available as closed source from companies including InterNiche Technologies and CMXSystems, and are also published as open source from uIP, lwip and others. Virtual serial COM > One variant of a COM port redirector is a Virtual Serial Port. A virtual serial port is a redirector without network software support which is usually used to create a pair of back-to-back virtual COM ports on the same computer. Two legacy applications can then communicate using virtual serial ports instead...