Uživatelské nástroje

Nástroje pro tento web


cs:arm_programming

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:arm_programming [2013/11/09 13:54] – [USB bootloader] kaklikcs:arm_programming [Unknown date] (aktuální) – upraveno mimo DokuWiki (Unknown date) 127.0.0.1
Řádek 11: Řádek 11:
  
 Jako volně dostupný kompilátor se může použít GNU C Compiler, dostupný v git repositáři [[https://launchpad.net/gcc-arm-embedded|gcc-arm-embedded]]. Jako volně dostupný kompilátor se může použít GNU C Compiler, dostupný v git repositáři [[https://launchpad.net/gcc-arm-embedded|gcc-arm-embedded]].
- 
-Pro instalaci do Ubuntu je možné využít před připravené [[https://launchpad.net/~terry.guo/+archive/gcc-arm-embedded|deb balíčky]]. PPA repositář zatím funguje pouze pro Ubuntu 12.04 
  
 == Rychlá instalace pomocí repositáře == == Rychlá instalace pomocí repositáře ==
Řádek 18: Řádek 16:
   sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded   sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded
   sudo apt-get update   sudo apt-get update
-  sudo apt-get install gcc-arm-none-eabi+  sudo apt-get install gcc-arm-none-eabi libnewlib-arm-none-eabi 
 +   
 +Pokud si nechcete do systému přidávat nový PPA repozitář, tak můžete použít rovnou připravené [[https://launchpad.net/~terry.guo/+archive/gcc-arm-embedded|deb balíčky]]. 
 +  
      
 == Postup kompilace ==   == Postup kompilace ==  
-V terminálu je potřeba se nacházet ve složce, kde se nachází soubory potřebné pro kompilaci a následně stačí zadat příkaz MAKE 
-   
-===== Programovací GUI ===== 
  
-Programovací prostředí v kterém je vytvářen zdrojový kód. Mezi uživateli jsou nejoblíbenější následující dvě volby. Jinak lze ale zdrojový kód psát v libovolném textovém editoru.  +V terminálu je potřeba se nacházet ve složce, kde se nachází soubory potřebné pro kompilaci a následně stačí zadat příkaz make
- +    
-==== Sublime text ==== +
- +
-Je placený editor pro linux mezi jeho vyjímečné vlastnosti patří například náhled celého zdrojového kódu+
- +
-[[http://www.ubuntuupdates.org/ppa/sublime|Ubuntu PPA repository]] +
- +
-==== Code::Blocks ==== +
- +
-Jde o velmi rozřířený editor, jehož výhodou je, že běží na více platformách a mohou ho tedy používat i uživatelé windows. +
- +
-[[http://www.codeblocks.org/|Code::Blocks]] +
- +
-  sudo apt-get install codeblocks +
-   +
-  +
 ===== Knihovny periférií ===== ===== Knihovny periférií =====
  
Řádek 137: Řádek 120:
 === USB bootloader === === USB bootloader ===
  
-[[http://dfu-util.gnumonks.org/|dfu-util]] je program, který umožní do procesorů ARM STM32F107 nahrávat firmware USB bootloaderem. +[[https://gitorious.org/dfu-util|dfu-util]] je program, který umožní do procesorů ARM STM32F107 nahrávat firmware USB bootloaderem. 
  
 == Zapojení == == Zapojení ==
Řádek 172: Řádek 155:
 Jtag lze použít téměř s libovolným ARM mikroprocesorem.   Jtag lze použít téměř s libovolným ARM mikroprocesorem.  
  
-K programování přes JTAG je potřeba externí programátor. Na modulu [[cs:stm32f10xrxt|STM32F10xRxT01A]] jsou JTAG signály vyvedeny na zvláštním konektoru (J51). Jako externí programátor může být využit například modul [[cs:JTAGFT2232V|JTAGFT2232V02A]]+K programování přes JTAG je potřeba externí programátor. Na modulu [[cs:stm32f10xrxt|STM32F10xRxT01A]] jsou JTAG signály vyvedeny na zvláštním konektoru (J51). Jako externí programátor může být využit například modul [[cs:JTAGFT2232V|JTAGFT2232V02A]].
  
-Ovládat jej lze například programem [[http://openocd.sourceforge.net/|OpenOCD]], který podporuje většinu používaných JTAG programátorů a umí vytvořit back-end pro [[http://www.gnu.org/software/gdb/|GDB]], takže podporuje i debugování. +Modul JTAGFT2232V02A lze ovládat například programem [[http://openocd.sourceforge.net/|OpenOCD]], který podporuje většinu používaných JTAG programátorů a umí vytvořit back-end pro [[http://www.gnu.org/software/gdb/|GDB]], takže podporuje i debugování.
-OpenOCD má v Ubuntu sice nativně podporované 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 
-  >  
    
 ===== RTOS  operační systém ===== ===== RTOS  operační systém =====
cs/arm_programming.1384005274.txt.gz · Poslední úprava: 2013/11/09 13:54 (upraveno mimo DokuWiki)