ååã®èšäºã§è§ŠããFTDI FT232Hè¶
å°ååè·¯ã®å®çšåã®ãããã¯ãç¶ããŠããã®äžã§ãããã°ããŒããUSBã€ã³ã¿ãŒãã§ã€ã¹ãåããå®äŸ¡ã§ã»ãŒæ®éçãªJTAGã¢ããã¿ãŒãšããŠäœ¿çšããããŸããŸãªã¢ãŒããã¯ãã£ãšã¡ãŒã«ãŒã®å€ãã®ãã€ã¯ãã³ã³ãããŒã©ãŒããµããŒãããããšã«ã€ããŠã話ããããšæããŸãã ç§ã¯æå³çã«ãã®ã¢ããã¿ãŒããJTAGãããã¬ãŒããšã¯åŒã³ãŸããã JTAG TAPãåãããã¹ãŠã®ããã€ã¹ããããã°ããµããŒãããããã§ã¯ãããŸããããéåžžã®ãŠãŒã¶ãŒã¯ã»ãšãã©ã®å ŽåãMTAGã§ã³ãŒãããã©ãã·ã¥ããã³ãããã°ããããã«JTAGã¢ããã¿ãŒã䜿çšããŸãã ãã®èšäºã§ã¯ãæªæ€èšŒã®ãœãªã¥ãŒã·ã§ã³ãžã®ãªã³ã¯ãæäŸããªãããã«ãJTAGã¢ããã¿ãŒãšããŠFT232Hã䜿çšããç§èªèº«ã®çµéšã®ã¿ã説æãããããã³ã¡ã³ãã§ãã®ãããã®äœ¿ç𿹿³ïŒãŸãã¯ä»ã®æ¹æ³ïŒãå
±æããããšãèªè
ã«ææ¡ããŸãã ããã§èª¬æãããŠãã以äžã®æ¹æ³ããããšç¢ºä¿¡ããŠããŸãã
ç«ã®äžã§èå³ãæã£ãŠãã ããã
FT232Hã«ã€ããŠäžèš
FTDI FT232Hãããã«æ
£ããŠããªãå Žåã¯ã
å°çšã®
èšäºãèªãã§æ»ã£ãŠãã ããã ä»ã®èšäºãèªãããšãèšç»ã«å«ãŸããŠããªãå Žåã¯ãå°ãç¹°ãè¿ããŸãããã
FT232Hãšãã®å€æ°ã®ãã£ã³ãã«ã¯ç°ãªããŸãã2ãã£ã³ãã«FT2232Dããã®USB 2.0ããŒãžã§ã³FT2232Hãããã³4ãã£ã³ãã«FT4232Hã¯ãSPIãããã³ã«ã®ããŒããŠã§ã¢ãµããŒããæäŸãã远å ã®åäœã¢ãŒããåããUSB <-> USARTã³ã³ãããŒã©ãŒã§ãïŒSPIããã°ã©ããŒã®ã¢ã»ã³ããªã«ã€ããŠã¯ãåã®èšäºïŒãJTAGïŒãã®èšäºã§èª¬æããäœæ¥ïŒãããã³I2CïŒãŸã æ€èšããŸããïŒã
ãããèªäœã¯éåžžã«å®ããå°ããªãããã§ã¯
çŽ200ã«ãŒãã«ããããŸãããDIYã«ã¯ããŸã䟿å©ã§ã¯ãªãLQFPããã³QFNã®ã±ãŒã¹ã§å©çšã§ããããããããèªäœã§ã¯ãªãã
ãã®ãããªæ¢è£œã®ãã¬ã€ã¯ã¢ãŠãããŒãïŒåã15ãŠãŒãïŒã賌å
¥ããã®ãæãç°¡åã§ãèšäºã®ã¿ã€ãã«ããã®ãã¥ã¢ã«ãã£ãã«FT2232HïŒããŸãã¯
ãã®ãã㪠ïŒé
éãªãã®600ã«ãŒãã«ïŒããŸãã¯
ãã®ãã㪠ïŒ600ã«ãŒãã«ããããå¥ã®å Žæã§ïŒããŸãã¯ãã®ä»-ãããã¯äººæ°ãããããã®äžã«å€ãã®ç°ãªãããŒãããããŸãã EEPROMããããæ¢ã«èšå®ãä¿åããããã«ã¯ãã ä»ããããŠãããã®ãéžæããããã«ããŠãã ãã-ä»ã®ããã€ã¹ã®ãµããããæ¹ãã¯ããã«ç°¡åã«ãªããŸãã
JTAGã«ã€ããŠäžèš
JTAGã€ã³ã¿ãŒãã§ãŒã¹ã«æ
£ããŠããªãå Žåã¯ã
ãã¡ãã®èšäºãèªã
ã§ããããäžåºŠæ»ã£ãŠãã ããã äžè¬çã«ãJTAGãã¹ãã¢ã¯ã»ã¹ããŒãã¯ããŸããããã°ã©ã ã§ã¯ãªãããã€ã¹ã®ããŒããŠã§ã¢ããããã°ããããã®ã€ã³ã¿ãŒãã§ã€ã¹ã§ãããã2åå®è¡ããªãããã«ãããã®ã€ã³ã¿ãŒãã§ã€ã¹ãåããããã°ã©ã å¯èœãªãã€ã¯ãåè·¯ã®å€§éšåããã¡ãŒã ãŠã§ã¢ãšãããã°ã³ãŒãããµããŒãããŠããŸãã äžæ¹ãå€ãã®å ŽåãMCã«ã¯4ã€ã®ç¡æã®çµè«ããããïŒJTAGã«ã¯å°ãªããšã4ã€ãå¿
èŠã§ãïŒãã»ãšãã©ã®ã¡ãŒã«ãŒã¯NIHã·ã³ãããŒã ã«èŠããã§ããŸãïŒãããŠãã°ãã°æ¥œããããšãããããŸãïŒããã®ãããJTAGã®ä»£ããã«ARMã®SWD ïŒãããã³ã«ã¯åãã§ã4ã®ä»£ããã«2ãã³ã®ã¿ïŒãFreescaleãšMotorolaã®BDMïŒãããã³ã«ã¯ç°ãªãã1ã€ã®åæ¹åãã³ã§ååã§ãïŒãTexas Instrumentsã®Spy-Bi-WireïŒ2ãã³ã®JTAGã®å¥ã®ããŒãžã§ã³ïŒãAVRã®DebugWIREïŒ 1ã€ã®åºåã®ã¿ãå¿
èŠãšããåçŽåããããããã°ãããã³ã«ïŒãªã©ã å¿
èŠã«å¿ããŠãKT-Linkãããã¬ãŒãšãªãŒãã³ãããã¬ãŒã«åºã¥ããšãã¥ã¬ãŒã¿ãŒã§è¡ãããããã«ãUSB <-> GPIOã¢ããã¿ãŒãšããŠãããã䜿çšããã³ã³ããã³ãã¹ã€ããã³ã°ã䜿çšããŠSWDãšSWVã䜿çšããŠãããã°ã©ã ã«ãã£ãŠFT232HããŒã¹ã«å®è£
ã§ããŸãã
ãã¹ãã©ã¹ã¿ãŒ ã äžèšã®ãããã°ã€ã³ã¿ãŒãã§ãŒã¹ãªãã·ã§ã³ã®ãã¢FT232Hã§ã¯ãJTAGã®ã¿ããµããŒããããŠããŸããããã«çæããŠãã ããã
ARMã®ãã©ãã·ã¥ãšãããã°
å€ãã®äžè¬çãªãããã¬ãŒã¯FT232Hã«åºã¥ããŠãããããIDEããã³ãã®ä»ã®ãŠãŒãã£ãªãã£ã§ããŒãã®ãµããŒãã远å ããæãç°¡åãªæ¹æ³ã¯ããããã®ãããã¬ãŒããšãã¥ã¬ãŒãããããšã§ãã äžéšã®æ©èœãåäœããªãå ŽåããããŸããããã®ããªãã¯ã«ãããç¬èªã®ãã©ã€ããŒãäœæããå¿
èŠããªããªããŸãã æãç°¡åãªæ¹æ³ã¯ãCoLinkãªãŒãã³ãããã¬ãŒïŒExãµãã£ãã¯ã¹ãªãïŒã®ãµããããããšã§ãããã®
åè·¯ã¯ããããã¡ãŒãååšããå Žåã«ã®ã¿ãã»ãšãã©ã®åè·¯ãã¬ã€ã¯ã¢ãŠãããŒã
ãšç°ãªããŸãã ããã«ãCooCox IDEã¯ã
äºåæ§æåŸã®ãããã¬ãŒãšããŠã®FT232HããŒã¹ã®ããã€ã¹ã®äœ¿çšãçŽæ¥ãµããŒãããŸããKeiluVisionããã³IAR Workbenchã®ãã©ã°ã€ã³ãããããã³ããŒIDãŸãã¯è£œåIDã倿Žããå¿
èŠã¯ãããŸããã CoLinkã¯ãæšæºã®FT232H VIDãšPIDãããã³æšæºã®FTDI D2XXãã©ã€ããŒã®äž¡æ¹ã䜿çšããŸãã
OSãWindowsãšç°ãªããKeilãIARããŸãã¯CooCox IDEã«èå³ããªãå Žå-FT232Hãããã¬ãŒãå®å
šã«ãµããŒããã
UrJTAGããã³
OpenOCDãããžã§ã¯ãã«æ³šæããŠãã ããã ç§ã¯Keil uVision4ã§åããŠããŸããããã®éžæã¯ç§ã«ãã£ãŠè¡ããããã®ã§ã¯ãªããããLinuxããã³OS Xã§ã®FT232Hã®äœ¿çšã«ã€ããŠã¯ãŸã 詳ãã説æã§ããŸããã
Keilã§ã¯ã
ãã©ã°ã€ã³ãã€ã³ã¹ããŒã«ããã ãã§ããããžã§ã¯ãããããã£ã§æ£ããã¿ãŒã²ãããšCoLinkããããã¬ãšããŠéžæããŸãããã®åŸããµãŒãããŒãã£ãœãããŠã§ã¢ã䜿çšããã«ããã¡ãŒã ãŠã§ã¢ãšãããã°ã®äž¡æ¹ãIDEããå®è¡ãããŸãã
æ®å¿µãªãããCoLinkäºæãããã®å®å
šãªãªã¹ããèŠã€ãããŸããïŒå
¬åŒã®ãããã¯äžèšã®ãªã³ã¯ã«ãããŸãããå®å
šã§ã¯ãããŸããïŒãOpenOCDã§äºææ§ãªã¹ãã詊ãã䜿çšããå¿
èŠããããŸãã äžè¬ã«ã詊ããŠã¿ãããšããå§ãããŸããããã«åäœããå¯èœæ§ãé«ãã§ãã
XE166ã®ç¹æ»
ãšãããã°
å€ãã®ãå³ä»ãããããªãªã«ããã§ãããç¥åœä»¥å€ã§ã¯ããŸã人æ°ããªããã®16ãããRISCã¢ãŒããã¯ãã£ã«ã€ããŠåããŠè³ã«ããŸãã ãã®ã¢ãŒããã¯ãã£ã¯ãã§ã«éåžžã«å€ãã1993幎ã«Siemensãç£æ¥ãªãŒãã¡ãŒã·ã§ã³ã§äœ¿çšããããã«STãšå
±åã§æåã®ä¿®æ£ãéçºãããã®åŸC166ãšåŒã°ããŸããã ãã®åŸã2007幎ã«ããã§ã«ã·ãŒã¡ã³ã¹ãé¢ããŠããã€ã³ãã£ããªã³ã¯ãã®ã¢ãŒããã¯ãã£ãå°ãæ¹è¯ããã³ã³ãã¢ã¹ããŒãžã®æ°ã4ãã5ã«å¢ããã32ãããã®å ç®ä¹ç®ãããã¯ã远å ããŸããã çµæãšããŠçããXE166ã¢ãŒããã¯ãã£äžã®ããã
ã¯ãŸã ãªãªãŒã¹ãããŠããããã€ãã®ãªãŒãã¡ãŒã·ã§ã³ã§åºã䜿çšãããŠããããŸã æä»£é
ãã«ãªãããšã¯ãããŸããã 圌ããšã®ä»äºã¯ãé¢é£ããITå°éã®å·¥ç§å€§åŠã®åŠçã«æããããŠããã®ã§ããã®ã¢ãŒããã¯ãã£ãšãã®äžã®ãããã«å¯ŸåŠããªããã°ãªããŸããã§ããã
ç§ã®æèŠã§ã¯ãã¿ã¹ã¯çšã®éåžžã®ããããå€ãã®åšèŸºæ©åšïŒããšãã°ãMultiCANãµããŒããåãã6ã€ã®CANãã£ãã«ïŒã1 MHzããã1 MIPSã®ããã©ãŒãã³ã¹ã§æå€§100 MHzããããŸãããæ¬ ç¹ããªãããã§ã¯ãããŸãã-100 MHzã§120 mAãç°¡åã«é£ã¹ãããšãã§ããŸãã¯ããã¯ããã»ãŒå®å
šã«åãé¢ãããç¹æ®ãªã³ã³ãã¥ãŒãã£ã³ã°è² è·ãšåšèŸºæ©åšãããã³AVRããè€éãªããã°ã©ãã³ã°ã§ãããåãã»ã°ã¡ã³ãã®å
žåçãªARMãšåçã®ã¬ãã«ã§ãã ããŠããã³ããŒããã¯ã€ã³ããããªãã§ã
çµã¿èŸŒãŸããŠããªãåžå Žã§ã¯åžå°æ§ãšæ®åçãäœãããããã®ã¢ãŒããã¯ãã£çšã®ãããã¬ã¯ãŸã£ãã賌å
¥ã§ããªãããä»ã®äžè¬çãªã¢ãŒããã¯ãã£çšã®æ°çŸã®éåžžã®ãããã¬ããã®ã³ã¹ãã§è³Œå
¥ã§ããŸãã ããããåãFT2232DãèŠã€ãã£
ãdevkitã¹ããŒã ã®ç¶¿å¯ãªç ç©¶
㯠ããããã¬ãŒãã»ãšãã©è¡ãªãã§åŸãããããšã瀺åããŠããŸãã ããããã€ã³ãã£ããªã³ã¯ãCooCoxãšã¯ç°ãªããéçºãããã«ã€ã³ã¹ããŒã«ãããŠããFT2232Dã®VIDãPIDãããã³ã·ãªã¢ã«çªå·ã倿Žããããšã決å®ããããããããè¡ãå¿
èŠããããŸãã éçºããããæ¥ç¶ãããã©ã€ããŒãã€ã³ã¹ããŒã«ãããã®ãåŸ
ã£ãŠãFT_Progãèµ·åããVIDãPIDãã·ãªã¢ã«çªå·ãæžãçããŸãïŒéçºãããã«ã¢ã¯ã»ã¹ãããèšäºã«è¿œå ããŸãããä»ã¯æãæ¹ããããèŠããŠããªãïŒãåãå€ããã©ãã·ã¥ããŸãïŒã·ãªã¢ã«çªå·ã¯å°ã倿Žã§ããŸãïŒããŒãã®EEPROMïŒãããå¿
èŠãªå Žæã§ãïŒã ããŒããPCããåæãã忥ç¶ããŸã-æ°ããVIDãšPIDããã©ã€ããŒã«ãã£ãŠååŸãããããŒãã§ã®äœæ¥ã¯éçºãããã§ã®äœæ¥ãšã»ãšãã©å€ãããŸãã-ãããã¬ãŒãšåãKeilããã³Infineon DASã§ãã
ãã®ä»ã®çšé
ããŒããµã€ãã§æ€çŽ¢ãããšãFT232Hãšãã®å
åŒã䜿çšããŠMKãšFPGAã®ãã©ãã·ã¥ãšãããã°ãè¡ãä»ã®æ¹æ³ãç°¡åã«èŠã€ããããšãã§ããŸããããŸã åºäŒã£ãŠããªãã®ã§ããå®çšçãªã¢ããªã±ãŒã·ã§ã³ãã«ã€ããŠæžãæš©å©ã¯ãããŸããã ãã ãããããã®æ¹æ³ã«ç²ŸéããŠããèªè
ã«ã³ã¡ã³ãã§ããããå
±æããããã«äŸé Œããããšã¯æ¢ããããŸããã äºåã«æè¬ããŸãã
ãæ³šæãšãããã°ã®æåã«æè¬ããŸãã