USB VNC1L module
Project definition
Main task is to create universal C library for microprocesors (ATmega, MSP340, ARM7) which will communicate with VNC1L module. VNC1L module is USB host and its giving possibility to connet any USB device (Flash Disc, web camera, and etc.) to microprocesors. Current task is to connect USB data disc and VNC1L to ATmega microprocesor with SPI and RS232 interface.
Developing phase
VDAP firmware loaded on VNC1L:

VDIP1 is sold with the ‘VDAP Firmware’ preloaded which typical application is using the Vinculum VNC1L to provide USB Host functionality to a microcontroller. This will have the monitor port on the combined interface allowing BOMS devices (Bulk Only Mass Storage, e.g. Flash Disk) to be connected to Port 2 and USB Slave Peripherals to Port 1 as shown on the figure beside.
The firmware version actually loaded on the VNC1L is ‘VDAP_02.08’ which is an old one while ‘VDAP_03.55’ is available on the Vinculum website. It is possible to load it to VNC1L but this old version seems to be operational enough so I start working like this.
Communication between ATmega88 and VNC1L:

Both devices exchange data through a SPI protocol. They are linked to each other as shown on the figure beside.
The software is loaded on ATmega88 through its /RESET pin using an AVR Dragon interface which also provides the power supply unit (5V0 / GND).
PORTB0 and PORTB1 on ATmega88 are used to command DATAREQ# and DATAACK# on VNC1L in order to switch it between command mode and data mode.