- 博客(37)
- 资源 (8)
- 收藏
- 关注
原创 问题解决:import serial提示 ImportError: No module named serial
ImportError: No module named serial
2023-04-20 12:57:53
2616
1
原创 Ubuntu解决 The following signatures couldn‘t be verified because the public key is not available:
原因是缺少这个源的两个公钥,导致无法访问,只要把公钥加到我们系统中就行。Ubuntu在source.list中添加源后,提示。
2023-03-20 17:32:31
2629
原创 Makefile 编写教程(由简至难)
目录一、测试代码二、.c 文件与Makefile同级三、.c文件与Makefile不同级一、测试代码本文以将main.c add.c common.h三个文件编译成一个可执行文件为例,来讲解Makefile的编写。以下是每个文件的代码(很简单,测试用)1.main.c #include <stdio.h> #include "common.h"
2022-04-29 18:00:45
12525
原创 线/进程间同步互斥和进程间通信机制
目录一、线/进程间同步互斥1.互斥机制(1)互斥锁(2)自旋锁2.同步机制(1)信号量(2)条件变量二、进程间通信机制1.无名管道(pipe)2.有名管道(fifo)3.消息队列(本质:一个消息的链表)4.共享内存(最快的,效率最高的通信方式,因为操作的是同一个内存空间)5.信号量一、线/进程间同步互斥(1)互斥:一个进程或者线程是否可以获得资源的使用权(2)同步:对资源是否能够有序访问1.互斥机制(1)互斥锁pthread_mutex_init();//初始化锁(因为线程共享进程的资源,所以
2022-04-06 15:21:34
636
原创 C语言中voliate关键字的作用
一个变量用voliate关键字修饰,是要告诉编译器,这个变量的值随时可能发生变化,所以编译器每次都必须从变量对应的内存地址中获取该变量的值。voliate的常用方式:当一个变量表示某寄存器的值时,需要用voliate修饰,这样编译器就不会优化,所谓优化,就是每次去读取寄存器里面的数据,作为这个变量的值,问题在于,如果程序中已经改变了该变量的值,那么就会导致这个变量值跟寄存器里面的值不一样,从而导致冲突,用voliate就会避免这个问题,因为不会再去寄存器读取数据作为该变量的值了,而是直接去变量对应的内存地
2022-04-02 10:09:35
12408
原创 IMX6ULL 学习笔记(持续更新)
一、配置静态IP192.168.5.9 - 开发板IP192.168.5.10 - 笔记本主机IP192.168.5.11 - UbuntuIP二、搭建开发环境1.挂载NFS,方便传输文件2.配置交叉编译工具链,在~/.bashrc中添加工具链绝对路径,执行source ~/.bashrc 使配置生效三、构建Linux系统我们需要把定制好的Linux系统移植到开发板上,Linux平台上有很多开源的Linux系统构建框架,他们的作用是编译出文件系统、uboot、系统镜像等,比如Buildr
2021-12-13 10:16:56
4337
原创 MPI笔记:开发环境搭建及函数介绍
一、Linux下MPI环境搭建安装mpichsudo apt-get install mpich编译执行以下为mpi示例程序,文件名为 mpi.c 1 #include <stdio.h> 2 #include <string.h> 3 #include <mpi.h> 4 void main(int argc, char* argv[]) 5 { 6 int numprocs, myid, source; 7
2021-01-29 14:34:05
719
原创 解决问题:VScode 打印中文时终端输出乱码
问题: 如下图所示,终端打印中文时输出乱码原因:VScode终端是在调用 cmd.exe cmd 的默认编码格式是 GBK2312,而VScode的默认编码格式是UTF-8,把二者设置统一即可解决方法:将cmd 编码格式改为UTF-8在VScode 终端下输入chcp查看当前的cmd编码设置。如图,936 就是GBK2312的活动代码页2.UTF-8对应的活动代码页是65001,所以执行chcp 65001进行设置即可。在终端输入chcp 65001执行结果:3.再次执行程序,问
2021-01-29 11:39:08
2773
1
原创 比特位翻转程序
一、逆向反转0x01010011 反转为 0x11001010 #include <stdio.h> unsigned char reserse_value(unsigned char val) { unsigned char reserse_val; int i; for(i=0,reserse_val=0;i<8;i++) { reserse_val = (reserse_val << 1) | (val &
2020-09-03 15:35:06
1634
原创 问题解决:error: #error “Please port gnulib fseterr.c to your platform! Look at the definitions of ferror
一、遇到的问题:编译Hi518EV300 LiteOS 时遇到如下问题:lib/fseterr.c: In function 'fseterr':lib/fseterr.c:77:3: error: #error "Please port gnulib fseterr.c to your platform! Look at the definitions of ferror and clearerr on your system, then report this to bug-gnulib."l
2020-08-17 10:29:24
15915
11
原创 开发板通过NFS挂载到虚拟机
前言简介: NFS即网络文件系统,可实现同一网络下计算机之间的文件共享。作用: 方便开发。将虚拟机Ubuntu作为NFS的服务器,把开发板挂载到这个NFS服务器上;在Ubuntu中开发完成的文件只要放在指定目录下,在开发板上的文件系统中就能找到,不需要再传输或者烧写。一、保证开发板、电脑主机、Ubunt三者能够相互ping通如果ping不通,点击此处查看详细的网络配置教程二、查看开发板Linux内核是否支持NFS在Ubuntu中执行命令cat /etc/filesystems ,如下图。 若
2020-07-30 10:29:37
2960
原创 开发板、电脑主机、Ubunt三者能够相互ping通,同时UBuntu能连外网
(本人电脑连接WIFI,开发板和电脑通过网线连接)1.以管理员身份打开虚拟机,在桥接模式中,不能选择“自动”或者无线网卡,要选择有线网卡,你的有线网卡名字可能跟我不一样。点击确定2.在虚拟机 -> 设置 -> 选项卡 -> 网络适配器 中选择 桥接模式,如下如,点击 确定3.关闭Windows防火墙4.静态设置电脑主机、开发板、Ubuntu的IP,要求三者的IP在同一网段,网关和子网掩码相同。(1)电脑主机和Ubuntu的IP用图形界面设置即可,如图:Ubuntu20.0
2020-07-30 10:13:21
1154
原创 linux中find指令与grep命令的组合使用
grep HelloWorld -Rn * 在当前目录下的所有文件中查找“HelloWorld”字符串一、使用find与grep查找所有".h"文件(非组合命令)find /PATH -name "*.h"查找所有".h"文件中的含有"helloworld"字符串的文件(组合命令)find /PATH -name "*.h" -exec grep -in "helloworld" {} \;find /PATH -name "*.h" | xargs grep -in "hell...
2020-07-29 18:24:32
4320
原创 Hi3518EV300 交叉编译工具链安装
Hi3518EV300 使用 arm-himix100-linux 作为工具链工具链下载链接:链接:https://pan.baidu.com/s/1cfrynfS12aXpZU47X601mA提取码:v5xp工具链下载后,复制到Ubuntu的 Hi3516EV200_SDK_V1.0.1.0/osdrv/toolchain$ 目录下,如果没有“/toolchain”,自己创建一个解压tar -zxf arm-himix100-linux.tgz安装sudo ./arm-h
2020-07-28 17:57:10
581
原创 Linux SPI字符设备驱动开发(三)- 芯片中SPI主控制器驱动的注册
主控制器的驱动在Linux内核源码的 “inux-3.4.y/drivers/spi/spi.c”文件中,我们通过分析这个文件来学习一、spi_init(void)kmalloc
2020-07-24 17:38:29
646
原创 海思3518Ev200 SDK的内核与驱动编译
一、拿到SDK后,执行以下命令,安装相应软件,否则编译过程中还是会报错,要求安装这些软件sudo apt-get install ncurses-devsudo apt install lib32z1-devsudo apt install u-boot-tools二、首先要以非裁剪配置 hi3518ev200_full_defconfig 来编译一次内核,然后再进行相应裁剪,否则出错。进入...
2020-07-24 09:51:57
1342
原创 Linux SPI字符设备驱动开发(二) - SPI驱动框架
一、SPI驱动框架如图所示,SPI驱动框架分为用户层、核心层和硬件层。1. 用户层。 向上层开发人员提供接口,我们可以直接通过IO操作打开“/dev/spi”文件进行读写2. 核心层。 分为控制器层和从设备层。(1)控制器层。提供主设备,即芯片上SPI控制模块的注册。一般芯片上SPI驱动已经给我们写好了,嵌入式开发过程中,挂载好开发板的rootfs以后,就能在 /dev 目录下看到 SPI 相关的设备文件。我们自己需要做的,就是编写从设备层驱动。(2) 从设备层。比如我们要通过SPI接口外接一个传
2020-07-22 16:32:43
573
原创 Linux SPI字符设备驱动开发(一) - 驱动模块中的宏
一、驱动模块中的宏module_init(veb_a5_spi_init); //将veb_a5_spi_init()声明为模块的入口函数module_exit(veb_a5_spi_exit); // 将veb_a5_spi_exit()声明为模块的退出函数MODULE_LICENSE(“GPL”); // 模块的许可证声明。Ubuntu遵循GPL(通用公共许可证)协议,只有加上这个声明,我们写的驱动才能加载到内核中...
2020-07-22 15:38:35
322
原创 E: 无法定位软件包 ncurses 问题解决
在编译Linux内核(make menuconfig)之前,我们需要安装ncurses,但是安装过程中提示:E: 无法定位软件包 ncurses解决办法:系统可能识别不了 ncurses,如果这个装不了,就安装 libncurses5-dev,两个软件包的功能一样。 肯定是可以的,如下图。...
2020-07-22 10:03:53
7381
1
原创 Linux apt下载时出现问题:等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend
在Ubuntu用apt 安装软件时提示:等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend解决办法在命令行输入如下命令前置解锁即可sudo rm /var/lib/dpkg/lock-frontend然后就可以正常安装了,如下图:
2020-07-22 09:50:22
7528
2
原创 虚拟机Ubuntu、电脑主机、开发板三者通过 tftp 传输文件
本文默认开发板已经挂载好rootfs,以下是接下来的操作步骤:一、在虚拟机Ubuntu中搭建 tftp 服务器点此处查看tftp服务器详细搭建教程二、关于网络1. 情况一:网线连接交换机开发板、电脑都需要用网线与交换机相连,配置开发板、电脑、Ubuntu的 IP ,确保三者IP处于同一网段,比如都是“192.168.0.XX”,同时要跟交换机在同一网段开发板、电脑、Ubuntu相互可以ping通表示网络配置成功2. 情况二:使用路由器连接WiFi前提条件: 开发板、电脑都可以连接WiFi(
2020-07-17 17:33:40
1881
原创 Linux挂载TF卡出错:mount: mounting /dev/mmcblk0 on /mnt failed: Invalid argument
在 /dev 下查看TF卡识别的块设备发现有两个:mmcblk0 mmcblk0p1挂载时发现“mount -t vfat /dev/mmcblk0 /mnt” 失败“mount -t vfat /dev/mmcblk0p1 /mnt” 成功原因:mmcblk0是TF卡的名字,不是其分区的情况
2020-07-17 15:18:08
16619
1
原创 如何解决cmd 下ping、ipconfig 命令提示不是内部命令
原因:Windows系统下环境变量path不对,所以系统找不到命令解决办法:配置环境变量path1.右键点击计算机"此电脑",选择"属性"。进入下图,点击"高级系统设置":2.选择"环境变量:"3.双击"path"。(有的电脑大小写不一样,这个无所谓)4.进入如下界面后新建一个路径,把红框处的这个路径加上就行了,然后点击“确定”5.这时候打开cmd命令行再次输入“ping”或者“ipconfig”就可以运行了...
2020-07-15 17:27:18
1361
原创 在VMware15中安装Ubuntu20.04 优麒麟20.04 时卡死
试过了网上的所有方法,仍然不行,一直卡死。原先安装时内存一直选的4G,改成2G后就能安装了(我的电脑内存8G)
2020-07-15 16:23:51
1143
原创 Markdown更改字体、颜色、大小,设置文字背景色,调整图片大小设置居中
一、 更改字体、颜色、大小,设置文字背景色,调整图片大小设置居中二、 RGB颜色名对照表
2020-07-14 11:40:48
774
原创 Ubuntu、优麒麟Ubuntu kylin下tftp安装和使用
(非常详细)在Ubuntu、优麒麟Ubuntu Kylin 中搭建tftp服务器并与windows进行文件传输
2020-07-13 11:17:59
1131
Mavlink Generator : Mavlink消息生成工具
2022-10-28
SM4加解密算法C语言实现(亲测有效)
2021-07-14
AES加解密算法(C++实现)
2021-03-05
TCP 连接测试代码
2021-01-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人