<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ping_devil的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ping_devil</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ping_devil]]></copyright><item><title><![CDATA[ESP32 使用LOG溢出问题]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/122987416</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/122987416</guid><author>ping_devil</author><pubDate>Thu, 17 Feb 2022 17:07:02 +0800</pubDate><description><![CDATA[背景

初次接触ESP32，测试程序时发现中断中使用printf, ESP_LOGx（其中x表示对应log的日志等级，例如ESP_LOGI表示信息）会出现程序溢出。

解决策略

使用ESP_DRAM_LOGx或ESP_EARLY_LOGx

参考链接

https://blog.youkuaiyun.com/cnicfhnui/article/details/108372259


...]]></description><category></category></item><item><title><![CDATA[linux(ubuntu)下软件本地安装(以cutecom为例)]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/120846561</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/120846561</guid><author>ping_devil</author><pubDate>Tue, 19 Oct 2021 15:03:03 +0800</pubDate><description><![CDATA[背景：

在一些设备上，可能会因为没有网络或是其他原因，不能使用apt-get来安装软件
此时可能就需要把软件包拷贝到设备里面去安装
这里以cutecom的安装为例

cutecom源码下载：

搜索相应软件源码
下载链接：http://cutecom.sourceforge.net/
注意编译条件

CuteCom 0.22.0: Qt 4.1, CMake &gt;= 2.4.3
CuteCom 0.14.2: Qt 3, qmake or CMake &gt;= 2.4.3


这里我以cutecom]]></description><category></category></item><item><title><![CDATA[ubuntu下usb设备绑定为指定设备名及指定权限]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/118541018</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/118541018</guid><author>ping_devil</author><pubDate>Wed, 07 Jul 2021 10:17:43 +0800</pubDate><description><![CDATA[背景

一些场景下，存在多个usb设备，然后他们的插入顺序还不一样，这时候设备名字的不对应，可能会对程序运行产生影响。

查看厂商id及产品id

可以通过插拔的方式，输入lsubs命令查看
下方图片中的067b即为厂商id（idVendor），2303对应产品id（idProduct）


增加相关规则

到路径/etc/udev/rules.d/下，命名为xxx.rules(前缀可以任意命名)，在文件中添加对应命令

KERNEL=="ttyUSB*" , ATTRS{idVendor}=="067b"]]></description><category></category></item><item><title><![CDATA[解决远程桌面（VNC）卡顿问题]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/116146550</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/116146550</guid><author>ping_devil</author><pubDate>Mon, 26 Apr 2021 11:17:07 +0800</pubDate><description><![CDATA[背景

因为工作需要，一些场景使用远程终端以及接显示器不方便，也因此考虑使用远程桌面控制。
但不接显示器的情况下，远程连接会特别卡，网上查找，是因为不接显卡，显卡会降频什么的。

远程桌面环境搭建


可参考我之前所写的文章


通过VNC远程连接ubuntu桌面（多种客户端连接方式）


手机远程连接window界面或ubuntu界面


解决方法

可以从硬件或是软件上来处理

硬件

可以买个显卡欺骗器（虚拟显示器），然后插到相应设备上，让设备以为接了一个显示器，这样他就能全速运行了
参考链接：解决远]]></description><category></category></item><item><title><![CDATA[手机远程连接window界面或ubuntu界面]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/115331427</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/115331427</guid><author>ping_devil</author><pubDate>Tue, 30 Mar 2021 17:50:19 +0800</pubDate><description><![CDATA[背景

有些场景，可能用手机处理更方便。
例如一台设备装着ubuntu系统，然后这时候手头上没有鼠标、键盘或屏幕，只知道该设备的ip。这时候用手机远程连接，就同时解决了缺少的硬件设备问题。

服务端搭建

即要远程连接的设备，需要配置好服务端

window


安装下VNC Server，这个可以百度下怎么安装。下载链接：https://www.realvnc.com/en/connect/download/vnc/


安装好，打开软件，设置相应验证方式及密码



例如我设置验证方式为VNC密码


]]></description><category></category></item><item><title><![CDATA[笔记本电脑开热点]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/115327753</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/115327753</guid><author>ping_devil</author><pubDate>Tue, 30 Mar 2021 15:52:00 +0800</pubDate><description><![CDATA[设置ip这一步很重要，不设置的话，我这边出现能发现wifi但连接不上的现象，也出现能连接不能上网的现象
192.168.137.n有其特殊意义，换成其他ip就不行，具体的没去细究
我的VMnet8引用的ip是192.168.137.1。如果没有引用此ip，上面ip也可以设置成192.168.137.1


...]]></description><category></category></item><item><title><![CDATA[通过VNC远程连接ubuntu桌面（多种客户端连接方式）]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/115260752</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/115260752</guid><author>ping_devil</author><pubDate>Sat, 27 Mar 2021 10:26:57 +0800</pubDate><description><![CDATA[背景


有些时候一些设备不带显示器和键盘鼠标，我们来维护他，是通过ssh远程连接进行操作。


但可能有些维护需要有图形显示来操作，这时候再用ssh就不是很合适了。


我所遇的设备情况是，经常要自己接入显示器跟键盘鼠标，然后又受限于显示器是有线的，设备又需要移动调试，这就造成了很大的不方便（虽然可以外接电源带个小屏幕，但那对眼镜和腰考验许多）


于是考虑引用VNC来远程桌面实现调试。查找资料看还有RDP有此功能，但没细究，读者可以自行查找资料测试


VNC服务端设置

这里我打算连接的系统是ubun]]></description><category></category></item><item><title><![CDATA[j-flash烧写NXP的S32k1**系列单片机（jlink）]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/114966023</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/114966023</guid><author>ping_devil</author><pubDate>Thu, 18 Mar 2021 10:31:50 +0800</pubDate><description><![CDATA[背景

都通过jlink工具来烧写单片机
用编译器 下载程序，正常
用j-flash，配置上默认打开，只配置对应型号单片机，SWD下载方式，烧写异常（擦除都不能成功），小概率能烧写成功。

解决方法

查看相关单片机数据手册，发现需要一定转换序列来转换模式，查找结果如下。



即根据此说明，在j-flash中配置相应的转换序列。


其他：

其他单片机如果有烧写问题，也许可以像这样查找相应数据手册，看有没有需要写入相应序列。
欢迎指正错误


...]]></description><category></category></item><item><title><![CDATA[gitlab删除项目]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/113675487</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/113675487</guid><author>ping_devil</author><pubDate>Fri, 05 Feb 2021 09:11:57 +0800</pubDate><description><![CDATA[先打开一个项目，然后按以下流程执行

拉到最下面，点击Advanced的Expand



再往下拉有个Delete project，点击即可

再按以下方式执行即可

参考链接： https://www.pianshen.com/article/88201486692/


]]></description><category></category></item><item><title><![CDATA[vscode在不同电脑同步插件配置等]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/112387504</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/112387504</guid><author>ping_devil</author><pubDate>Sat, 09 Jan 2021 10:04:47 +0800</pubDate><description><![CDATA[上传插件及配置

打开vscode拓展，搜索sync或是Settings Sync,点击下载

按ctrl+shift+p，输入sync，可以配置sync相关参数，这里需要获取github的gist ID和Personal access tokens。
2.1 gistid获取：
登陆github，点击your gist



2.2 tokens的获取
回到主页，点击settings







填写参数



上传，ctrl+shift+p输出sync，点击上传。就能看到vscode界面下面显示一些s]]></description><category></category></item><item><title><![CDATA[ROS环境安装过程记录（Kinetic版本）]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/110954967</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/110954967</guid><author>ping_devil</author><pubDate>Fri, 11 Dec 2020 15:13:28 +0800</pubDate><description><![CDATA[整个安装过程参考链接：

ROS入门教程-安装并配置ROS环境（Kinetic 版本）

安装过程所遇问题：
1、Desktop-Full安装

命令：

sudo apt-get install ros-kinetic-desktop-full


问题：

"有一些软件包无法被安装。
如果您用的是 unstable 发行版，这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助：

下]]></description><category></category></item><item><title><![CDATA[#记录jlink烧写失败过程]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/110626651</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/110626651</guid><author>ping_devil</author><pubDate>Fri, 04 Dec 2020 10:09:57 +0800</pubDate><description><![CDATA[不知道什么原因导致jlink给单片机（S32K148）烧写程序，怎么也烧不进去。猜测是因为烧写的时候电平不稳，导致单片机锁住了。


打开j-flash软件，点击连接，一直出现Failed to connect。还有出现一些其他原因，如could not find core in coresight setup





后面通过按着复位键去连接，竟然意外能连接上了。不过要进行Erase chip,又出现了如下问题：



接着我尝试打开J-Link Commander，执行以下命令，意外就可以了（之前..]]></description><category></category></item><item><title><![CDATA[百度语音识别--RESTFul API C++ sdk(linux)]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/109963748</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/109963748</guid><author>ping_devil</author><pubDate>Sun, 22 Nov 2020 20:58:00 +0800</pubDate><description><![CDATA[1、安装必要的依赖，curl（必须带ssl） jsoncpp openssl
参考链接：
#安装libcurl
sudo apt-get install libcurl4-openssl-dev
#安装jsoncpp
sudo apt-get install libjsoncpp-dev

2、官方例程下载：
识别、合成 RESTful API C++ SDK（官方SDK）：
https://ai.baidu.com/sdk
SDK调用示例：
https://github.com/Baidu-AIP/sdk]]></description><category></category></item><item><title><![CDATA[linux添加属于自己的shell脚本路径（PATH）]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/109667454</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/109667454</guid><author>ping_devil</author><pubDate>Fri, 13 Nov 2020 09:02:55 +0800</pubDate><description><![CDATA[1、背景

自己写的shell脚本，随便放有些乱；不放到PATH路径下，命令只能在脚本所在路径下运行，不能像ls等系统命令可以在任意路径下使用。

2、路径的添加方法


路径设置参考链接：linux查看和修改PATH环境变量的方法


路径添加有很多种，这里选用在当前用户下添加路径，shell脚本命令只能当前用户使用，不影响其他用户。其他模式可以参考以上链接。


先在用户目录下创建一个bin文件夹(底下#表示注释)


#到用户目录,~表示用户目录
cd ~
#创建bin文件夹，也可以按自己喜好在指定位]]></description><category></category></item><item><title><![CDATA[Linux下的cd命令]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/109618407</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/109618407</guid><author>ping_devil</author><pubDate>Wed, 11 Nov 2020 14:05:35 +0800</pubDate><description><![CDATA[记录常用cd命令：

回到根目录： cd /
回到上级: cd …
回到上上级：cd …/…
回到上次访问目录：cd -


]]></description><category></category></item><item><title><![CDATA[优快云怎么转载别人的博客--转载]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/109329248</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/109329248</guid><author>ping_devil</author><pubDate>Wed, 28 Oct 2020 11:25:40 +0800</pubDate><description><![CDATA[转载自：优快云怎么转载别人的博客

        
                
                    
                        
                    
                     
  
  在参考“如何快速转载优快云中的博客”后，由于自己不懂html以及markdown相关知识，所以花了一些时间来弄明白怎么转载博客，以下为转载优快云博客步骤和一些知识小笔记。  参考博客原址：http://blog.youkuaiyun.com/]]></description><category></category></item><item><title><![CDATA[AB相编码器与正交解码，绝对值编码器--转载]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/109325580</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/109325580</guid><author>ping_devil</author><pubDate>Wed, 28 Oct 2020 09:06:35 +0800</pubDate><description><![CDATA[转载于：AB相编码器与正交解码，绝对值编码器

        
                
                    AB相编码器与正交解码，绝对值编码器： 
一、增量式编码器： 
欧姆龙的编码器一般为AB相增量式编码器，在输出方式上分为电压输出和集电极开路输出两种输出方式。其中集电极开路输出在采集脉冲是需要加一个上拉电阻。同时编码器还有一个Z相信号，即编码器机械零位信号，每当编码器转到机械零位，Z相输出一个脉冲，可用于矫正脉冲长时间的积分误差。 
二、正交解码： 
如果只是采集A相或]]></description><category></category></item><item><title><![CDATA[S32K1XX调试--irda红外通信]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/108880557</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/108880557</guid><author>ping_devil</author><pubDate>Wed, 30 Sep 2020 10:03:42 +0800</pubDate><description><![CDATA[1、背景

项目需要用到红外模块来通信，考虑到MCU自带irda功能，即确定使用irda通信来完成。
但芯片自带irda功能，官网、手册以及各个论坛均未找到配置irda流程，项目又比较赶，于是决定模拟时序收发。

2、时序
2.1  红外发

使用uart时序。原uart时序高电平，对应红外的时序为低电平；原uart时序低电平，对应红外产生38KHz的载波（根据红外型号，我这里是用到38KHz）,载波这里我用到占用比为50%的方波。

2.1 红外收

因为红外发送是使用uart时序，即接收也是uart时序]]></description><category></category></item><item><title><![CDATA[S32K1XX调试--S32K116的flash擦写程序移植]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/108681969</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/108681969</guid><author>ping_devil</author><pubDate>Sat, 19 Sep 2020 15:56:54 +0800</pubDate><description><![CDATA[1、环境

S32DS IDE

2、背景

NXP官方出的开发工具 S32KDS提供了图像化配置工具PE（Processor Export），所有外设可以在界面中配置，然后自动生成代码。
这样虽然方便了点，但个人感觉对学习不是很有利。操作起来方便，但对底层接触的就比较少，想看他底层部分，嵌套太多层，看起来很累。
所以我参考他们的寄存器版的程序，自己编写自己所需。但有些没有寄存器版本，例如flash的擦写部分就没有参考程序，所以我只能参考PE生成的程序进行移植。

3、调试过程


先找个官方基础例程，作为]]></description><category></category></item><item><title><![CDATA[S32K1XX调试--快速定位HardFault]]></title><link>https://blog.youkuaiyun.com/ping_devil/article/details/108680757</link><guid>https://blog.youkuaiyun.com/ping_devil/article/details/108680757</guid><author>ping_devil</author><pubDate>Sat, 19 Sep 2020 14:44:58 +0800</pubDate><description><![CDATA[1、背景

程序运行，发现程序跑飞到HardFault，但不清楚为什么会跑到HardFault中断处理函数去。

2、分析


要想知道为什么会跑到HardFault_Handler中去，就很有必要了解一下，程序上一条执行的是那条命令。


根据汇编指令可以定位上条指令，但如果对汇编指令不是很了解的话，那就很头疼了


根据单步运行也能实现定位，但如果程序量很大，又很杂，可能花费的时间就比较久些。


3、问题查找

提供一种不需要懂汇编指令的查找方法，方法如下：
在中断处理函数中插入以下代码，以及另外定义]]></description><category></category></item></channel></rss>