- 博客(45)
- 资源 (5)
- 问答 (1)
- 收藏
- 关注
原创 【LVGL】给SquareLineStudio导出的Arduino工程添加物理按键
这里举个例子,按下【D0】物理按键,假如选框在【add】按钮组件上,那么再按一下【D1】按键,就会实现value值的增加。再按下【D0】选框在【sub】按钮组件上,那么再按一下【D1】按键,就会实现value值的减少。因为这里用的屏幕是非触摸屏, SquareLineStudio导出的代码默认是带有触摸部分的,这里不需要,可以删除该部分。下面使用的代码,是上篇文章中导出的界面代码,这里需要给界面添加可操作性,增加物理按键。主要是修改按键的事件,根据按键的值实现对应的功能,下面是需要增改的函数。
2025-01-01 21:58:54
1253
2
原创 用SquareLine Studio轻松实现ESP8266运行LVGL图形化界面
LVGL 作为一款功能强大的开源嵌入式图形库,为资源有限的嵌入式设备带来了流畅美观的图形界面体验。然而,LVGL 的传统开发方式需要编写大量代码,对于初学者来说门槛较高,也增加了开发周期。而 SquareLine Studio 的出现,则完美解决了这些问题,为 LVGL 开发带来了以下优势。
2025-01-01 16:02:49
1406
原创 动态链接函数(dlopen/dlsym/dlclose)使用总结
动态链接函数操作(显式运行时链接)主要包含头文件dlfcn.h(/usr/include/dlfcn.h),涉及的常用的函数主要有dlopen,dlysm,dlclose。主要作用是从动态库中加载函数到程序中使用,好处是编译的时候不需要链接动态库。
2023-10-24 21:19:19
3294
原创 Virtio-user使用简介(vfio-pci驱动安装和网卡绑定)
DPDK支持几种方式让用户空间的报文重新进入内核协议栈(这种dpdk和kernel直接通信的路径叫做exception path),例如tap/tun设备使用,kni,Virtio-user。这里主要讲Virtio-user使用,Virtio-user是virtio PMD的虚拟设备,启动DPDK virtio-user,系统就会创建一个内核态的虚拟设备tap。下面介绍Virtio-user的使用和使用前驱动的安装。。
2023-09-27 22:35:33
1138
2
原创 逆向入门及实战
从上章节介绍逆向调试工具有多种,这里以IDA Pro为例介绍其大概使用,进行逆向的入门学习。交互式反汇编器专业版(Interactive Disassembler Professional)人们常称其为IDA Pro,或简称为IDA。是最强的一个静态反编译软件,是一款交互式的,可编程的,可扩展的,多处理器的,交叉Windows或Linux、MacOS平台主机来分析程序,即跨平台能力。被公认为最好的花钱可以买到的逆向工程利器。
2023-09-27 22:24:59
1598
原创 使用C语言调用libcrypto.so实现AES的CFB模式文件加解密
最近工作上填了一个坑,关于C语言调用openssl是AES加解密接口解python的加密文件,遇到无法解密的问题。在这里做一个总结,以备后面自己又忘记踩过的坑。
2023-04-24 12:58:49
937
原创 quilt基本使用
qulit是制作补丁和管理的工具。比如想用开源代码做一些项目,我们如果直接在开源代码里进行修改,等到下次开源代码升级后,我们再将我们修改的部分转移到新版本的开源代码中就需要进行大量的新旧版本对比工作。那如果我们将这些改动使用补丁管理起来,待开源代码升级后,直接将这些补丁打到新源码中即可。
2022-11-28 22:54:18
1595
转载 CentOS各版本区别(DVD/Everything/Minimal/NetInstall等)
CentOS官网下载CentOS系统镜像时,会有三个镜像版本可供选择,分别是CentOS ISO,Everything ISO,Minimal ISO,除了这三个版本,还有其他几个版本都有什么区别呢?
2022-09-17 23:47:51
11475
原创 计算机中浮点数存储方式
计算机中存储小数有两种方式,分别是定点数和浮点数。1. 定点数定点数就是小数点的位置固定不变的数,小数点的位置通常有两种约定方式:定点整数和定点小数。定点整数就是纯整数,因为小数点在最低有效数值位之后。定点小数的小数点在最高有效数值之前。这里对定点数暂时不做详解。2. 浮点数2.1 简单概述计算机中小数采用浮点数方式保存,采用工业标准IEEE754标准。一个浮点数的表现形式如下:(−1)S2E(b0b1b2b3...bn−1)(-1)^S2^E(b_{0}b_{1}b_{2}b_{3}...
2021-05-31 00:40:53
1914
原创 初步理解三级缓存Cache
我是做C语言方面的开发工作,进入公司以来,经常需要做性能优化方面的工作,被一些性能问题给折磨的要si要活的。在想,在不允许替换更强的cpu前提下,到底怎么样才能发挥CPU的最强性能呢?这个问题一直困扰我,直到有一天不知道在哪听到还是看到一句话(大概是这个意思):“如果把cache优化的差不多了,那么性能就几乎没有什么可优化的空间了。”听到这句话后,文化程度不高的我立马拍手叫绝,惊呼WOCAO!一下引起我的好奇心,到底什么是Cache呢?首先要知道Cache这个词怎么理解,Cache百度百科给的定义.
2021-03-30 20:49:04
6044
7
原创 SourceInsight基本使用
一、创建工程二、添加符号表三、窗口布局/配置1、窗口布局2、行号3、辅助线,编辑选项4、背景色5、字体大小6、编码四、阅读/编辑1、快速定位指定位置2、函数调用上下文3、查找工具4、编辑功能五、快捷键*外挂(插件)一、创建工程1、打开软件后的默认界面:2、准备创建工程:在菜单栏中点击Project > New Project ,然后会出现对话框如下,分别为当前工程名称和后期该工程数据文件的位置,工程名建议起一个...
2021-03-19 00:07:48
19911
2
原创 PyGame小游戏——贪吃蛇
游戏源码:https://gitee.com/angie1011/Adapted-game-FlappySnake游戏下载:https://wwa.lanzous.com/iljswlo3egd前段时间编写的pygame小游戏,操作比较简单,方向键和空格键(确定/加速)。里面涉及到音乐的控制,按键的检测,以及图片方向的操作。有兴趣的朋友可以下载然后继续改造更多的玩法。欢迎超越我的最高分~~~相关的pygame知识点(持续更新):http://note.youdao.com/notes
2021-02-14 20:44:48
297
原创 VMware虚拟机配置
现有一个需求就是期望虚拟机中的ip是不变的,且能够访问互联网,就有如下网络图:虚拟机使用的是VMnet8的网卡,而VMnet8不能够上网。关键是让VMnet8网卡能够访问网络,通过无线网卡共享网络到VMnet8即可让虚拟机能够访问网络则虚拟机就可以访问网络了。注意VMnet8的虚拟网络设置情况。然后在虚拟机的网络连接设置好自定义的虚拟网络另外:有时候使...
2019-03-02 16:50:29
983
1
原创 Ubuntu 16.04 LTS下安装docker
1、系统要求Ubuntu操作系统对Docker的支持十分成熟,可以支持包括x86_64、armhf、s390x (IBM Z)、ppc64le等系统架构,只要是64位即可。Docker目前支持的最低Ubuntu版本为14.04 LTS,但实际上从稳定性上考虑,推荐使用16.04 LTS或18.0.4 LTS版本,并且系统内核越新越好,以支持Docker最新的特性。用户可以通过如下命令检查自己...
2019-01-26 15:56:18
760
原创 su: Authentication failure 问题
这种问题可能是没有为root权限模式设置密码的问题,如图,通过sudo password root命令来为root权限模式设置密码即可进入
2019-01-26 14:24:33
2254
转载 进程和线程选择问题
原文:https://blog.csdn.net/wujiafei_njgcxy/article/details/77098977 什么时候用多线程?什么时候用多进程?需要频繁创建销毁的优先用线程原因请看上面的对比。这种原则最常见的应用就是Web服务器了,来一个连接建立一个线程,断了就销毁线程,要是用进程,创建和销毁的代价是很难承受的需要进行大量计算的优先使用线程所谓...
2019-01-20 14:46:36
462
原创 linux ubuntu 的zlib安装命令
zlib的命令安装就三条,依次输入执行,简单粗暴:sudo apt-get install rubysudo apt-get install zlib1gsudo apt-get install zlib1g.dev
2018-09-23 22:37:28
6711
原创 vim相关配置
设置默认主题在/usr/share/vim/vim73路径中看后缀为.vim是默认的主题色,然后在/etc/vim/vimrc中添加一行colorscheme <主题颜色名字>即可设置颜色主题。 相关配置命令set nu #设置显示行号 ...
2018-09-22 23:03:24
261
原创 修改Linux时间为网络时间
在修改这里主要使用到命令有date和ntpdated,主要是使用date来查看当前的时间,使用ntpdate来设置网络时间。ntpdate本地可能没有,那就需要先下载ntpdate模块。下载ntpdate命令:sudo apt install ntpdate等安装好之后,依次按照如下输入命令设置:cd /usr/share/zoneinfo/Asia //进入到...
2018-09-22 20:44:39
1122
转载 解决windows版本python下没有tkinter库问题
假设您在Windows上并且还安装了常规Python发行版(相同版本的嵌入式发行版),要在嵌入式发行版中安装Tkinter,您可以从常规Python发行版中复制以下文件: tcl folder to embedded_distribution_folder\ (root folder of the embedded distribution) tkinter folder (whi...
2018-08-26 01:08:46
11710
4
原创 python爬虫系列(3):使用Selenium和BeautifulSoup获取12306一个月内所有车次车票情况
首先针对标题说明一下,本次的获取数据是指定出发地和目的地之间的车次,不是整个网站所有车次。在此操作之前,请确保自己的相关的库都已经安装完全,这里可没有教安装库的方法哦~~~~好的,往下走,这次的目标网页是 https://kyfw.12306.cn/otn/leftTicket/init,查询12306余票情况,老套路打开浏览器的开发者模式。因为这次使用的是Selenium控制浏览器模拟人为点...
2018-08-12 02:16:43
1338
原创 python爬虫系列(2):分析Ajax 爬取搜狗高清壁纸
这次我们来分析一下Ajax(至于Ajax是什么意思请自行百度了,这里就不过多解释),爬取一些高清壁纸,等待下载到本地之后,然后我们再慢慢的筛选这些壁纸。那么这次的目标就是搜狗壁纸,啥1280*720的,1366*768的,1920*1080的统统拿下,先看一下本次目标URL :http://pic.sogou.com/pics/recommend?category=%B1%DA%D6%BD&a...
2018-08-05 22:23:45
1331
原创 python爬虫系列(1):使用python3和正则表达式获取猫眼电影排行榜数据
简述这次打算写一个爬虫系列,一边也想好好总结巩固学习的知识,一边做总结笔记,方便以后回忆。这次我们使用Python3和正则表达式来爬取一个简单html页面信息,就从猫眼电影的排行榜单开始吧。如果读到这篇文章的是位大神,期望您能不吝赐教,指正错误,如果您是小白,咋们可以一同探讨学习,共同进步。下面咋们开始.....分析首先使用浏览器登录到猫眼电影页面,点击上面的“榜单”字样,下面可以...
2018-07-31 21:48:08
1212
原创 mysql配置文件
[mysql]# 设置mysql客户端默认字符集default-character-set=utf8 [mysqld]#设置3306端口port = 3306 # 设置mysql的安装目录#defaults-file=E:/software/mysql-8.0.11-winx64/my.inibasedir=E:/software/mysql-8.0.11-winx64# 设置mysql数据库的数...
2018-07-14 23:46:29
376
原创 linux和windows查看文件的MD5值计算
linux:tj@power:~/Server/FileGet$ md5sum FileGet.txt625ed04c636b98fd903ba11565ab1939 FileGet.txtwindows:G:\python\project\socket>certutil -hashfile testTransFile.txt MD5MD5 哈希(文件 testTransFile.txt)...
2018-07-08 16:41:21
2443
原创 Python PyQt5实现十六进制字符流的校验和计算
# -*- coding:utf-8 -*-'''使用了标签,编辑框,按钮控件,使用了水平和垂直,在按下“计算”按钮之后进入计算方法内进行计算'''__author__ = 'TangJie'# 导入模块from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QHBoxLayout, QPushButton, QLine...
2018-06-10 22:00:51
1870
原创 通过一些小项目来学习python
最近开学习python,被它的魅力所吸引,是一门几乎全能型语言,感觉再不多多少少学点python就被码农界淘汰了,所以从动手敲开始,每次练习的一些项目放在gitHub上:https://github.com/Angie1994/PythonPetProject如果您有幸看到也想分享你的解题方法,也可以在相应的文件夹内增加一个文件,命名为xxxxx2.py,一起操练起来!!!...
2018-04-18 23:56:12
1441
原创 C语言 使用数组代替switch分支语句降低圈复杂度
在一些公司使用C语言开发,对于圈复杂度有一定的要求,其中switch就是造成高圈复杂的原因之一,这里分享一种方法降低圈复杂,使用数组代替switch,直接上代码,代码简单明了,如果发现代码中有问题或者疑惑可以提出来一同讨论。在实际的应用中需要自己去摸索,根据不同的场景,数据结构(结构体)会有所不同。#include <stdio.h>#include <string.h>...
2018-02-27 22:52:11
3366
原创 华为虚拟机eNSP 云设备绑定信息选项中没有本地物理网卡 问题
问题:在右击云设备->设置->绑定信息 中,没有本地网卡的选项解决方法:卸载更新winPcap即可
2018-02-26 13:06:11
12578
3
转载 什么是网关,网关的作用
当一个数据包从主机发不出去的时候,这时候主机会选择将数据包从网关发送出去,就体现了网关的重要性,如果网管是一个具有路由功能的IP地址,则这个数据包就会从该网关发送到具有路由功能的该IP地址...
2017-11-01 19:36:45
1159
原创 浅谈MAC
什么是MAC地址、什么是MAC表、什么是MAC帧?1)MAC地址:MAC地址又称为硬件地址或者物理地址,指的是局域网中的每一台计算机中固化在适配器的ROM中的地址,第二层数据链路层则负责 MAC地址,一个主机会有一个MAC地址,而每个网络位置会有一个专属于它的地址。MAC地址由48位二进制(6个字节)组成,采用十六进制表示。其中,前三个字节是由IEEE的注册管理机构RA负责给不同厂家分配的代码(高位
2017-09-10 13:59:53
2174
1
转载 FAT16文件系统结构简述
近一个礼拜为解决项目中的一个BUG而学习了一点新知识。大致总结出来和有兴趣的朋友分享学习一波。这个 BUG是这样的,当系统将采集到的数据存到SD卡中时,未知问题导致单片机卡死在写数据到SD卡过程中某个段点,超过看门狗喂狗时间,最终导致整个系统重启。在本系统中写数据到SD用到了FAT文件系统相关知识,想要找到代码中的BUG第一步当然是了解这个FAT文件系统是怎么回事。所以我决定重学FAT文件系统。
2017-01-08 00:39:18
10862
原创 阅一道简单程序,了解多线程编程;
#include <stdio.h>#include <unistd.h>#include <pthread.h>#include <stdlib.h>int i=0; //定义一个全局变量,看2个线程之间都引用该变量,对该变量的影响void* mythread1(void* d) //创建第一个用户线程程序{
2016-07-26 19:34:25
488
转载 Linux中部分signal信号量意义
SIGABRT由调用abort函数产生,进程非正常退出SIGALRM用alarm函数设置的timer超时或setitimer函数设置的interval timer超时SIGBUS某种特定的硬件异常,通常由内存访问引起SIGCANCEL由Solaris Thread Library内部使用,通常不会使用S
2016-07-24 08:33:58
928
原创 让Linux中的gedit变为你的编程利器!!!
在使用了一段时间的Linux后,一直使用终端和VIM来编辑程序、编译程序,一些前辈长时间使用会觉得顺手,因为使用终端可以摆脱鼠标,完成鼠标可以完成的几乎所有的操作。但是一些朋友初次使用Linux还是不能适应这样的界面,还是想能够和Windows一样,有个编译环境,于是我也在网上搜索了一些参考意见,整合了一下,配置了一个gedit编译、编辑、运行结合一体的编程环境,下面和我一起来配置吧:1、...
2016-07-23 20:54:13
38046
3
原创 C语言指针定义变量方式
用变量a给出下面的定义:1、 一个整型数;inta;2、 一个指向整型数的指针;int*a;3、 一个指向指针的指针,它指向的指针是指向一个整型数;int**a;4、 一个有10个整型数的数组;inta[10];5、 一个有10个指针的数组,该指针是指向一个整型数的;int *a[10];6、 一个指向有
2016-07-15 23:41:05
6138
oled12864超长文字滚动显示源码
2023-04-01
csv切分,文本分割器
2019-08-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人