⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pitfalls.txt

📁 AVR单片机模拟USB代码.可实现中断,控制传输,低速设备
💻 TXT
字号:
If something does not work as it should, please check the following list.It is compiled from the feedback we received so far.FIRMWARE:- If you use an ATMega or other device with internal RC oscillator, make sure  that you flash the fuse for the external crystal oscillator.- Make sure that all USB inputs (D+, D- and the interrupt) are configured as  inputs with no internal pullup resistor. You must write a "0" to the port  output bit and to the data direction bit of each input line.- Make sure that you have updated the defines in usbconfig.h to reflect your  pin assignments.HOST DRIVER:- On Linux you must be root in order to use libusb (unless you have configured  hotplug appropriately). The command line utility must therefore be executed  by root.- Our host software can be compiled on Windows using MinGW and libusb-win32.- libusb-win32 version 0.1.10.1 (others have not been tested) has a bug with  suspend mode. Once the PC was in suspend mode, the device is "lost".HARDWARE:- EMI: Our reference implementation is susceptible to EMI problems. We found  out that the chip performs a reset although the external reset pin does  not change level (checked with a DSO connected to reset and triggered by  USB reset). This may be a consequence of over-clocking (we had the AT90S2313  in stock and it just worked). We recommend EMI precautions in any case:  (1) Use the watchdog timer of the device, (2) generate an USB reset state  for an extended period of time after device reset (this is outside the USB  spec, but it works: the hub or host interprets it as disconnect). Otherwise  the host's and device's notion of the device-ID may get out of sync.- If you use the EEPROM, it is very likely that you need some kind of brownout  protection. A capacitor of several 100 microfarads in the supply is enough  to reliably cause brownout problems. See Atmel's Application Note AN180  for more information. Your local supplier's price table may be a better  selection guide for brownout protection chips, though. Newer AVRs have  brownout protection built-in. It can be configured with the fuse bits.- Operating Voltage: PowerSwitch has been designed to operate at 3.5 V in  order to meet the data signal voltage specification. The circuit does  not work reliably with 5 V levels on D+ and D-. These levels exceed the  common mode range of the USB I/O driver chips found in some hosts and hubs.  We therefore recommend that you either reduce the CPU's supply voltage or  add 3.6 V zener diodes to USB D+ and D- to clamp the voltage at 3.3 V.AVR DEVICES CONFIRMED TO WORK:Although the driver should work with all AVR microcontrollers which meet thecriteria, it may be good to know that somebody has actually tried a particularchip. If you have built an AVR-USB project with a chip not listed here,please drop us a note. The following chips have been tested:  AT90S2313   works, although it is overclocked  ATTiny2313  ATTiny45  ATMega8  ATMega88  ATMega8535  ATMega32

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -