- 博客(99)
- 资源 (17)
- 收藏
- 关注
原创 rk3568 linux sdk recovery buildroot “host-python-2.7.16“ compile failed
steps:
2024-09-02 14:52:28 1088 2
原创 rk3568 linux sdk buildroot error “Failed to build miniperl. Please run make minitest“
exit 1'steps:nullpage=1。
2024-08-30 19:20:47 540
原创 windows和office微软官方免费激活教程
微软提供了windows系统和office的官方免费激活,其实不用去买什么激活码,官方提供了激活方式,完全免费。
2024-08-08 09:09:33 3657
原创 ubuntu中禁止使用鼠标拖动来移动文件
这种方式有好处也有坏处,好处是移动文件方便了,坏处是误操作后会造成故障,尤其是ubuntu中,本身鼠标就特别灵敏并且操作不便,拖动一个文件后,整个环境都会发生变化,很有可能编译失败,然后各种找问题,索性直接禁止。windows和ubuntu中都可以拖动文件到其他路径,然后达到移动文件的目的。
2024-08-03 12:49:29 409
原创 ubuntu中挂载window硬盘分区
装了ubuntu和windows双系统后,可以直接在ubuntu中访问windows中的硬盘文件,但是需要挂载windows的硬盘。注意一定要区分硬盘的文件系统类型,否则你会发现挂载出错,变成只读文件系统,想写入文件提示错误。
2024-08-02 14:04:13 394
原创 R9000X安装ubuntu后没有声音问题解决
照着上面的步骤搞下来就可以升级到最新的内核了,我升级到6.9内核后重启以后就有外放声音了。如果有报错包依赖错误,执行 sudo apt upgrade可以解决。我买了这台机器后安装了ubuntu 23.10,其他驱动都正常,后来发现声卡没有外放声音,但是音量控制和耳机孔都是可以的。总结原因就是驱动有问题,需要升级ubuntu内核到6.7以上。
2024-07-20 00:18:03 267
原创 ubuntu如何彻底卸载android studio?
最新版的ubuntu已经使用snap进行软件管理了,我用snap-store安装android studio以后,在安装plugin的时候强制退出后,直接再也进不去了,而且重装snap-store和android studio都不行.
2024-07-17 18:24:02 429
原创 “sudo apt install libncurses5“ 失败找不到安装包解决
【代码】"sudo apt install libncurses5" find no package solution。
2024-07-10 09:49:46 359
原创 esp32 ESP-IDF vscode插件安装失败(host=‘files.pythonhosted.org‘, port=443): Read timed out.
5 重新安装后发现源已经换掉了。原因:pip安装源连接失败。处理方式:换成国内源。3 新建文件夹pip。
2024-03-15 15:34:28 368
原创 linux应用中获取命令行参数处理方式
**/errno = 0;break;case 'r':raw = 1;break;case 'v':return 0;case 'h':return 0;default:return 0;");if (!ts) {exit(1);int ret;if (raw)else。
2024-02-04 11:18:52 367
转载 Linux嵌入式kgdb调试环境搭建,gdb调试内核模块(转)
上篇博文介绍了应用程序调试工具 gdb + gdbserver, 那有没有调试内核的呢?没错, 就是本文介绍的kgdb, 当然早期有kdb, 后面kdb合并到kgdb了, 作为kgdb的前端, 后面我们会介绍, 而kgdb工具跟开发板通信支持kgdboc(串口)和kgdboe(网络),但新版内核只整合kgdboc, 网络被废弃了, 所以下文我们只介绍串口通信。
2024-01-31 17:29:59 591
原创 ubuntu解决问题:E: Unable to locate package manpages-posix-dev
例如我的版本代号为jammy,查看到确实包含了这个包,但是可以看到后缀有个multiverse的标志。想要在ubuntu里面安装manpages-posix-dev这个包,发现弹出错误。5 再次安装想要的库manpages-posix-dev,成功。2 去ubuntu包查询网址看看你的版本是否真的有这个包。上面的脚本显示版本代码未bionic。3 执行添加multiverse的库。1 查看当前ubuntu的版本。
2023-12-11 11:56:22 494
原创 protobuf c语言库 Nanopb的使用方法
产生的simple.pb.h,simple.pb.c文件就是可以拷贝进工程的文件。再加上原本的库文件pb.h, pb_common.c/.h, pb_encode.c/.h, pb_decode.c/.h文件,就可以正常使用了。protobuf有个开源c库,叫做nanopb,可以实现对protobuf的加密和解密。项目的主页写的很清楚,使用方法为编译.proto文件,然后把各个文件包含进工程就可以了。例如,编译simple.proto。
2023-09-20 17:09:11 1680
原创 使用vscode+clangd远程精准浏览linux kernel源码(原创)
vscode是一个编辑器,可以调用各种插件来完成更多高级功能,clangd是一个代码解析工具,是clang的一个子项目。vscode中集成clangd以后,就可以精准的查看代码的调用情况,因为clangd对整个编译过程进行了跟踪(使用compile_commands.json文件实现),对于linux kernel这种复杂的项目非常适合,放弃source insight吧,那玩意儿没啥用,一个宏定义你能找出来几百个定义,鬼知道哪个是实际的定义来源。
2023-03-31 13:27:59 6885 7
原创 TCP协议的滑动窗口和流量控制算法(转)
另外,Nagle 算法默认是打开的,如果对于一些需要小数据包交互的场景的程序,比如,telnet 或 ssh 这样的交互性比较强的程序,则需要关闭 Nagle 算法。那么,当发生窗口关闭时,接收方处理完数据后,会向发送方通告一个窗口非 0 的 ACK 报文,如果这个通告窗口的 ACK 报文在网络中丢失了,那麻烦就大了。接着,就重新开始慢启动,慢启动是会突然减少数据流的。这会导致发送方一直等待接收方的非 0 窗口通知,接收方也一直等待发送方的数据,如不采取措施,这种相互等待的过程,会造成了死锁的现象。
2022-12-19 14:15:35 606
原创 移植MQTT-C库(附源码)
移植文件里面主要包括了常见平台的socket接收和发送函数的封装,假如移植到自己的平台可能需要修改这个文件里面的代码,目前的移植是想要在visual studio里面移植,里面已经有了移植接口了。3 修改posix_sockets.h内容,虽然这个头文件是按照socket标准接口来调用的,但是win32的socket接口跟linux的接口有些不一样,例如close在win32里面是没有的,gai_strerror在win32里面没效果,win32需要调用WSAStartup函数。
2022-12-14 17:10:36 3276 7
原创 vscode远程调试Linux CUDA程序
2 使用remote-ssh登陆到远程的linux服务器,登陆以后看看安装的插件,需要在远程linux服务器也同时安装插件。确保提到的三个插件在远程端是可以用的。3 确保在远程linux服务器已经安装了cuda编译器,没有装的话点下面的链接,输入命令 nvcc -V查看安装情况。4 新建一个目录用来测试,例如~/my_cuda,用vscode打开此目录。1 本地安装插件:remote-ssh,Microsoft。点击CUDA调试按钮就可以运行了。把窗口切换到test.cu,
2022-09-13 17:04:52 3079 5
原创 linux 字符驱动完整框架(poll,async,waitqueue,nonblock等)
一个linux内核驱动的完整框架,包含了能遇到的大部分内容,例如timer, poll, async, waitqueue, nonblock等等,不过基本上没啥大用,就是用来熟悉基础的,正常的驱动不太会这么简单。后面还包含了makefile,直接在ubuntu上都可以编译运行。......
2022-08-31 15:36:01 361
转载 fft的通俗解释
An/(N/2)*cos(2*pi*Fn*t+Pn),即2*An/N*cos(2*pi*Fn*t+Pn)。50Hz信号的幅度为:384/(N/2)=384/(256/2)=3;可用函数atan2(b,a)计算。幅度为192/(N/2)=192/(256/2)=1.5。一点n(n从1开始)表示的频率为:Fn=(n-1)*Fs/N;按照我们上面的分析,Fn=(n-1)*Fs/N,我们可以知道,每两个。
2022-08-22 11:26:42 716
原创 linux ubuntu下带GUI的网络和串口调试助手
mNetAssist这个工具在ubuntu下可以运行,是个带界面的tcp调试工具。更具体的使用参考:Ubuntu网络调试助手mNetAssist的安装以及解决无法打开运行的问题_GritYearner的博客-CSDN博客_ubuntu网络调试助手
2022-07-13 18:48:22 11116
原创 arm linux游戏手柄(joystick)驱动移植
参考了如下经验:Linux系统中使用Xbox360手柄 - 知*行 - 博客园 (cnblogs.com)使用BlueZ连接蓝牙手柄_Dokin丶的博客-CSDN博客_蓝牙手柄驱动编译内核后可以在/dev/input中生成js0设备od /dev/input/js0有数据
2022-07-08 14:41:18 2139
原创 JLINK V10 V11固件修复
先去我的资源里面下载bootloader和app固件文件。步骤:1 PC上安装JLINK V4.9工具(貌似不能使用太高版本的工具,否则有问题)2 打开j-flash v4.9,新建个工程,按照如下操作:2.1 target interface - 选swd, speed可以选auto selection2.2 options - project setting - cpu - device 中选择NXP LPC4357_M42.3 t......
2021-10-26 15:31:52 13503 12
原创 二代身份证读写器原理及开发
身份证读写器的作用就是从身份证中读取身份信息(例如姓名、民族、身份证号等),然后显示或者传输给其他模块使用。功能框架如下:功能框图说明:1 业务模块。负责向安全模块发送命令,操作安全模块进行对应的操作,例如读固定信息等,可以是pc或者mcu。2 安全模块。负责通过业务接口(uart、usb)接收业务模块的命令,然后将业务命令解释成射频命令,通过射频接口(iic)发给射频模块,射频模块返回卡片加密数据给安全模块,安全模块解码后返回业务接口响应给业务模块。3 射频模块。负责直接跟二代证的射频
2021-07-08 09:17:37 2946
原创 GitLab 使用Tortoisegit询问“git@192.168.1.18‘s password“问题解决
现象如下:使用TortoiseGit去拉本地GitLab上建立的项目时,一直提示输入密码(如下图),这个密码又没有指定用户名,就算你输入你用户名的密码也是失败。但是很诡异的是,你使用git bash又是能正常操作的,证明跟服务器的通信时ok的,例如如下的bash命令是正常运行的(将网址换成自己的项目网址):ssh -vT git@192.168.0.108解决方法:https://stackoverflow.com/questions/8846972/tortoisegit-askin
2021-04-01 17:33:35 12931
原创 qt编译Qxlsx模块及安装
主要参考如下地址:https://www.icode9.com/content-4-715555.html注意的点:1 把下载的代码复制到根目录下,路径不要有什么空格啥的,否则你会发现perl老是执行失败
2021-03-12 16:25:15 1269
原创 printk在应用层的设置方式及读取内核打印信息的方法
如果 printk 中没有加调试级别,则使用默认的调试级别。注意,调试级别和格式化字符串之间没有逗号。当前控制台的各打印级别可以通过下面的命令来查看。# cat /proc/sys/kernel/printk4 4 1 7上面的信息表示控制台当前的打印级别为4(KERN_WARNING),凡是打印级别小于等于(数值上大于等于)该打印级别的信息都不会在控制台上显示;printk的默认打印级别是4,即printk中如果不指定打印级别,则使用4的打印级别;控制台能够设置的最高打印级别为1(KERN_ALER
2021-03-05 17:33:40 920
原创 wait_event_interruptible_locked的使用方法
wait_event_interruptible_locked() interfaceNew wait_event_interruptible{,_exclusive}_locked{,_irq} macros added.They work just like versions without _locked* suffix but require thewait queue's lock to be held. Also __wake_up_locked() is now exported.
2021-03-02 17:04:14 547
原创 linux gcc编译错误:undefined reference to `aio_error‘解决方法
#include <aio.h>void aiow_completion_handler(sigval_t sigval){ int ret; struct aiocb *req; req=(struct aiocb *)sigval.sival_ptr; if(aio_error(req) == 0) { ret=aio_return(req); .
2021-03-01 14:01:30 1260
原创 windows下tcp接口winsock使用demo
#define WIN32_LEAN_AND_MEAN#include <winsock2.h>#include <Ws2tcpip.h>#include <stdio.h>// Link with ws2_32.lib#pragma comment(lib, "Ws2_32.lib")#define DEFAULT_BUFLEN 512#define DEFAULT_PORT "27015"int __cdecl main() { /.
2020-12-04 16:00:21 211
原创 keil编译链接时出现runtime error R6002 -floating point support not loaded的问题解决
keil5很频繁的出现这个错误,以前keil4基本上没有出现过。每次出现这种情况,除了重装,没有什么好办法。因为都是用的网络上的key,其实我也一直在怀疑官网是不是做了什么手脚。公司这次需要断网使用keil5,防火墙里面禁止掉keil5的联网,貌似就没有出现这个问题了,已经使用了好几天了,八成就是这个问题了,以前有可能每天都要重装好几次。...
2020-09-09 16:13:31 9444 3
原创 cortex内核hardfault错误的定位方法实战
单片机一般是cortex-m3之类的内核,其实其他内核也是一个道理。hardfault错误一般是操作了不该操作的内存,或者执行了不该执行的动作,例如一个非法的函数指针,你非要去调用。调试这个错误的原理是:发生hardfault错误后就会进入相应的hardfault中断,进入中断前会在被中断的地址执行压栈动作,将当时的工作环境(就是系统的一些寄存器,r0,r1,r2,r3,lr,pc,r12)压进堆栈,将lr赋值非法数据,然后跳到hardfault中断执行中断服务程序。那么只需要将压栈后的lr读出来,
2020-07-11 16:44:17 1481
原创 BAT脚本重定向所有输出到某个文件的方法
最近特么的遇到个问题,需要根据命令返回的信息判断这个命令是否执行成功,思路就是把所有的信息重定向到一个文件里面,然后查找某个字符串,可是因为这个命令后面有一堆的信息,重定向如果加在命令后面就只能获取最近的一条信息,完鸡巴蛋。例如:fastboot.exe writeKeys会有如下的信息:Opening COM25...write KEYS...FAILED (remote: keys exi...
2020-07-07 10:00:29 16623 2
原创 JNI中FindClass查找类失败的问题
例如有如下的native代码用来寻找类,然后注册接口函数:static const char *classPathName = "android/device/PiccReaderNative/PiccReaderNative";static int registerNatives(JNIEnv* env){ jclass clazz; clazz = env->FindClass(classPathName); if (clazz == NULL) {
2020-06-28 14:08:12 1809
原创 CMake arm linux交叉编译CMakeLists.txt示例
set(tool_path /usr/local/arm/opt/EmbedSky/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf)set(CMAKE_C_COMPILER ${tool_path}/bin/arm-linux-gnueabihf-gcc)set(CMAKE_CXX_COMPILER ${tool_path}/bin/arm-linux-gnueabihf-g++)set(CMAKE_CROSSCOMPILING TRUE..
2020-06-11 18:00:14 2709
原创 QEMU搭建ARM linux开发环境
qemu可以用来模拟嵌入式的开发板,很多的嵌入式开发技巧完全可以抛开开发板来做实验,内核就更加方便了。主要参考了:https://www.jianshu.com/p/94833e841742但是完全按照这个来会有各种问题,一般情况下都是busybox和kernel的版本问题,我按照原来的博客的版本搞过一遍,各种报错,后来索性瞎几把整了。主要有如下几点不一样:1 busybox原来的...
2020-03-25 19:50:49 2869
原创 linux shell基本语法和调试技术
shell的语法跟c很多不一样,稍有不慎就各种问题,这里有个大神的调试技术总结,我也写了响应的代码验证。原址:https://www.ibm.com/developerworks/cn/linux/l-cn-shell-debug/ 1 #! /bin/bash 2 :<<EOF 3 inf...
2020-03-13 16:27:26 169
keil Compiler Version 5:ARMCompiler-506-Windows-x86-b960
2024-08-29
Orcad10.3 免安装精简版+可用lic
2024-07-02
Microsoft.HEVCVideoExtension-2.1.451.0-neutral
2024-02-18
nxp nfc天线pcb匹配参数设计工具AntennaTool
2020-12-17
易兆微yc1021源码
2019-03-22
嵌入式二维码显示方案,附源码
2018-04-11
unicode转gb2312码表
2018-04-02
source insight 4.0最新版加破解文件
2017-10-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人