- 博客(51)
- 资源 (2)
- 收藏
- 关注
原创 Source Insight 4.0打开一会就闪退 解决方法
Source Insight 4打开就闪退?别急着卸载重装,来这里看看,说不准有帮助。
2022-02-23 23:34:41
13576
49
原创 ubuntu下使用vscode阅读内核源码或uboot源码使用技巧——search.exclude&files.exclude
各位玩家你们在阅读内核源码时,一般都使用什么工具呢?欢迎到文章末尾投上你的一票!内核源码和uboot源码一般囊括的文件都很多很多,未删减的都能上万个文件,使用一款称手的阅读源码软件可能可以让你的工作效率提高一个level哦。当然啦,在windows系统下阅读源码,Source Insight永远都是首选,yyds!选择使用vscode的一般都是在ubuntu等虚拟机环境下使用,这样在修改源码编译等操作尤为的方便。初次使用vscode阅读源码过的玩家应该多多少少都有些不舒适,特别是从Source Ins
2022-01-24 21:06:16
3841
1
原创 u-boot移植篇——u-boot启动流程分析 下
文章目录relocate_code本系列使用u-boot版本为u-boot-2018.01;前面的篇幅分析完board_init_r函数,完成了几乎都是初始化的工作,回到_main继续往下执行,执行到relocate_code函数;relocate_coderelocate_code定义在arch/arm/lib/relocate.S文件中,原型如下:/* * void relocate_code(addr_moni) * * This function relocates the moni
2022-01-21 00:33:57
1203
原创 u-boot移植篇——u-boot启动流程分析 上
文章目录一、U-Boot启动流程详解1.1 lowlevel_init()函数1.2 _main()函数1.2.1 board_init_f函数1.2.2 init_sequence_f[]本系列使用u-boot版本为u-boot-2018.01;一、U-Boot启动流程详解通过前面分析上文:u-boot移植篇——了解u-boot的分析,我们可以从u-boot.lds链接脚本入手开始分析u-boot,入口点是_start,_start 在文件 arch/arm/lib/vectors.S 中有定义,节
2022-01-18 22:36:44
1602
原创 u-boot移植篇——了解u-boot
文章目录U-Boot如何下载U-Boot对于嵌入式玩家来说,uboot是再熟悉不过的了,它属于BootLoader的一种,而BootLoader是在操作系统内核运行之前运行,也就是引导硬件从上电到操作系统的过程,BootLoader就是这么一段小程序(当然在这之前还有一段存在于硬盘MBR中的启动代码,这就不描述了)。宏观的看,BootLoader主要的工作就是初始化硬件设备、建立内存空间的映射表,最终创建一个适当的系统软硬件环境。微观的看BootLoader程序会先初始化 DDR 等外设,然后将 L
2022-01-17 23:25:04
3267
原创 petalinux-build: do_compile: oe_runmake failed & do_compile: Function failed: do_compile 解决方法
petalinux-build 报错 do_compile: oe_runmake failedpetalinux版本:2018.3kernel和uboot都是使用外部导入的源码;petalinux-build编译报错信息如下:$ petalinux-build [INFO] building project[INFO] sourcing bitbakeINFO: bitbake petalinux-user-imageLoading cache: 100% |###############
2022-01-17 15:03:40
8875
7
原创 ERROR: Failed .. bitbake ERROR: Failed..project. ERROR: Get hw description Failed 终极解决方案
ERROR: Failed to source bitbake ERROR: Failed to config project. ERROR: Get hw description Failed!.pelalinux版本:2018.3报错信息如下:$ petalinux-config --get-hw-description ../hdf/Navigator_7020.sdk/INFO: Getting hardware description...INFO: Rename navigator_7
2022-01-16 22:57:12
1407
原创 ubuntu启动进入tty界面无法正常回到图形化界面!!!究极解决方案!!!
Tips汇总文章目录Tips汇总@[toc]1. ubuntu开机无法正常进入图形界面1. ubuntu开机无法正常进入图形界面系统:ubuntu18.04问题:开机直接进入tty界面,无法进入图形界面原因:未知解决方法:在/etc/systemd/system 下建个软连接display-manager.service,指向/lib/systemd/system/lightdm.serviceln -s /lib/systemd/system/lightdm.service /etc/
2020-10-30 00:56:20
10962
8
转载 pip3 install xxx报错requests.packages.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool
python使用pip/pip3安装第三方模块报错python3 安装第三方模块时出现以下错误时:requests.packages.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host=‘files.pythonhosted.org’, port=443): Read timed out.多半是网络不好,任务超时了,毕竟是国外的源,访问很慢。pip3 install -i https://pypi.tuna.tsinghua.e
2020-06-01 10:22:26
1309
1
原创 树莓派上基于Ubuntu mate 18.04安装Node-RED
Node-RED简介Node-RED是IBM发行了一套开源可视化界面开发工具,大家可能会好奇,Node-RED跟Node.js怎么名字会这么像?是不是有某种关联存在?这边就要先从Node.js开始介绍了。Node.js是一个读取Javascript的运行环境,可用于开发网页后端程序,但是Node.js的指令是一行一行写出来的,为了免去呼叫程序代码麻烦,IBM的工程师开发了Node-RED来更容易地完成工作。具体来说,每当启动Node-RED时,背景程序便会创造一个服务器来处理我们输入的指令,这时只要使用
2020-05-23 22:16:37
1365
原创 基于arm64系统架构搭建EMQX(MQTT消息引擎)
由于毕业设计需要一个本地的局域网内智能家居中控,经过多方考虑,翻出了吃灰已久的树莓派3b+,同时EMQ是一款国产的高性能消息代理服务器。功能也挺强大,使用也挺简单。类别性能LicenseEMQ X Broker十万级开源免费EMQ X Enterprise百万级官网免费30天EMQ X Platform千万级付费、享受技术支持软硬件准备本文记录如何在树莓派中搭建EMQX,硬软件背景如下:树莓派3b+输入arm64架构的系统,(原因是
2020-05-23 22:14:27
3302
2
原创 Ubuntu16.04/18.04安装MySQL及使用Navicat连接
玩智能家居只有简单的数据采集和上报是远远不够的,像现在的产品都会有一个完整的数据库在后台保存着所有上报的数据,方便后续的查看和大数据分析等等,所以数据不是简单的采集显示一下就完了,这里使用的是MySQL作为我们的数据后台,本博文记录如何在Ubuntu上安装MySQL并开启远程服务。安装MySQL本博客将MySQL安装在我那充当局域网网关的树莓派中用作保存所有线下设备上报的数据,树莓派里的系统是...
2020-04-10 15:45:48
1006
原创 ESP8266学习进阶实用篇(1)——SmartConfig智能配网(附带完整简配版有害气体检测仪开发)
家里有智能家居的小伙伴应该都知道,给新买的玩具配网上线都是直接安装教程扫描二维码然后安装个软件输入家里路由器的账号密码或者直接到一个网页输入这种联网方式,然而我们在玩8266还没出新手村之前都是将WiFi的账号密码写死在程序里,开机直接上网的新手模式,这就很没有使用价值了。ESP8266-RTOS-SDK中提供了两种(SmartConfig)智能配网的方案接口:乐鑫提供的ESP-TOUCH...
2020-04-08 22:45:39
3125
原创 ESP8266学习进阶协议类(3)——MQTT接入
实现物联网远程获取家里的数据难吗?本文告诉你不难!!!简述MQTTMQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消...
2020-04-04 22:02:50
1028
原创 ESP8266学习进阶协议类(2)——SNTP服务
SNTP服务有啥用:可校时获取时间等等哈ESP8266-RTOS-SDK中有提供LwIP的这个组件:LwIP是Light Weight (轻型)IP协议,有无操作系统的支持都可以运行。LwIP实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用,它只需十几KB的RAM和40K左右的ROM就可以运行,这使LwIP协议栈适合在低端的嵌入式系统中使用。(摘自百度百科)LwIP组件下有提供...
2020-04-03 16:46:23
1353
2
原创 ESP8266学习进阶协议类(1)——http请求
HTTP简介HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP工作原理HTTP协议工作于客户端-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发...
2020-04-02 19:31:25
3839
原创 ESP8266学习历程(6)——UART
串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口 (Serial Interface)是指数据一位一位地顺序传送。数据格式;一个字符一个字符地传输,每个字符一位一位地传输,并且传输一个字符时,总是以“起始位”开始,以“停止位”结束,字符之间没有固定的时间间隔要求。每一个字符的前面都有一位起始位(低电平),字符本身由7位数据位组成,接着...
2020-04-01 20:33:38
1568
5
原创 Linux内存分配相关函数详解
Linux内存分配相关函数详解 kmalloc()、kzalloc()、vmalloc().动态申请内存MMU操作系统中的内存管理虚拟内存机制页式内存管理内核虚拟内存布局kmalloc()与kfree()kzalloc()vmalloc()、vfree()总结动态申请内存.在应用层中,用户空间动态申请内存空间的函数...
2020-04-01 09:56:53
1296
原创 内核GPIO标准函数
LInux内核也有一套GPIO的标准接口函数?驱动编写操作GPIO的福音啊.Linux标准的GPIO接口Linux标准的GPIO接口.GPIO是嵌入式平台最常见的一个硬件模块,所以linux内核将GPIO的访问过程封装成了标准的接口函数,这些接口函数在调用的时候和平台无关的,平常使用iowrite32、ioread32等这些函数有以下优缺点...
2020-04-01 09:56:47
260
原创 字符设备与应用程序的数据交换
字符设备与应用程序的数据交换.Linux内核——字符设备与应用程序的数据交换源码Linux内核——字符设备与应用程序的数据交换. 在用户空间和内核空间,它们数据交换是不能直接访问的,必须通过内核提供的函数实现数据的交换。1.将内核空间的数据拷贝到用户空间:copy_to_user原型 见头文件#include <lin...
2020-04-01 09:56:46
234
原创 关于驱动模块自动创建设备节点
驱动模块设备节点的自动创建,不再需要 mknod.背景根据源码解析函数解析错误码背景.Linux 2.6 引入了动态设备管理, 用 udev 作为设备管理器(应用在x86), 相比之前的静态设备管理,在使用上更加方便灵活。udev 根据 sysfs 系统提供的设备信息实现对/dev目录下设备节点的动态管理,包括设备节点的创建、...
2020-04-01 09:56:46
655
原创 ESP8266学习历程(1)——GPIO配置
ESP8266学习历程——GPIO配置.输出输入检测中断相关 根据上一篇博客,成功搭建好ESP8266在Linux下的开发环境后,正式开始入坑8266的学习和使用;本文基于NodeMCU进行学习,NodeMCU是一款开源的物联网平台,底层使用ESP8266 sdk 0.9.5版本。该平台使用了很多开源项目, 例如 lua-cj...
2020-04-01 09:56:46
1799
原创 在Linux上学习串口编程
在Linux上学习串口编程.认识串口.串口通信:硬件与硬件之间的一种通信方式,也是我们在项目中最简单的通信方式。除了串口的这种通信方式以外还有:USB、I2C、SPI、CAN、LIN等。串口是双向通信的。打开串口.直接通过open来打开串口驱动文件int uartFd=open(“/dev/ttySAC1”,O_RDWR|O_NOCTTY);通...
2020-04-01 09:56:45
303
原创 编写内核模块小Demo
基于Linux系统的内核编程小Demo.编写Linux内核模块的demo及注意事项设计一个简单的内核demo内核模块代码的编译扩展内核模块的参数编译多个内核模块内核符号表——全局共享函数接口与变量编写Linux内核模块的demo及注意事项.什么是内核模块呢?首先内核是一个操作系统的最基础部分,它是一个向所有外部...
2020-04-01 09:56:45
515
原创 编写字符设备小Demo
Linux内核——字符设备.设备相关点解简述字符设备驱动的设计流程定义一个字符设备定义并初始化一个文件操作集源码及详解编写对应Makefile12345678910obj-m += led_dev.oKERNEL_DIR := /home/bbigq/6818GEC/kernelCROSS_COMPILE := ...
2020-04-01 09:56:45
409
原创 关于IO内存
驱动模块通过申请物理内存–>映射虚拟地址给到应用程序使用的过程解析!.什么是IO内存IO内存的使用方法相关源码截取及解析函数解析虚拟地址访问的函数族什么是IO内存.外设的 SFR(特殊功能寄存器) 编址与内存的编址是同一个地址空间,叫做IO内存。Linux 内核运行后,开启了 MMU(内存管理单元),所以不能直接访问 ...
2020-04-01 09:56:45
656
原创 QT ADD Third-party libraries
QT上使用第三方库的教程,附带demo.第一步:.在新建的工程中的xxx.pro文件第二步:.使用BAT API的demo为例子BAT API DEMO添加头文件12INCLUDEPATH+=/home/bbigq/baiduAPI/image/aip-cpp-sdk-0.8.5第三步:.添加库文件12LIBS+= -...
2020-04-01 09:56:44
394
原创 Qt多媒体播放器
基于mplayer的多媒体播放器.废话不多说,直接上源码SOURCE详细步骤:第一步:移植mplayer到ARM开发板上去.mplayer的移植就不一一细说了,网上有很多大牛讲的都特别详细这里直接将mplayer复制到ARM的/bin文件下第二部:编写代码.需要实现的功能是: 1:视频播放、快进退、声音调大小、上下首切换等等; ...
2020-04-01 09:56:44
1511
6
原创 Qt Process Demo
Qt上进程的使用.Header:#include qmake:QT += core重要的接口:.开启一个进程.void start(const QString &program, const QStringList &arguments, QIODevice::OpenMode mode = ReadWrite)void start(...
2020-04-01 09:56:43
278
原创 QtThreadDemo
Qt中使用线程小demo.注意:在Qt中使用线程和linux中使用是一样的,如pthread.h pthread_create等像UI界面时不能存在死循环和延时的,但是在线程中可以哦!第一种用法:使用linux中的pthread.h.12345678910pthread_t pid;pthread_create(&pid...
2020-04-01 09:56:43
440
原创 SQL初探
SQLite 初探.1、认识数据库.常用的数据库库名说明MYSQLORACLESQLITEwindos系统常用大型服务器使用轻量级的数据库,是最嵌入式设备最适用的数据库>2、SQLITE 数据库的安装:.下载SQLITE 数据库源代码传送门3、安装数据库的方向键.sudo apt-get install ...
2020-04-01 09:56:43
194
原创 WebAPI-User
Web API 协议.Web API一般采用HTTP作为底层协议.HTTP 请求机制如下:1:客户端向服务器发送一个请求;2:服务器给客户端一个响应,告诉客户端是否可以完成它请求的工作;HTTP协议包含的内容:.1:URL(API调用地址) —> http://example.com2:Method(请求方式) ...
2020-04-01 09:56:43
369
原创 Qt常用窗体
QT自带的窗体使用.相关类静态函数函数说明QMessageBoxQMessageBox::questionquestion 消息框QMessageBoxQMessageBox::informationinformation 消息框QMessageBoxQMessageBox::warningwarning 消息框...
2020-04-01 09:56:43
212
原创 Qt HTTP Get Weather Msg
使用QT的接口实现HTTP请求获取天气信息.所需头文件JSON相关头文件12345#include <QJsonDocument>#include <QJsonObject>#include <QJsonParseError>#include <QJsonValue>#include <...
2020-04-01 09:56:43
105
原创 Qt HTTP demo
基于 Qt 的 HTTP demo.Header:#include qmake:QT += networkHeader:#include qmake:QT += networkHeader:#include qmake:QT += network新建一个HTTP请求管理器 QNetworkAccessManager:(请求管理器).QN...
2020-04-01 09:56:43
488
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人