- 博客(62)
- 收藏
- 关注
原创 USB&FATFS系统操作说明
注:本系统基于原子mini开发板,所用到的模块均为板载功能,无需添加任何外设一,系统介绍本系统主要由USB和FATFS文件系统组成,为了实现将无损检测NDT文件从汕超设备中转存读取并通过无线传输发送给指定设备的功能二,系统初始化连接①将mini板的USB接口(开发板左边的USB接口)与汕超的U盘插口连接。长按汕超电源键开机,进入如图一界面:②连接
2018-02-07 23:19:55
1483
原创 基于汕超设备的USB&FATFS系统
本系统主要由USB和FATFS文件系统组成,为了实现将无损检测NDT文件从汕超CTS1002设备中转存读取并通过无线传输发送给指定服务器的功能。以下将对产品需求,硬件框架和软件框架做详细的阐述 需求分析汕超CTS-1002超声波探伤仪是一种便携式工业无损探伤仪器,它能够快速、便捷、无损伤、精确地进行工件内部多种缺陷(裂纹、疏松、气孔、夹杂等)的检测、定位、评估和诊断。既可以用于实验室,
2018-02-07 23:07:17
432
1
原创 Qt加入资源文件后出现编译错误
原因很简单。。。资源文件的命名和路径问题,如资源文件中的图片命名中出现了“-”只允许文件名中出现数字,字母,下划线所以,在使用国外软件进行开发的时候务必使用全英的路径和文件命名!!!
2018-02-07 22:51:16
1250
原创 Qt中的switch
Qt中的switch...case结构中不能直接定义变量,否则会报语法错误错误示例:switch(value){case text1:.......;break;case text2:QString class1 = ....;//不可以在结构case语句中直接声明QString age1 = ....;..........;
2018-02-07 22:46:36
17604
1
原创 Qt指针变量的定义
指针变量的定义:①若在其他函数中已有空间的分配,则只需将其指向该空间;EG: QFile *myFile;myFile = ....();②若作为自身使用,则要给他新分配一个空间EG:QFile *myFile;myFile = new QFile();myFile = ...();
2018-02-07 22:45:34
3569
原创 轻量级数据库 sqlite
查看表sql结构:.schema查看表:.tables查看数据库:.database创建数据库:sqlite3 test.db对表操作:1.1创建表create table 表名(列名1 类型, 列名2 类型, 列名3 类型, 列名4 类型);eg:create table human(id integer, name text, age int,
2018-02-07 22:44:09
772
原创 创建car销售的MYSQL数据库
-- 创建一个名称为car的数据库。create database car;-- 删除数据库car-- drop database car;-- 使用数据库caruse car;-- 创建表create table brand (id int primary key auto_increment, factory varchar(255), name varchar(255), price int...
2018-02-07 22:42:47
1073
转载 编译器优化和volatile详解
编译器优化:1.由于内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。以上是硬件级别的优化。再看软件一级的优化:一种是在编写代码时由程序员优化,另一种是由编译器进行优化。编译器优化常用的方法有:将内存变量缓存到寄存...
2018-02-07 22:36:12
816
原创 ARM平台下的Qt移植:移植相关问题和解决方法
一、Qt的qmake版本问题在配置编译好Qt源码后,运行qmake -v来查看Qt的qmake版本,结果出错显示qmake: could not exec '/usr/lib/i386-linux-gnu/qt4/bin/qmake': No such file ordirectory解决方法为①由于我们是手动编译Qt库(或者是之前安装过Qt,并卸载残留),所以要手动修
2018-02-07 22:31:58
989
原创 Qt移植:qt源码的编译
①将qt-everywhere-opensource-src-4.8.5.tar.gz 复制到创建到/opt/GEC210下,用tar zxvf +target 进行解压到当前目录②根据《ARM Cortex-A8实战演练》.pdf中的提示安装相关Qt库,缺少什么库就安装什么③进入解压后的源码根目录,开始进行编译,顺序为 ./configure、gmake、gmake install
2018-02-07 22:29:55
478
原创 Qt编译安装和目录备忘
JPEG:/usr/local/arm/4.8.5Qt-4.8.5-arm:/usr/local/Trolltech/Qt-4.8.5-armQtEmbedded-4.8.5-arm:/usr/local/Trolltech/QtEmbedded-4.8.5-arm所有源码目录:/opt/GEC210开发板挂载目录:/;opt/root/rootfstslib编译目录:/opt
2018-02-07 22:28:37
281
转载 STM32中断优先级彻底讲解(转载)
STM32中断优先级彻底讲解一:综述 STM32 目前支持的中断共为 84 个(16 个内核+68 个外部), 16 级可编程中断优先级的设置(仅使用中断优先级设置 8bit 中的高 4 位)和16个抢占优先级(因为抢占优先级最多可以有四位数)。二:优先级判断 STM32(Cortex-M3)中有两个优先级的概念——抢占式优先级和响应优先级,有人把响应优先级称作'亚
2017-08-20 23:22:05
697
原创 Linux下的Shell脚本编程
在linux系统下运行的shell,换行符必须是'\n',而window下的换行符是'\r\n',所以window下的编辑器写的shell不能在linux下运行运行方式:①./xx.sh:shell程序必须具有可执行权限。 chmod a+x xx.sh来添加可执行权限②source xx.sh:不需要可执行权限③bash xx.sh:#!/bin/
2017-08-20 23:20:03
251
原创 虚拟机Ubuntu与s5pv210的ping
开发板和主机的有线网卡通过网线连接虚拟机需将上网模式设置为桥接模式,且必须桥接到有线网卡上上网模式一般有桥接和net,桥接时虚拟机IP和主机IP不同,而NET是通过共享主机IP的方式来实现上网的
2017-08-20 23:18:28
278
原创 S5PV210的启动过程(GEC210)
三星官方的启动方式:bootloader必须小于96KB并大于16KB,假定bootloader为80KB,启动过程是这样子:先开机上电后BL0运行,BL0会加载外部启动设备中的bootloader的前16KB(BL1)到SRAM中去运行,BL1运行时会加载BL2(bootloader中80-16=64KB)到SRAM中(从SRAM的16KB处开始用)去运行;BL2运行时会初始化DDR并且将OS搬
2017-08-20 23:16:30
327
原创 uboot移植:uboot下的config.mk解析
一,autoconf.mk的生成##autoconf.mk 文件不是源码提供的,是配置过程中自动生成的##autoconf.mk 的作用是用来指导整个uboot的编译过程。内容是很多CONFIG_开头的宏(变量)# 这些变量会影响到uboot编译的走向(原理是条件编译,以实现可移植性)##autoconf.mk 文件的生成取决于源码目录下的include/configs/xxx
2017-08-20 23:15:31
728
原创 uboot移植:uboot下的mkconfig解析
一,创建符号链接(P31)#一系列的创建符号链接(让uboot具有可移植性)#这些符号链接文件的存在就是整个配置过程的核心#符号链接文件(文件夹)的主要作用是给头文件就包含等等过程提供指向性的连接##uboot可移植性的实现原理:在uboot中有很多彼此平行的代码,各自属于各自不同的架构/CPU/开发板#我们在具体到一个开发板的编译时用符号连接的方式提供一个具体的名字的文件夹供
2017-08-20 23:14:34
266
原创 uboot移植:uboot下的主Makefile解析
一,环境变量HOSTARCH,HOSTOS(P31)##sed为替换命令,如s/i.86/i386 表示将包含i_86的字段替换成i386##uname 将正在使用的操作系统名写到标准输出中##-m显示硬件运行系统的机器 ID 号HOSTARCH := $(shell uname -m | \sed -e s/i.86/i386/ \##tr '[:uppe
2017-08-20 23:13:26
406
原创 uboot移植:Flash分区和DDR分区
Flash有如下分区且按照由上而下的顺序储存:①uboot(大小一般为512KB或1MB):uboot必须从flash的起始地址开始存放(由SoC的启动设计决定起始与扇区0还是扇区1)②环境变量分区:该分区一般紧贴着uboot来存放。大小一般为32KB以上③rootfs(根文件系统分区):紧贴于环境变量分区,大小需依据相应的根文件系统大小来设定④自由分区:为Flas
2017-08-20 23:11:29
1016
原创 ARM中的PC与R15
PC是程序计数器。不属于特殊功能寄存器。它存放的是下一条要取的指令的32位存储单元地址(ARM),当取完一个字节以后,PC的值会自动加以,为取在下一条指令做准备。读指令时,PC将其中的数值作为所取指令的地址输出给程序存储器R15,然后程序存储器按此地址输出指令字节,同时PC中的内容自动加1,指向下一条指令在程序存储器中的地址。所以R15保存当前指令地址(PC传给它的),PC
2017-08-20 23:09:45
1799
原创 重定位和链接脚本
重定位实际就是在运行地址处执行一段位置无关码PIC,让这段PIC(也就是重定位代码)从运行地址处把整个程序镜像拷贝一份到链接地址处,完了之后使用一句长跳转指令从运行地址处直接跳转到链接地址处去执行同一个函数,这样就实现了重定位之后的无缝连接。链接地址:链接时指定的地址(指定方式为:Makefile中用-Ttext,或者链接脚本)运行地址:程序实际运行时地址(指定方式:由实际运行时被
2017-08-20 23:05:29
396
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人