Uživatelské nástroje

Nástroje pro tento web


cs:jtagft2232v

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
cs:jtagft2232v [2012/03/15 14:10] kaklikcs:jtagft2232v [2020/01/22 18:26] (aktuální) – [SPI programátor] kaklik
Řádek 1: Řádek 1:
-====== JTAGFT2232V01A ======+====== J-tag programátor JTAGFT2232V02A ======
  
 +[[http://www.mlab.cz/Modules/CommSerial/JTAGFT2232V02A/DOC/JTAGFT2232V02A.cs.pdf|Dokumentace k modulu]]
 +[[http://www.ust.cz/shop/product_info.php?products_id=236&osCsid=knud68e99fjvmuruh74pk48hj3|E-shop UST]]
  
 +Jedná se o J-TAG programátor vhodný pro programování procesorů ARM osazených v modulu [[cs:stm32f10xrxt|STM32F10xRxT01A]]. Tento modul programátoru je softwarově i hardwarově kompatibilní se známou konstrukcí BusBlaster V4. 
  
 +
 +===== Konstrukce modulu =====
 +
 +Modul obsahuje USB interface s čipem FTDI a FPGA Xilinx. FTDI čip je připojován k hradlovému poli přes spínače HC4066. A hradlové pole proto může pracovat samostatně a nebo v kombinaci s FTDI čipem. Interni komunikacni signaly jsou 3.3 V proto, protože spicac HC4066 nepracuje spolehlive se signaly mensimi, nez 2 V.
 +
 +
 +===== Oživení modulu =====
 +
 +Protože modul komunikuje s programovanou periferií přes hradlové pole, tak je potřeba hradlové pole nejdříve naplnit schématem. To lze udělat programem [[http://xc3sprog.sourceforge.net/guide.php|xc3sprog]]. Tento program zatím nemá .deb balíček. Proto je potřeba jej zkompilovat a nainstalovat klasickým postupem:
 +
 +  svn co https://xc3sprog.svn.sourceforge.net/svnroot/xc3sprog/trunk xc3sprog
 +  cd xc3sprog
 +  cmake . 
 +  make 
 +  make package
 +
 +Chybu o nedostupnosti programu //  RPM package requires rpmbuild executable// můžeme ignorovat, protože RPM balíček v Ubuntu nepotřěbujeme. Měl by ale vzniknout deb balíček //xc3sprog-0.0-svn752.x86_64.deb//. Který můžeme již nainstalovat standardním instalačním procesem. 
 +
 +Pro nahrání schéma je potřeba mín na madolu JTAGFT2232V02A Jumper MODE v poloze JTAG, která umožňuje JTAG spojení s interním CPLD. Pomocí příkazu pak již do modulu nahrajeme schéma: 
 +  sudo xc3sprog -c bbv2_2 jtagkey.bit
 +
 +Bitfile od schéma je v dokumentační složce //svnMLAB/Modules/CommSerial/JTAGFT2232V02A/HDL/JTAGkey//.
 +===== Využití modulu =====
 +
 +Modul může být díky svojí univerzální konstrukci, kdy je jeho funkce dána obsahem CPLD využit pro různé účely.
 +
 +==== SPI programátor ====
 +
 +Modul může být použit k naprogramování schéma do SPI flash paměti. 
 +
 +==== J-tag programátor ====
 +
 +=== ARM ===
 +
 +Procesory ARM lze přes tento modul programovat pomocí programu OpenOCD. Podrobnosti najdete na stránce [[cs:arm_programming#j-tag|o programování procesorů ARM]].
 +
 +OpenOCD má v Ubuntu sice dostupné balíčky, ale jejich verze je zatím značně opožděna za současným vývojem. Proto je lepší si zkompilovat aktuální verzi. To provedeme následujícím postupem:  
 +
 +  sudo apt-get install libtool git gcc automake libftdi-dev texinfo
 +  git clone git://git.code.sf.net/p/openocd/code openocd-code
 +  cd openocd-code/
 +  ./bootstrap
 +  ./configure --enable-maintainer-mode --disable-werror --enable-ft2232_libftdi
 +  make
 +  sudo make install
 +  
 +Tím máme v systému naistalováno OpenOCD. Pokud jej budeme chtít odinstalovat, použije se příkaz 
 +
 +  sudo make uninstall
 +
 +Pokud máme k počítači připojený modul [[cs:jtagft2232v|JTAGFT2232V02A]] s nahraným schématem v FPGA, tak se můžeme připojit k nějakému ARMu.
 +
 +  sudo openocd -f "interface/busblaster.cfg" -f "target/stm32f1x.cfg"
 +  
 +  Open On-Chip Debugger 0.7.0-rc1-dev-00011-gd9ba56c (2013-04-28-11:46)
 +  Licensed under GNU GPL v2
 +  For bug reports, read
 +  http://openocd.sourceforge.net/doc/doxygen/bugs.html
 +  Info : only one transport option; autoselect 'jtag'
 +  adapter speed: 1000 kHz
 +  adapter_nsrst_delay: 100
 +  jtag_ntrst_delay: 100
 +  cortex_m3 reset_config sysresetreq
 +  Info : max TCK change to: 30000 kHz
 +  Info : clock speed 1000 kHz
 +  Info : JTAG tap: stm32f1x.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x3)
 +  Info : JTAG tap: stm32f1x.bs tap/device found: 0x16410041 (mfg: 0x020, part: 0x6410, ver: 0x1)
 +  Info : stm32f1x.cpu: hardware has 6 breakpoints, 4 watchpoints
 +
 +OpenOCD teď vytvořilo server ke kterému se můžeme přípojit přes telnet 
 +
 +  telnet localhost 4444
 +  
 +  Trying 127.0.0.1...
 +  Connected to localhost.
 +  Escape character is '^]'.
 +  Open On-Chip Debugger
 +  > 
 +
 +=== FPGA hradlová pole ===
 +
 +Modul může být dále využit k programování hradlových polí. Tedy například i vývojové desky [[cs:s3an|S3AN01A]]. Výhodou tohoto programátoru oproti řešení [[cs:xvc_ft220x|Xilinx Virtual Cable s obvodem FTDI FT220X]] je že takto lze schéma nahrát i do interní FLASH paměti, takže v FPGA zůstane i po vypnutí napájení.
 +
 +K tomu co je k JTAG modulu připojeno se dostaneme příkazem:
 +
 +  xc3sprog -c bbv2
 +
 +==== Vývojová deska FPGA ====
 +
 +Hradlové pole v modulu lze využívat i samostatně v aplikacích, kde je jeho rychlost a rozměr dostačující. Modul tak může být v některých případech použit, jako USB interfaece mezi PC a aplikací. 
 +
 +====== JTAGFT2232V01A ======
 +
 +Je již zastaralá verze modulu, která není nadále podporována.
  
 ==== TODO ==== ==== TODO ====
Řádek 12: Řádek 109:
 přidat sériové odpory 22Ohm na JTCK ,JTDI, JTDO, JTMS přidat sériové odpory 22Ohm na JTCK ,JTDI, JTDO, JTMS
 dodělat nap. translátor? (budeme zatím programovat jen 3,3V aplikace?) dodělat nap. translátor? (budeme zatím programovat jen 3,3V aplikace?)
- 
  
 === Napsal MIJA === === Napsal MIJA ===
cs/jtagft2232v.1331820600.txt.gz · Poslední úprava: 2012/03/15 14:10 autor: kaklik