- 博客(15)
- 资源 (20)
- 收藏
- 关注
转载 解决国内 github.com 打不开的最最最准确方法———————————————— 版权声明:本文为博主原创文章,遵循 CC 4.0
打开网站 http://tool.chinaz.com/dns/,在A类型中填写github.com,再点击监测按钮。打开电脑文件C:\Windows\System32\drivers\etc下的host文件。5. win+R 打开cmd 命窗口,执行命令ipconfig/flushdns。ithub.com经常打不开,无法访问。6. 再次访问github.com是不是就能打开了。在host文件的最后一刚加入刚才复制的IP。复制下面任意一个ip。
2024-01-24 20:07:00
152
1
转载 linux编译jsoncpp
jsoncpp是一个 C++ 库,用于实现json格式的序列化和反序列化,完成多个数据对象组织成为json格式字符串,以及将json格式字符串解析成得到多个数据对象的数据。判断某个键是否存在,bool Json::Value::isMember(const char *key) const;判断某个键的类型,bool Json::Value::isString(const char *key) const;得到Value中的所有键,Json::Value::getMemberBames() const;
2024-01-12 18:07:52
232
1
原创 【dbus-cxx】libsigc++ 和 dbus-cxx 在 Ubuntu 中的编译和配置
编译需要添加指令pkg-config --cflags --libs dbus-cxx-2.0 , 并添加shell 环境变量指定libsig++ 和 dbus-cxx的lib位置。解压之后执行./configure --prefix=$PWD/__install,如果是交叉编译,需要加上--host=xxxx。下载源码 git clone https://github.com/dbus-cxx/dbus-cxx.git。DBUS-CXX也是建议看官方文档,各个配置环境也先仔细看对应的文档再操作。
2024-01-12 18:05:38
604
1
原创 嵌入式Linux:Qt5+触摸屏+点灯(使用sysfs控制gpio)
通过 sysfs 方式控制 GPIO,先访问 /sys/class/gpio 目录,向 export 文件写入 GPIO 编号,使得该 GPIO 的操作接口从内核空间暴露到用户空间,GPIO 的操作接口包括 direction 和 value 等,direction 控制 GPIO 方向,而 value 可控制 GPIO 输出或获得 GPIO 输入。//设置端口方向/sys/class/gpio/gpio36 # echo out > direction。
2023-03-24 17:27:58
1077
原创 嵌入式Linux点灯-pinctrl和gpio子系统
和没用pinctrl、gpio子系统相比,此处更加简洁,没用pinctrl和gpio子系统时,还需在入口函数中读取设备树中gpioled的寄存器,然后重映射、初始化,对gpioled的操作也是要基于寄存器的,十分低效(和裸机开发没什么区别)。/* 申请设备号 */第25行:使led_gpio(这是在入口函数中获取的gpioled设备管脚的管脚号)这个管脚输出为低,对gpioled进行操作都是基于led_gpio这个管脚号。if (gpioled.major) { /* 定义了设备号 */
2023-03-23 13:52:34
238
原创 ARM裸机开发——Linux环境搭建和LED灯闪烁实验
但是转换到单片机上,需要进一步地转换为二进制文件,为此需要将多个文件合并,在文件数量不多,文件关系清晰的情况,可以按照图中第7行的方式顺序排列,进行合并。C语言通过两个赋值语句完成了上述的步骤,与汇编语言中的部分寄存器不同,C语言中的寄存器名称如GPFCON,代表只是对应寄存器的物理地址,其只是软件名称,提高可读性,换句话说如果,将寄存器名称更改,或者无需寄存器名称,也可以实现上述操作,如下图4.3将GPFCON和GPFDAT更改位FCON和FDAT,以验证实验效果,效果图如图4.4.
2023-03-23 11:44:39
610
原创 嵌入式Linux开发|点亮那颗LED灯
第1、2中都是通过直接控制GPIO来达到控制LED,这比较适合较简单的应用场景,比如仅仅控制LED的打开、关闭。如果想实现LED的呼吸、闪烁,并且是以不阻塞主程序的方式运行,那么,LED的控制就相对来说比较困难了。如果是单片机开发,控制一颗LED的步骤比较的简单、直接,直接配置GPIO功能,输出高、底电平就可以控制LED了。brightness:表示LED的亮度,对于普通发光二极管LED,只有两个状态:>0,LED亮,=0,LED灭;gpios:定义LED关联的GPIO,并说明了gpio的有效状态。
2023-03-23 11:32:20
703
原创 最简单的GPIO点灯驱动
Volatile:这个关键字的意思就是禁止编译器的优化,我们知道计算机在存储的时候为了存储的速度快,会把某些地址的值拷贝到寄存器中,这样以后直接读取寄存器的值速度会加快,但是有时候我们需要的值变化特别快,或者会在我们不知道的情况下改变它的值,而寄存器的值和内存地址的值可能不同步,那时我们就希望编译器不要优化,直接去读取内存地址的值,这时我们就用到了这个关键字。在open函数中我们就是配置了gpio的配置引脚让他们具有对应的功能,具体应该参照原理图来写,这里我们用的是三星的s3c2440的芯片,
2023-03-23 11:11:30
208
原创 _IO, _IOR, _IOW, _IOWR 宏的用法与解析
这里的_IOW/_IOWR显得很突触,以前没有接触过这个东西,一下子就被搞蒙了,但是我不会轻易放弃每个学习中的问题,我查了很多资料,现在我就来详细说明一下我的自学成果,如果有错误的地方,还请各位高手指点。变量型使用 arg 变量指定传送的数据大小,但是不直接代入输入,而是代入变量或者是变量的类型,原因是在使用宏创建命令,已经包含了 sizeof() 编译命令。用于创建设备上读写数据的命令。使用该命令时,应用程序的 ioctl() 的 arg 变量值指定设备驱动程序上读取数据时的缓存(结构体)地址。
2023-03-23 11:10:41
1625
1
原创 【嵌入式 Linux 驱动开发基础知识】按键驱动
2.3 PATH, 比如: export PATH=$PATH:/home/book/100ask_roc-rk3399-pc/ToolChain-6.3.1/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin。.init = board_xxx_button_init_gpio,//初始化引脚,初始化为输入引脚。.read = board_xxx_button_read_gpio,//读取引脚的电平状态。
2023-03-23 11:07:20
205
原创 Linux 驱动之按键驱动编写(中断方式)
2、查看芯片手册,确定 IO 端口的寄存器地址,可以看到因为用了两组 GPIO 端口,所以它的基地址分别为 0x56000050、0x56000060。5)、./third_test 测试程序,按下按键,成功打印按键值,用 top 命令查看应用程序发现 third_test 程序占用了 0% 的 CPU 资源,驱动程序相比查询方式的驱动改善了。2)、 添加 file_operations 结构体,这个是字符设备驱动的核心结构,所有的应用层调用的函数最终都会调用这个结构下面定义的函数。
2023-03-22 18:19:04
554
原创 函数调用堆栈变化分析
比如我们有这样一个C函数#include<stdio.h>longtest(inta,intb){a=a+1;b=b+100;returna+b;}voidmain(){printf("%d",test(1000,2000));}写成32位汇编就是这样;//////////////////////////////////////////////////////////////////////////////...
2021-12-22 17:42:54
230
原创 为什么要下断bpSend,原理分析。
看过这里有的大大是断下send后,去找调用send的CALL,找到这个CALL再找上一次的CALL,这样去找关键CALL,但是,有的游戏这样是找不来的,所以,如果有的游戏不能这样找回去,那怎么办呢,这就要先说说原理了。 要说找CALL的原理,我们应该想想游戏的运行机制。也就是说游戏的控制方式是怎么样的。 不说费话,其实大多数的游戏都是这样的,来个买药的例子吧: 点击买药后: 1、客户端产生一个买药行为 并调用买物品的过程,如:BuyGoods(s:string,n:integer); /..
2021-12-22 17:38:38
1009
原创 做挂第一步:如何找基址(以热血传奇为例)
如何找热血传奇基址?一.首先打开游戏并使用CE加载游戏进度。二.在数值中输入血量值207,点击新的扫描,扫描类型选择精确数值,如图所示:为什么要输入207呢?这是指游戏中人物的当前血量,游戏中的任何数据都对应一个内存地址,所以此处我们可以找到血量207的内存地址。可以发现搜索出了一大堆,但是到底哪一个是我们需要的血值呢?所以我们还得构造一个条件,以方便准备的搜出血值。请看第三步3.进入游戏,打打怪,然后故意让怪物打几下,这样自身的血量会减少,然后在CE中,扫描类型选择:减少的数值,当然在
2021-12-22 17:37:55
7863
原创 一步步学外挂(二).CALL的原理。
看过这里有的大大是断下send后,去找调用send的CALL,找到这个CALL再找上一次的CALL,这样去找关键CALL,但是,有的游戏这样是找不来的,所以,如果有的游戏不能这样找回去,那怎么办呢,这就要先说说原理了。 要说找CALL的原理,我们应该想想游戏的运行机制。也就是说游戏的控制方式是怎么样的。 不说费话,其实大多数的游戏都是这样的,来个买药的例子吧: 点击买药后: 1、客户端产生一个买药行为 并调用买物品的过程,如:BuyGoods(s:string,n:integer); //.
2021-12-22 17:35:56
664
卸载 Visual Studio 2008
2010-06-17
140个C语言程式 140个C语言程式
2010-06-07
代码行统计工具 V2.5
2010-06-03
WPF Media Player代码
2010-06-01
用C#开发蜘蛛程序 v1.0
2010-04-30
C#人事信息管理系统,
2010-04-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人