This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

GPIO

can any one explain the difference between REGULAR PORT and FAST PORT in LPC2366.Thanks in advance.

  • The older method of accessing the ports are based on a lower-bandwidth communication channel between the ARM core and the I/O block. This means that it takes quite a number of clock cycles to get a write to the port register to actually result in a change of the port pins.

    You can not use both communication methods to access the ports, so you must specifically configure the processor to use the old or new communication method.

    Obviously, if you write new software, you should use the newer and faster interface. The original method is only left for compatibility with older-generation chips to allow easy porting of existing code.

    This is described quite well in chapter 10 of the user manual.

  • Additionally, read the manual for SCS registers. GPIO on Banks 0 and Bank 1 are enabled only when GPIOM is set to a 1.
    Bradford

  • Actually, GPIO on GPIO port 0 and 1 are always enabled. The GPIOM bit of the SCS register just specifies that the new high-speed mode of accessing them should be used for the first two ports, i.e. that the FIO0x and FIO1x registers should be used.

    Without setting the GPIO0M bit, the default is that the IO0x and IO1x registers will control the ports.

    It is only the first two ports that are controlled by the GPIOM bit - all the other ports are always using the high-speed mode of access.

  • Yep, that's what I said. The GPIO ports are not enabled on Bank0 and Bank1 until the GPIOM bit is set. By default at reset the Ports are driven by IOx and FPIOx will not flip a bit.