您好,登錄后才能下訂單哦!
參考:
【1】http://www.eefocus.com/fhq1989312/blog/12-04/247353_1c4c2.html
參考文章中說明了如何確定自己的仿真器的類型(是否為ft2232)以及驅動和libusb庫的安裝,以及編譯時./configure需要添加的參數。
以下為轉載內容:
于如上信息可以看出該openjtag的核心芯片應該是FTDI公司提供的FT2232C,以及一些相關的信息
為了查看關于這個USB openjtag的更加詳細的信息,我們可以執行如下命令 $lsusb查看設備的相關簡要信息
我的電腦獲取到如下信息
Bus 006 Device 002: ID 1457:5118 First International Computer, Inc. OpenMoko Neo1973 Debug board (V2+)
為了獲取更加詳細的信息我們可以采用如下命令
$ sudo lsusb -v -D /dev/bus/006/002 (解釋:sudo是必須的,因為訪問usb的一些操作需要超級用戶權限,lsusb的使用方法可以采用man lsusb查看,006對應bus 006 ,002對應Device 002)
獲取詳細信息我只截取一些關鍵信息如下
idVendor 0x1457 First International Computer, Inc.
idProduct 0x5118 OpenMoko Neo1973 Debug board (V2+)
iManufacturer 1 www.100ask.net
iProduct 2 USB<=>JTAG&RS232
iInterface 2 USB<=>JTAG&RS232
現在知道這款openjtag工具采用的是ftdi公司的芯片,當然我們就可以需要在配置器腳本進行配置的時候加入一些相關的配置選項以支持ftdi的工具
首先需要獲取芯片的相關的驅動分別在如下網站上有下載
http://www.ftdichip.com/Drivers/D2XX.htm
http://www.intra2net.com/en/developer/libftdi/download.php
直接apt-get獲取穩定的版本的方式(非ftdi官方驅動)
sudo apt-get install libftdi-dev libftdi1 libtool git-core asciidoc
如果采用直接apt-get獲取的方式獲得libftdi的驅動,配置器的配置選項如下(具體可以參照如下網站實現 http://fun-tech.se/stm32/OpenOCD/index.php)
關于配置器的使用方法 可以直接運行如下命令 $./configure --help
./configure --enable-maintainer-mode \
--enable-ft2232_libftdi
--enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer 采用最舒適的配置方式
--enable-ft2232_libftdi Enable building support for FT2232 based devices using the libftdi driver, opensource alternate of FTD2XX 采用FTD2XX開源的驅動解決方案
如果采用FTDI官方的驅動可以采取如下方式(官方驅動方式)
下載網址 http://www.ftdichip.com/Drivers/D2XX.htm
下載完畢上述驅動后,名稱為libftd2xx1.0.4.tar.gz
解壓后 將ftd2xx.h和WinTypes.h都拷貝到/usr/local/include/目錄下,并且在/usr/include/目錄下建立軟鏈接(需要超級用戶權限),主要原因是make編譯的時候需要用到這些頭文件
首先進入libftd2xx1.0.4.tar.gz解壓后的目錄假設為 libftd2xx1.0.4
執行如下命令
$sudo cp ./ftd2xxx.h /usr/local/include/ftd2xxx.h
$sudo cp ./WinTypes.h /usr/local/include/WinTypes.h
$sudo ln -s /usr/local/include/ftd2xx.h /usr/include/ftd2xx.h
$sudo ln -s /usr/local/include/WinTypes.h /usr/include/WinTypes.h
執行完畢后,就可以執行如下命令(之前先要進入openocd的源碼目錄,假設ftdi驅動文件的文件夾位于openocd源碼目錄下文件名為libftd2xx1.0.4)
$ ./configure --enable-maintainer-mode\
--enable-ft2232_ftd2xx \
--with-ft2xx-linux-tardir=./libftd2xx1.0.4
--enable-ft2232_ftd2xx Enable building support for FT2232 based devices the FTD2XX driver from ftdichip.com 采用ftdichip提供的驅動文件
--with-ft2xx-linux-tardir 后面接ftdichip公司提供的驅動文件目錄
+++++++++++++++++++++++++++++++++++++++++++++++++++
我的內容
注意事項:
1. ./configure --enable-maintainer-mode --enable-ft2232_libftdi --enable-maintainer-mode --enable-ftdi
需要增加--enable-ftdi,以增加對ftdi的支持,openocd0.10版本貌似原生是沒有對ft2232接口的cfg文件,以網上提供的cfg文件運行openocd時,會提示不支持ft2232接口。
2.make時會報錯:get_usb_busses相關,實際上是賦值類型轉換引起的,編輯configure生成的Makefile,把-Werror刪掉就ok了。
3.編譯安裝完成后,可以找到OPENOCD_DIR/tcl/interface/ask100.cfg配置文件,用它來啟動:
openocd -f OPENOCD_DIR/tcl/interface/ask100.cfg
這時會報兩個錯誤:
一是提示沒有設置時鐘頻率,在配置文件中增加: jtag_rclk 500
二是提示沒有設置一個什么接口,記不清了,提示選擇有jtag和swi兩種,按提示在配置文件中增加針對jtag的設置
再次執行openocd -f OPENOCD_DIR/tcl/interface/ask100.cfg
成功。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。