I'm developing a USB device which needs only to run at full speed (12MHz), not high speed (480MHz). I'm using the FRDM-K66F board for development. How can I configure the board's physical USB port to run at full speed?
I understand that there are 2 USB OTG modules on the board (one supporting LS/FS and the other supporting LS/FS/HS), however, I'm confused about how to specify the former for use with the USB-PHY module.
Any help greatly appreciated.
Many thanks,
Don
解決済! 解決策の投稿を見る。
Don
The FRDM-K66F wants to show off the HS USB (with integrated PHY) and so doesn't connect the FS OTG one:
http://www.utasker.com/kinetis/FRDM-K66F.html
The Teensy 3.6 does it the other way round:
http://www.utasker.com/kinetis/TEENSY_3.6.html / https://www.pjrc.com/teensy/schematic.html
Both boards are supported in the free Open Source uTasker project: http://www.utasker.com/kinetis.html
Just select USB_HS_INTERFACE to use the HS one or remove the define to use the full speed one.
Both HS and FS USB are simulated in Visual Studio for accurate testing and verification.
Regards
Mark
Hi Don,
Have you download SDK for K66 from NXP's website? If not, please visit https://mcuxpresso.nxp.com/en/welcome. There is mass of USB examples for K66 in the SDK.
Please look into \SDK_2.2_FRDM-K66F\boards\frdmk66f\usb_examples.
Speed selection is auto-detected at connect time using enumeration procedures in the USB network. Don't worry about how to select high speed and full speed.
Regards
Looking at the schematic here: http://www.nxp.com/downloads/en/schematics/FRDM-K66F-SCH.pdf
I can now see that the USB0_DP and USB0_DM lines are not connected to anything (and presumably not exposed on the FRDM-K66F board) so one must use the high speed controller on USB1. Is that correct?
Don
The FRDM-K66F wants to show off the HS USB (with integrated PHY) and so doesn't connect the FS OTG one:
http://www.utasker.com/kinetis/FRDM-K66F.html
The Teensy 3.6 does it the other way round:
http://www.utasker.com/kinetis/TEENSY_3.6.html / https://www.pjrc.com/teensy/schematic.html
Both boards are supported in the free Open Source uTasker project: http://www.utasker.com/kinetis.html
Just select USB_HS_INTERFACE to use the HS one or remove the define to use the full speed one.
Both HS and FS USB are simulated in Visual Studio for accurate testing and verification.
Regards
Mark
Thank you very much Mark, I finally understand what's going on :smileyhappy:
Hi Don,
There is only software defference between FULL Speed and HIGH Speed.
K66 is a new product of NXP. Unlike NXP's old product or some competitor's product, it has integrated HIGH speed PHY in chip. So, USB1 is fully compatible with high/full/low speed.
You can see all the example in Kinetis SDK.
Regards
Thanks Jing Pan. Is there an example which shows how to configure a full speed USB device using the FRDM-K66F? I can only see ones which show high speed.
Or if there aren't any, just some guidance on how to configure the clock for either of the USB OTG modules for full speed would be great. Thanks.