Cyan Technology .

Eng  |  中文    

.

Frequently Asked Questions

Questions and answers on the following topics:

eCOG16

eCOG1X

CyanIDE 2

eCOG1k

CyanIDE 1.4


eCOG16

What are the differences between the eCOG16 and the eCOG1X?

The main differences between the eCOG16 and the eCOG1X are summarised in the following table.

  eCOG16 eCOG1X
Package 68 QFN, 48 TQFP 68 QFN, 100 QFN, 208 BGA
Max. CPU clock speed 50 MHz 70 MHz
Flash memory 64 KB 512 KB
SRAM 8 KB 24 KB
Max. I/O lines 20 120
UARTs 4 4
Analogue inputs 4 4, 11, 14
Analogue outputs - 2
Ethernet MAC - Yes
USB interface - Yes
6 channel PWM for motor control - Yes
LCD controller - Yes

[top]


eCOG1X FAQ

What are the USB Vendor ID and Product ID numbers?

All USB devices are identified by three numbers, described here in order of importance.

  • Vendor ID (VID).
    This is a 16-bit number that is issued to the vendor of the USB devices. The allocation of these numbers is controlled by the USB Implementers Forum at www.usb.org. The VID assigned to Cyan is 0x1B45.
  • Product ID (PID).
    Once a vendor has been allocated a 16-bit VID, they can use any 16-bit PID value for their products. Normally a different PID number is assigned to each different product.
  • Serial number.
    Devices may be identified by a unique serial number. This is optional but recommended. It is used by the host PC system to distinguish between different devices with the same VID and PID.

For more information, see the details on the USB Implementers Forum web site at www.usb.org/developers/vendor.

[top]

How do I get a USB Vendor ID and Product ID for my design?

(a) Become a member of the USB-IF. The annual membership fee is US$4000, and this includes the assignment of a vendor ID to your company (if one has not been assigned previously).

(b) Become a USB-IF non-member logo licensee. This allows you to use the USB logo in conjunction with products that pass USB-IF compliance testing. In addition, a vendor ID is assigned to your company (if one has not been assigned previously). The fee for this is US$2000 for a two-year term.

(c) Purchase a vendor ID without signing the logo license agreement. The administration fee for this purchase is US$2000. Note that if you do not sign the logo license agreement, you are not authorised to use the USB logo in conjunction with your products regardless of their testing status.

For full details, please refer to the USB Implementers Forum web site at www.usb.org/developers/vendor.

If you prefer not to buy your own VID, you can request one or more PIDs from Cyan, for use with Cyan's VID. We do not charge for this service. The PIDs assigned to you must be used only with Cyan's VID (0x1B45) and in systems using a Cyan microcontroller with a USB interface.

Please send us the following information when requesting a block of PID numbers:

  • Name
  • Company Name
  • Country
  • Email address

Note that if the VID or PID are changed, any example device drivers provided by Cyan also need to be changed to match the new numbers. Check any .inf or .ini files for references to the VID and PID numbers.

[top]

What is the max CPU clock freq when using the USB peripheral?

For performance applications, the high PLL provides the clock (for subsequent division) for both the USB peripheral and the memory/CPU.

In the electrical specifications, the max CPU clock is 71MHz for guaranteed operation - over the full voltage operating range (nominal +/-10%), temperature range (-40 to +85 degC) and allowing for process variations. When using the USB peripheral (which requires a 48MHz clock), the highest CPU clock frequency achievable is 64 MHz.

This can be selected by:

    - Setting the high PLL to 384 MHz, mem_clk divisor to 6 and cpu_clk      divisor to 1 which gives a 64 MHz CPU clock

    - Setting the USB peripheral clock to high PLL / 8 which gives 48 MHz.

High volume users should contact Cyan for customer-specific options.

[top]

How do I change from the external USB PHY to the internal USB PHY on the eCOG1X development board?

When acting as a USB Host The eCOG1X must supply the VBus power to the peripheral. On the eCOG1X Development Board, this depends on which USB interface is used. When the external ULPI PHY connection on S6 is used, the MAX5008 power supply is capable of supplying up to 125mA, which is sufficient for most flash memory based USB drives. For the internal USB PHY connection on S5, the power supply output from the MAX3355 is capable of only 8mA. This is sufficient for OTG devices but not for most USB flash drives. To use this connection with a USB flash drive, it is recommended that a link is placed on the board to connect the USB VBus power directly to the +5V supply. For example, connect J33 pin 1 (VBus on the internal USB connector) and J18 pin 2 (+5V supply). To use the internal phy in this way it is best in CyanIDE2 to set the configuration to "Minimal (Internal PHY)", and then use the following set-up code to set the state of the unconnected I/O internally in the chip.

extern usb_global_t usb_global_data;
void USB_Init( void )
{
// Tell the USB Stack that the VBus is permanently supplied
usb_global_data.permanent_vbus = TRUE;

// Force OTG signals for absent pins
fd.usb.signals.sessend_out = 0;
fd.usb.signals.sessend_force = 1;

fd.usb.signals.avalid_out = 1;
fd.usb.signals.avalid_force = 1;

fd.usb.signals.bvalid_out = 1;
fd.usb.signals.bvalid_force = 1;

fd.usb.signals.vbusvalid_out = 1;
fd.usb.signals.vbusvalid_force = 1;

fd.usb.signals.iddig_out = 0;
fd.usb.signals.iddig_force = 1;
}

And then ensure it is called after the cydf_open for the CyDF USB Host Peripheral.

When acting as a USB Peripheral (eg as a keyboard) the set-up routine needs to be:

extern usb_global_t usb_global_data;
void USB_Init( void )
{

    // Tell the USB Stack that the VBus is permanently supplied 
    usb_global_data.permanent_vbus = TRUE;

    // Force OTG signals for absent pins in peripheral mode

    fd.usb.signals.sessend_out = 0;
    fd.usb.signals.sessend_force = 1;

    fd.usb.signals.avalid_out = 1;
    fd.usb.signals.avalid_force = 1;
   
    fd.usb.signals.bvalid_out = 1;
    fd.usb.signals.bvalid_force = 1;
   
    fd.usb.signals.vbusvalid_out = 1;
    fd.usb.signals.vbusvalid_force = 1;
   
   fd.usb.signals.iddig_out = 1;
   fd.usb.signals.iddig_force = 1;
}

[top]


CyanIDE 2 FAQ

What are the system requirements for CyanIDE 2?

  • A Windows-based PC system.
    (minimum 1GHz CPU speed, higher speed recommended).
  • Windows XP or Windows Vista operating system.
  • 1GB free disk space.
  • 512MB memory (1GB recommended).
  • A spare USB port.
  • A spare serial port (optional).
  • System administrator privileges are required for software installation.

[top]

What should I check before upgrading from CyanIDE 1.4 to CyanIDE 2?

CyanIDE 2 is our new development tool for the eCOG1X family and future devices. It provides a rich, fully featured environment for embedded software development using Cyan's microcontrollers. However, it may not be appropriate to upgrade immediately in all cases.

Please note the following important points:

  • CyanIDE 2 does not support the eCOG1k device. Customers using the eCOG1k should continue to use CyanIDE 1.4.X.
  • CyanIDE 2 requires the new eCOG1X USB eICE programming adaptor using the eCOG1X5A5. It does not support the older eICE adaptor based on the FTDI USB device.
    Contact Cyan Sales for more information.
  • Existing eCOG1X USB eICE adaptors used with CyanIDE 1.4 are suitable for use with CyanIDE 2. However, CyanIDE 2 and CyanIDE 1.4 require different firmware on the eICE adaptor. A firmware upgrade can be performed from within CyanIDE 2, and subsequently can be reversed using CyanIDE 1.4 if required.
  • CyanIDE 2 and CyanIDE 1.4.X can be installed on the same machine. They install into different directories and do not share path or environment variables.
  • CyanIDE 2 is supported under Windows XP and Windows Vista only. It is not supported under Windows 2000 or earlier versions.

[top]


eCOG1k FAQ

What has happened to the eCOG1k?

The eCOG1kG device is no longer recommended for new designs, however it is still supported and available on request. Contact Cyan Sales or Support for further information.

[top]


CyanIDE 1.4 FAQ

What has happened to CyanIDE 1.4?

 

CyanIDE 1.4 is no longer recommended for development of new designs, however it is still supported and available on request. Contact Sales or Support for further information.

[top]