一、前言
最近將整個電腦格式化,改成了linux操作系統
希望這樣能讓自己在一個新的世界探索技術、提升自己吧~
win上的工具用多了,就不想變化了~
繼上一篇《ubuntu上安裝虛擬機遇到的問題(vmware坑了,virtual-box簡單安裝,在virtual-box中安裝精簡版win7)》
link:http://www.cnblogs.com/zjutlitao/p/5061917.html
遇到的在ubuntu上裝虛擬機坑之后,接下來又遇到了一個新的問題——
如何在在ubuntu上安裝jlink驅動,並嘗試給stm32或者nrf51822燒寫程序?
由於,網上無數個說不清的講解,由於很多講解都過時了,所以根本找不到相應的版本軟件,照着做的時候驢頭不對馬嘴~
鑒於此我將從下面兩方面行文,方便大家快速排錯~
1、先用簡單明白的語言講述正確的安裝方法
2、再用羅嗦的語言白話文我踩的各種坑
二、jlink驅動在linux上的安裝方法
2.1、首先,看你windows上keil中用的JLink的版本(我假設你是從win上轉過來的!)
如下:
發現我的keil5中的自帶JLink版本為:4.80g, keil4中自帶的版本是4.60a
2.2、接着,從segger網站下載與win上版本一樣(接近)版本的jlink for linux驅動
在https://www.segger.com/jlink-software.html頁面的最下面有:
點擊previous進入老版本頁面:
JLink for linux是從4.78a到5.10c的各種版本,卻沒有4.80g版本
如果你的windows上的Jlink版本可以在其中找到對應的for linux的版本是最好的了
如果像我一樣不能,就嘗試找一個稍微低版本並接近目標版本的下載安裝
我當時的選擇是:抱着試試看的想法,先下載4.80e試試~
2.3、最后,安裝DEB文件並測試行不行
在安裝之前你要保證更新了usblib等,這個在別人的介紹的文章中總是第一個提到,不知道怎么弄搜搜別人的看一眼就知道了
DEB比較好安裝,雙擊即可!
安裝成功之后——
會在/etc/udev/rules.d中多了個xxjlink.rules文件
會在/opt中安裝好SEGGER/JLink
然后,shell中轉到該目錄下,運行./JLinkExe程序
如果出現以下現象則表示成功(我當時用Jlink鏈接的是一個contex-m0內核的nrf51822芯片,采用SW模式,你若連接stm32可能會稍有不同)
三、遇到的坑,各位可以借鑒
3.1、讓你下載的東西下不到,最后把你帶暈
這里不點名是who了,這類的主要策略是這樣的——
1、首先update usb什么的;2、然后下載個4.22的版本,解壓,刪除一些東西,然后start;3、最后運行./JLinkExe然后出現設備信息
3.2、錯誤的方法和正確的交雜在一起,跟着做相當於冰火兩重天
主要步驟和上面類似,不過多了自己遇坑的講解
由於坑的講解部分沒有給讀者提前打個招呼,結果讀者也跟着進坑了!
這類的主要步驟是——
1、首先update;2、然后下載個貌似是當時最新版本的linux驅動,解壓、刪除、配置、安裝(說了一大堆);3、然后突然說用這個高版本的會把自己的山寨版的Jlink的固件弄壞;4、又講到如何給Jlink升級固件;5、最后將最簡單的答案告訴別人——下載個和win上相同的版本的就不會出現上面的問題了。。。
注:我的異常類隨筆里是安裝軟件、調試過程中遇到的稍微棘手的問題的總結
@beautifulzzzz 2015-12-21 continue~