自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

魏波-CSDN认证博客专家

魏波-CSDN认证博客专家,全国总排名306,文章总访问量超500万。个人邮箱1095528269@qq.com

  • 博客(26)
  • 资源 (5)
  • 论坛 (1)
  • 收藏
  • 关注

原创 Linux系统中的函数

Linux系统中的函数:一、进程控制fork 创建一个新进程clone 按指定条件创建子进程execve 运行可执行文件exit 中止进程_exit 立即中止当前进程getdtablesize 进程所能打开的最大文件数getpgid 获取指定进程组标识号setpgid 设置指定进程组标志号getpgrp 获取当前进程组标识号setpgrp 设置当前进程组

2018-01-25 21:39:01 310

原创 三种睡眠时间函数的区别:linux 的sleep()、usleep()、nanosleep()函数

三种睡眠时间函数的区别:linux 的sleep()、usleep()、nanosleep()函数(1)sleep()-------以秒为单位unsigned int sleep(unsigned int seconds);sleep()非系统调用,sleep()是在库函数中实现的,它是通过alarm()来设定报警时间,使用sigsuspend()将进程挂起在信号SIG

2018-01-23 14:34:26 17079

原创 mbstowcs 和 wcstombs函数:C语言提供的宽字符和多字节字符转换函数

C语言中的多字节字符与宽字符字符型char只占八位,存储ascii码的,而宽字符型是为了存储多国语言的代码unicode,包括中文,法语德语什么的,8位256种不够用了C语言原本是在英文环境中设计的,主要的字符集是7位的ASCII码,8位的byte(字节)是最常见的字符编码单位。但是国际化软件必须能够表示不同的字符,而这些字符数量庞大,无法使用一个字节编码。   C95标准化了

2018-01-23 13:57:15 2714

原创 QT5中实现多窗口切换,并从子窗口返回数据

该程序的功能:主窗口里有两个button和ltextEdit,按下下一页button后弹出子窗口并隐藏主窗口,按下退出Button后退出程序。子窗口有文本框lineEdit和button,按下子窗口的button后,会向主窗口发送文本框里的值,然后再ltextEdit中显示,并且子窗口关闭。  用到的软件:QT5注:以下文件全部在同一个项目文件中说明:在这只介绍

2018-01-20 18:59:28 20548 4

原创 C语言文件操作函数大全

C语言文件操作函数大全2018-1-19 13.1C语言文件1,两种文件存取方式(输入,输出方式)顺序存取直接存取2,数据的两种存放形式文本文件二进制文件 13.2文件指针定义文件类型指针变量的一般形式:FILE *指针变量名;例如:FILE *fp1,*fp2;13.3打开文件在使用文件之前,需打开文件.在C里使用f

2018-01-19 20:35:35 37313 8

原创 UART0串口编程(六):串口(UART0)之UC/OS(二)UC/OS下的串口接收任务编程

串口(UART0)之UC/OS(二)一.串口接收数据在UC/OS设计中应注意的问题1. 串口通信的数据接收过程:1> UART 接收FIFO接收到预定字节后触发中断2> ISR读取接收到的内容并保存3> 经过一次或若干次ISR完成一个通信帧的接收(拼装通信帧)4> 处理和解释通信内容5> 根据处理结果触发其他任务2. ...

2018-01-12 21:54:04 531

原创 UART0串口编程(五):串口编程(UART0)之UC/OS(一)UC/OS下的串口发送任务编程

UART0串口编程(五)串口编程(UART0)之UC/OS(一)一.在UC/OS中设计串口程序所要考虑的问题1.串口通信数据以帧为单位进行处理,如果需要接收大量数据,则帧缓冲区规模必然很大;如果需要发送大量数据,则可将原始数据快看作缓冲区,不需要另外再创建帧缓冲区。2.帧缓冲区是全局数据结构,通常为共享资源,需要考虑互斥访问问题(如在任务中关中断)。但是此时系...

2018-01-12 21:50:42 441

原创 UART0串口编程(四):UART0串口编程之在UC/OS—II中遭遇的危机

UART0串口编程之在UC/OS—II中遭遇的危机一.潜在的危机1.在uc/os操作系统中设计串口编程时,由于ISR和多个任务并发执行,情况比较复杂。尤其是接收状态为被动状态时,只能靠串行口中断来接收数据。2.在进行串行通信时,双方遵循相同的通信协议。由于波特率不变,因此相邻两次串口中断的间隔时间基本固定。3.在以下两种情况时会使接收过程出现错误:(1)第一种情况是系统关中断的

2018-01-12 21:39:32 190

原创 UART0串口编程(三):中断方式的串口编程;用中断编写发送函数

UART0串口编程(三)一:中断方式的串口编程1.用中断方式编写串口程序由那几部分组成2.硬件上的支持1>UART0 发送FIFO缓冲区A.UART0含有1个16字节的发送FIFO缓冲区B.U0THR是UART0发送FIFO的最高字节C.UART的发送FIFO是一直使能的2>UART0接收FIFO缓冲区A. UART0含有一个16字节的接收F

2018-01-12 21:26:47 13734

原创 UART0串口编程(二):串口编程的硬件原理;轮训方式的串口编程

UART0串口编程(二)本节针对的是ARM2200环境下编写串口程序,其中设计轮循方式,中断方式,以及在UC/OS-II操作系统下的串口编程。使用轮循和中断两种方式来实现串口编程。用中断实现串口编程,系统的效率较高,但是难度也较大 ;轮循方式效率较低,但是编程比较简单。一.串口编程的硬件原理1.     串口特性:1>16字节接收FIFO和16字节发送FIFO2>接收FIF

2018-01-12 20:24:53 498

原创 UART0串口编程(一):通信协议设计;RS232标准

UART0串口编程(一)嵌入式系统之间采用通信方式交换数据,串行通信是一种最基本的通信手段。现在由于各类CPU均集成了UART部件。本节对串口编程时如何设计串口通信协议,以及对RS232接口进行了说明。1.    通信协议设计在进行通信时,每次需要传送的信息一般超过1字节。为此,通信双方必须约定通信数据的排列格式,即通信协议。通常把一次通信过程的全部内容称为一个“通信帧”。通信协议设计

2018-01-12 19:08:53 3455

原创 Linux编程下open()函数的用法

Linux编程下open()函数的用法open(打开文件) 相关函数: read,write,fcntl,close,link,stat,umask,unlink,fopen 表头文件 :#include#include#include 定义函数: int open( const char * pathname, int flags);int ope

2018-01-11 17:27:21 27681

原创 sigaction 函数,sigemptyset()函数,fcntl()函数,isatty()函数

第一个函数:使用 sigaction函数: signal 函数的使用方法简单,但并不属于POSIX标准,在各类UNIX平台上的实现不尽相同,因此其用途受到了一定的限制。而 POSIX标准定义的信号处理接口是sigaction函数,其接口头文件及原型如下: #include  int sigaction(int signum, const struct sigaction *act,

2018-01-11 17:16:40 925

原创 Linux线程-互斥锁pthread_mutex_t

Linux线程-互斥锁pthread_mutex_t在线程实际运行过程中,我们经常需要多个线程保持同步。这时可以用互斥锁来完成任务;互斥锁的使用过程中,主要有pthread_mutex_init,pthread_mutex_destory,pthread_mutex_lock,pthread_mutex_unlock这几个函数以完成锁的初始化,锁的销毁,上锁和释放锁操作。linu

2018-01-11 16:48:26 1437

原创 C语言访问MYSQL数据库的完整的代码例子

C语言访问MYSQL数据库的完整的代码例子1、手写安装带mysql sdk 的mysql2、新建控制台项目,项目属性中把C:\Program Files\MySQL\MySQL Server 5.5\include 加入“包含目录”把C:\Program Files\MySQL\MySQL Server 5.5\lib 加入“库目录”3、stdafx.h中加入

2018-01-11 16:41:43 1469

原创 操作mysql - 查询结果集

操作mysql -查询结果集1.用mysql进行数据查询的时候,mysql会返回一个结果集给我们,接着我们需要调用mysql的API,从这个结果集中取得我们要的数据。取完数据之后,需要释放这个结果集。 2.mysql的结果集其实就是一个MYSQL_RES结构,其定义如下:typedef struct st_mysql_res {my_ulonglong row_count

2018-01-11 16:24:16 4822

原创 基于Nanopi NEO开发板的套接字编程!

基于Nanopi 开发板的套接字编程!用到友善之臂Friendarm的开发包Matrix,下载地址:https://github.com/friendlyarm/matrix.git #include <stdio.h>#include <stdlib.h>#include <strings.h> #include <sys/...

2018-01-10 19:36:33 364

原创 在QT的LineEdit框中输入特定字符(正则表达式的使用)

void MainWindow::on_lineEdit_cursorPositionChanged(int arg1, int arg2){ QRegExp rx("[a-z A-Z 0-9 +*/]{25}"); QRegExpValidator *pRevalidotor = new QRegExpValidator(rx, this); ui->lineEdit-

2018-01-10 16:26:29 2710

原创 把指定用户的命令写在/home/etc/rc.local中,系统开机时就会自动执行指定用户的命令。

把指定用户的命令写在/home/etc/rc.local中,系统开机时就会自动执行指定用户的命令。

2018-01-10 11:36:02 2376

原创 各种串口SPI&UART&I2C&CAN&RS232比较!

各种串口SPI&UART&I2C&CAN&RS232比较!I2C,SPI,UART 和CAN 的区别SPI--Serial Peripheral Interface,(Serial Peripheral Interface:串行外设接口)串行外围设备接口,是Motorola 公司推出的一种同步串行通讯方式,是一种三线同步总线,因其硬件功能很强,与 SPI 有关的软件就相当简单,

2018-01-10 11:11:06 5457

原创 s3c6140 UART驱动设计

s3c6140 UART驱动设计

2018-01-10 11:04:27 130

原创 用NanoPi NEO Air连接USB摄像头

1.Pin#:2,3或4,5是NanoPi NEO Air的摄像头数据接口。DM是USB的数据线D-,DP是USB的数据线D+。2.下图是把Pin#:2,3引脚接出来,连在摄像头的USB口上。(注意数据线的正负!)3.用xshell登陆到板中如下图:4.用ls /dev查看摄像是否接上,如果接上会显示video0,如下图:

2018-01-06 17:30:35 1794 1

原创 嵌入式系统开发方向的面试题总结

面试题总结: 1 Linux常用命令2 Linux设置环境变量,举例说明3 单例模式,及其线程安全4 打开一个网站的时候,发生了什么5 10MB大小的数据排序,有10MB的内存,如何排序6 称重的方法(从100个硬币中找出最轻的那个假币)7 用两种方法(占临时内存最少/最快),写出从字符串里找到某个字符或者莫个字符串出现的所有位置的程序8 如何创建多线程9 多线程如何进行信...

2018-01-05 10:35:22 1357

原创 排序算法总结

排序算法分为:1.插入排序直接插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。1.1直接插入排序方法1:#include "stdafx.h"#include#includeusing namespace std;void swap(int &

2018-01-04 15:59:52 204

原创 虚函数和纯虚函数

虚函数为了重载和多态的需要,在基类中是由定义的,即便定义是空,所以子类中可以重写也可以不写基类中的函数!纯虚函数在基类中是没有定义的,必须在子类中加以实现,很像java中的接口函数!虚函数引入原因:为了方便使用多态特性,我们常常需要在基类中定义虚函数。class Cman{public:virtual void Eat(){……};void Move();pri

2018-01-04 11:33:24 146

翻译 NAND Flash和NOR Flash的区别

1. 区别    NOR的特点是芯片内执行(XIP,eXecute In Place),这样应用程序可以直接在flash闪存内运行,不必再把代码读到系统RAM中。优点是可以直接从FLASH中运行程序,但是工艺复杂,价格比较贵,NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。  NAND结构能提供极高的单元密度,可以达到高存储密度,

2018-01-03 10:41:24 100

Lua源代码分析顺序

Lua源代码分析顺序

2019-04-11

Memcached源码分析之内存管理

Memcached源码分析之内存管理Memcached源码分析之内存管理

2019-04-11

extern()和 flock()函数

extern()和 flock()函数extern()和 flock()函数

2019-04-11

cJSON是C语言中的一个JSON编解码器

cJSON是C语言中的一个JSON编解码器cJSON是C语言中的一个JSON编解码器

2019-04-11

coreutils 的所有代码链接

coreutils 的所有代码链接coreutils 的所有代码链接coreutils 的所有代码链接

2019-04-11

魏波-的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除