openOCD在Ubuntu上的安装

环境

Ubuntu18.04

安装openOCD

参考:https://www.rt-thread.org/qa/thread-421278-1-1.html

安装依赖
sudo apt-get install build-essential pkg-config autoconf automake libtool libusb-dev libusb-1.0-0-dev libhidapi-dev
sudo apt-get install libtool libsysfs-dev

克隆源码
git clone https://github.com/ntfreak/openocd.git
编译安装
sudo ./bootstrap
sudo ./configure --enable-jlink --enable-cmsis-dap --enable-stlink
sudo make
sudo make install
一键烧写脚本

将以下代码保存为脚本,并将hex文件放在本脚本的目录下

sudo openocd -f /usr/local/share/openocd/scripts/interface/cmsis-dap.cfg -f /usr/local/share/openocd/scripts/target/stm32f4x.cfg -c "init" -c "reset init" -c "program ./NB_IOT.hex verify reset exit"

运行烧写脚本

chmod +x daplink.sh
./daplink.sh

安装minicom

参考:https://blog.csdn.net/u010164190/article/details/106788655

sudo apt-get install minicom
sudo chmod 777 /dev/ttyUSB0
sudo minicom -s
找到:Serial port setup选项, 配置/dev/ttyUSB0设备.
# minicom -c on //可显示颜色
 
//帮助
Ctrl-A + Z
l(L)键: 输出log到文件
q键:退出终端
S键:发送文件到目标系统中;
W键:自动卷屏。当显示的内容超过一行之後,自动将後面的内容换行。这个功能在查看内核的啓动信息时很有用。
C键:清除屏幕的显示内容;
B键:浏览minicom的历史显示;
X键:退出mInicom,会提示确认退出。

查找设备文件

参考:http://www.mikewootc.com/wiki/linux/usage/ubuntu_ttyusb_number_vs_device.html

ls -lh /dev/serial/by-id/

这样也能看出个大概, 只是不知道当有两个一样的物理设备时, 这种方法会不会有问题. 至少在我的测试中是好使的, 因为我手里的几个串口都是不同的厂商出的, 所以容易区分.