Readme.txt 4.37 KB
Newer Older
Prashant Patil's avatar
Prashant Patil committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136


                                    CDC-232


    This is the Readme file to firmware-only CDC driver for Atmel AVR
    microcontrollers. For more information please visit
    http://www.recursion.jp/avrcdc/


SUMMARY
=======
    The CDC-232 performs the CDC (Communication Device Class) connection over
    low-speed USB. It provides the RS-232C interface through virtual COM
    port. The AVR-CDC is originally developed by Osamu Tamura.
    Akira Kitazawa has significantly contributed to improve this software. 


SPECIFICATION
=============
    AVR-CDC with USART (ATmega8/48/88/168)
        speed:     600 - 38400bps
        datasize: 5-8
        parity:   none/even/odd
        stopbit:  1/2
        controls: DTR, RTS, CTS

    AVR-CDC with USART (ATtiny2313)
        speed:     600 - 38400bps
        datasize: 8
        parity:   none
        stopbit:  1

    AVR-CDC without USART (ATtiny45/85)
        speed:    1200 -  4800bps
        datasize: 8
        parity:   none
        stopbit:  1
        supply current: 8-15mA

    The RTS indicates that the receive buffer is not full, and the CTS stops
    sending data at '0' input. These controls cannot be controlled/read by the
    host PC (ATmega). 

    Internal RC Oscillator is calibrated at startup time on ATtiny45/85.
    When the other low speed device is connected under the same host 
    controller, the ATtiny45/85 may fail to be recognized by the downstream
    broadcast packet.

    Although the CDC protocol is supported by Windows 2000/XP/(Vista/7), Mac
    OS 9.1/X, and Linux 2.4 or 2.6.31-, low-speed bulk transfer is not allowed
    by the USB standard. Use CDC-232 at your own risk.


USAGE
=====
    [Windows XP/2000/Vista/7]
    Download "avrcdc_inf.zip" and read the instruction carefully.
 
    [Mac OS X]
    You'll see the device /dev/cu.usbmodem***.

    [Linux]
    The device will be /dev/ttyACM*.
    Linux <2.6.31 does not accept low-speed CDC without patching the kernel.
    Replace the kernel to 2.6.31 or higher.


DEVELOPMENT
===========
    Build your circuit and write firmware (cdcmega*.hex/cdctiny*.hex) into it.
    C1:104 means 0.1uF, R3:1K5 means 1.5K ohms.

    This firmware has been developed on AVR Studio 4.18 and WinAVR 20100110.
    If you couldn't invoke the project from cdc*.aps, create new GCC project
    named "at***" under "cdc232.****-**-**/" without creating initial file. 
    Select each "default/Makefile" at "Configuration Options" menu.

    There are several options you can configure in
    "Project/Configuration Options" menu, or in Makefile

    (General)
    Device      Select MCU type.   
    Frequency   Select clock. 16.5MHz is the internal RC oscillator.
                (ATtiny45/85)
                3.3V Vcc may not be enough for the higher clock operation.

    (Custom Options) add -D*** to select options below.
    UART_INVERT Reverse the polarity of TXD and RXD to connect to RS-232C
                directly (ATtiny45/85).
                Enables software-inverters (PC0 -|>o- PB0, PC1 -|>o- PB1).
                Connect RXD to PB0 and TXD to PC1. The baudrate should be
                <=2400bps (ATmega48/88/168).

    Rebuild all the codes after modifying Makefile.

    Fuse bits
                          ext  H-L
        ATtiny2313         FF CD-FF
        ATtiny45/85        FF CE-F1
        ATtiny45/85(Xtal)  FF 6E-FF / FF 6E-F1 (PLL)
        ATmega8               8F-FF
        ATmega48/88/168    FF CE-FF

	SPIEN=0, WDTON=0, CKOPT(mega8)=0,
	Crystal: Ex.8MHz/PLL(45,461), BOD: 1.8-2.7V

    * Detach the ISP programmer before restarting the device.

    The code size of AVR-CDC is 2-3KB, and 128B RAM is required at least.


USING AVR-CDC FOR FREE
======================
    The AVR-CDC is published under an Open Source compliant license.
    See the file "License.txt" for details.

    You may use this driver in a form as it is. However, if you want to
    distribute a system with your vendor name, modify these files and recompile
    them;
        1. Vendor String in usbconfig.h
        2. COMPANY and MFGNAME strings in avrcdc.inf/lowbulk.inf 



    Osamu Tamura @ Recursion Co., Ltd.
    http://www.recursion.jp/avrcdc/
    26 June 2006
    7 April 2007
    7 July 2007
    27 January 2008
    25 August 2008
    10 April 2009
    18 July 2009
    28 February 2010