- 博客(22)
- 资源 (1)
- 收藏
- 关注
原创 Qt LINK2019,外部无法解析的符号
1.日常报错,无法在ui设计好的控件在cpp中找到,将项目里的shadow去掉2. 无法解析的外部符号:没有实现某个函数。终极方法如果怎么改都改不成功(无法解析的外部符号),那么就新建一个APP项目,将原来的项目里的cpp、h、ui文件全部复制到新的APP项目里,将原来的.pro文件中的内容复制到新的.pro中,再重新编译。亲测成功。...
2019-10-12 23:43:23
469
原创 I2C寄存器控制
/* 设置寄存器启动传输 */ /* 1. 配置为 master tx mode */ IICCON |= (1<<7); /* TX mode, 在ACK周期释放SDA */ IICSTAT = (1<<4); /* 2. 把从设备地址写入IICDS */ IICDS = msg->...
2019-09-03 22:55:46
2436
原创 ARM裸机编程
1.指令 ldr: 伪指令,读取内存,任意数 mov:只能使用4个字节的立即数 str:从前面的保存到后面的数.text.global _start_start: ldr r1, = 0x100 ldr r0, = 0x12345678 str r1, [r0] 编译成斌文件:arm-linux-gcc -c -o le...
2019-09-01 19:24:16
599
原创 排序算法总结
1.冒泡排序 vector<int> data1 = { 9, 1, 6 , 8, 9}; for (int i = 0; i < data1.size() - 1; i++) { for (int j = i; j < data1.size() - 1; j++) { if (data1[j] > data1[j + 1]) {...
2019-09-01 15:29:47
140
原创 Qt5设置widget背景图片
#include <QPixmap>#include <QPalette>#include <QBitmap> QPixmap bgImage("://timg.jpg"); QPalette bgPalette = this->palette(); bgPalette.setBrush(QPalette::Backgr...
2019-08-13 09:28:46
2190
原创 学习笔记(01):linux3.4.2内核下的I2C驱动-3.4.2内核下的I2C驱动之框架编写代码
立即学习:https://edu.youkuaiyun.com/course/play/3826/674521.注册设备i2c_client1.1 总线方式i2c_board_info信息有名字和设备地址。1.2 i2c_register_board_info(将其放入__i2c_board_list链表) list_add_tail(&devinfo->list, &__i...
2019-08-01 16:36:39
259
原创 编译内核时注意。
1.将make时一定要全部加ARCH=armmake ARCH=arm nanopi2_linux_deconfigmake ARCH=arm menuconfigmake ARCH=arm
2019-07-27 21:48:43
272
原创 Qt5之信号的重载
在信号中重载My_signal,其重载函数为void My_Signal();void My_Signal(int, QString);在使用connect函数时,需要区别两个带有重载参数的函数。用static_cast强制转换。static_cast<void (Widget1::*)()>(&Widget1::My_Signal)static_c...
2019-07-25 20:09:57
1217
1
原创 ARM使用I2C。
#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <fcntl.h>#include <linux/i2c.h>#include <sys/ioctl.h>#include <linux/i2c-dev.h>#inclu...
2019-07-19 15:46:28
797
原创 arm-linux smart4418使用gpio
研究了一段时间的gpio,arm上的gpio不像树莓派上可以直接用wiringPi的库直接使用。这个gpio需要配置内核或者直接写入寄存器的方式进行操控。下面就以两种方法使用gpio,简单介绍寄存器,详细的记录一下配置内核的方法。1. 寄存器寄存方式得需要用户手册才能使用。主要是查询各个gpio的地址,其中包括控制寄存器的地址和数据寄存器的地址。其主要流程为下:1. 写入16位数...
2019-06-23 17:31:24
890
原创 基于ARM的内核编译与安装
1. make menuconfig 选择要编译的模块。在arm平台下编译不需要添加参数,若在i386下编译时需要添加arch = arm;gcc = arm-linux-gunihf等。2. make bzImage.产生的文件在arm/boot/下。3. make modules4. make modules_install;5. mkinitrd /boot/initrd.i...
2019-06-14 22:45:32
1611
原创 linux历史版本内核下载方法。
光从官网上找到的是没有历史版本的直接下载选项的,只有通过终端或者采用输入网址的方法才能得到。直接将后面内核的版本号修改即可。修改方法:1. 查看linux内核版本号: uname -a2. 对照官网官网地址修改自己的地址。https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.4.49.tar.xz改为https://cdn....
2019-06-03 16:37:11
19666
1
原创 数据结构之二叉树建立与遍历。
通过前序建立二叉树,采用三种方法实现对树的遍历。#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct node{ char data; node* lchild; node* rchild;}*Bitree, BitreeNode;void cr...
2019-05-29 10:28:28
528
原创 linux下sudo apt-get update失败 reading lists error解决办法
当Reading package lists... Error!失败时,采用sudo rm /var/lib/apt/lists/* -vf就会删除已经坏掉了的文件,再次重新update即可。
2019-05-26 17:06:56
558
原创 数据结构之循环队列
#include <stdio.h>#include <stdlib.h>#define MAXQSIZE 100struct sQueue{ int* base; int front; //类似于数组的元素。 int rear;};//创建新循环队列void InitQueue(sQueue* Q){ Q->base = (int*...
2019-05-24 16:10:32
130
原创 数据结构栈创建。
注意在声明完指针之后需要初始化。#include <stdio.h>#include <stdlib.h>#define STACK_SIZE 20#define APPEND_SIZE 20struct stack_t{ int* base; int* top; int stacksize;};//压入数据void Push(stack...
2019-05-22 22:04:30
618
原创 双向链表创建。
#include <stdio.h>struct NodeL { NodeL *prior; int data; NodeL *next;};int main(){ NodeL *pa = new NodeL; NodeL *pb; pa->prior = NULL; NodeL* Head = pa; scanf("%d", &pa->...
2019-05-22 21:34:41
604
原创 关于Qtcreator 无法定位输入点于.exe的问题解决方案。
主要是设置环境变量就可以。 首先要看自己的debug采用的哪种编译器。 打开Qt,点击左下角Debug选项。查看自己的选择。例如我当时安装了三种。选择的是第一种MinGW64. 打开自己的Qt安装路径。例如我的是F:\Qt\5.12.1,打开5.12.1文件夹(该文件夹是自己安装的版本号),里面会有几个当时安装的编译器。 进入minggw73_64文件夹,将其目录下的bin文件夹添加...
2019-04-07 10:22:50
1403
原创 Qt在arm上的安装及arm-linux-gcc安装。
最近在smart4418上安装Qt时,一直报错。未发现arm-linux-g++问题。以前版本的Qt是在维基百科上下载的。维基百科地址。属于那种sudo ./install.sh然后安装到最后没有arm-linux-g++。针对这种情况,有两种解决办法:安装arm-linux-g++,从网上下载arm-linux-gcc安装包,csdn上有,没上传成功。将其解压到自己的文件夹,...
2019-04-06 15:03:44
2020
原创 C++函数中的输入以及如何使用总结
1.输入的是数组的名称 : int f(int arr[])类型 arr等于数组第一个元素的地址: arr == &arr[0]int f(int arr[]); //输入的是数组的名称即指针。int main(){ int arr[5] = {0}; f(arr);}int f(int arr[]){ arr...
2018-10-04 21:45:57
1425
原创 ubuntu18.04 在编译内核时报错解决方案。
ubuntu18.04在编译时报错,主要是安装包问题,将下面安装包重新安装一下即可解决。sudo apt-get install libncurses5-dev libssl-devsudo apt-get install build-essential opensslsudo apt-get install zlibc minizipsudo apt-get install li...
2018-09-21 16:10:49
2463
原创 Samba服务器搭建,win10拒绝访问解决方法
首先安装samba, sudo apt-get install samba.安装好Samba服务器之后,win10访问会拒绝访问。解决办法:vi /etc/samba/smb.conf,按i进行输入。将 ==========Share Definition=======下面的所有代码注释,并添加设置[share]comment = samba home directory...
2018-08-30 14:36:53
25953
3
.asc转换.csv格式转换器
2019-06-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人