
嵌入式
无.处安放的灵魂
低调低调...观望期他大佬。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Source Insight4.0 跳转不了符号的原因
在新建工程的时候,需要将源码文件都添加到树上“add tree”,之前漏了这一步,所以不管怎么同步文件,也都无法找到符号。具体怎么同步文件,搜一下其它博客,他们都写得很详细。原创 2020-09-28 08:37:51 · 959 阅读 · 0 评论 -
嵌入式linux消息队列应用
文章目录消息队列机制发送消息三步走接收消息两步走消息队列机制在内核空间开辟一片区域,一个进程将数据传到另一个进程,需要完成2次数据复制。第一次,将一个进程的数据复制到内核中,即从用户态转到内核态。第二次,将内核的数据复制到另一个进程,即从内核态转到用户态。与管道相比,简化了对文件的操作。发送消息三步走第一步:创建一个对象,msgget。需要定义队列的键值,相当于IPC通信对象中的ID号,需要与其他IPC对象的key不一样,接着还需设置权限、模式。第二步:复制“消息”到缓存区,则先定义一个结构体#原创 2020-09-27 07:23:47 · 689 阅读 · 0 评论 -
zigbee初步学习笔记总结
花了一个星期的时间在B站刷完zigbee的视频(胜达的),对zigbee算是入门了。下面总结就来个大总结。1、什么是端点zigbee的端点类似TCP上面的端口号,也类似于计算机上的COM口。往计算机上面接入一个设备,那么在设备管理里面就会显示出来,这个显示相当于这个设备已经注册了。同样的,在zigbee上面也需要注册端点,用于辨别接收到设备,如一个zigbee设备上要接收温湿度传感器,红外传感...原创 2019-11-25 16:28:12 · 633 阅读 · 1 评论 -
嵌入式开发 :字符类 蜂鸣器
用法与驱动LED类似。话不多说,直接贴上例程#include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>#include <...原创 2019-08-18 13:07:32 · 423 阅读 · 0 评论 -
嵌入式开发:进程ID
每个进程都有一个ID号 每个进程都是由其它进程创建。创建进程的进程叫父进程,新进程叫子进程。 进程号按线性来分配。如当前进程号为1000,下一个进程号为1001。获取进程号的函数获取子进程号 pid_t getpid(void) – 参数:无 – 返回值:成功返回进程号 获取父进程号 pid_t getppid(void); – 参数:无 ...原创 2019-08-31 17:11:56 · 201 阅读 · 0 评论 -
嵌入式开发:excel函数 (多进程运行)
linux中,可以使用exec函数族将程序载入内存,实现多个程序的运行。man 3 execexec函数族参数 – “l”和“v”表示参数是以列表还是以数组的方式提供的 – “p”表示这个函数的第一个参数是*path,就是以绝对路径来提供程序的 路径,也可以以当前目录作为目标 – “e”表示为程序提供新的环境变量简单地使用一下 execl()int ...原创 2019-08-31 17:49:35 · 673 阅读 · 0 评论 -
嵌入式开发:fork() 理解
linux中,可以使用fork函数创建和当前进程一模一样的进程,叫子进程,原来的进程叫父进程函数原型 pid_t fork(void); – 参数:无 – 返回值:执行成功,子进程pid 返回给父进程,0 返回给子进程;出现错误-1,返回给父进程。执行失败的唯一情况是内存不够或者id 号用尽, 不过这种情况几乎很少发生。 例程#include <stdio...原创 2019-08-31 19:18:52 · 362 阅读 · 0 评论 -
嵌入式开发:find命令用法整理
转载:https://www.cnblogs.com/f-ck-need-u/p/10704754.html转载 2019-09-07 19:37:38 · 253 阅读 · 0 评论 -
嵌入式开发:curses输出函数
在curses库中有三类输出函数,它们分别是:addch()系列:将单一的字符打印到屏幕上,可以附加字符修饰参数的一类函数。printw()系列:和printf()一样的具有格式化输出的一类函数。addstr()系列:打印字符串的一类函数。这几类函数可以交替使用。关键是要了解各类函数的具体应用环境。让我们来看看这些函数。1、addch()系列函数addch()函数用于在当前光标位置输入单...转载 2019-09-10 19:47:14 · 565 阅读 · 0 评论 -
嵌入式开发: vim常用配置
修改文件vim /usr/share/vim/vimrc1.可以右键复制到 putty: set paste2.设置空格长度(4格):set softtabstop=43.设置tab键长度(4格):set tabstop=44.显示行号: set number5.UTF-8 编码:set encoding=utf-8set termencoding=utf-8set...原创 2019-09-21 20:02:50 · 285 阅读 · 0 评论 -
嵌入式开发:加载模块注意事项
一、Makefile文件#!/bin/bashobj-m += 1mini_linux_printf.oKDIR := /lib/modules/$(shell uname -r)/buildPWD ?= $(shell pwd)all: make -C $(KDIR) M=$(PWD) modules clean: rm -rf *.o注意: 1、mini_lin...原创 2019-09-25 22:02:37 · 195 阅读 · 0 评论 -
嵌入式开发 :字符类 led
一、函数介绍对于 led 小灯的操 作,使用写函数,理论上也是可以的。但是对于 IO 口(这里的 IO 口指的是硬件上的 IO 口, 不是指 IO 文件)的操作,Linux 专门设计了一个高效的函数 ioctl。 这个函数在头文件#include<unistd.h>中。 int ioctl( int fd, int request, int cmd); 参数 fd,函数...原创 2019-08-18 11:35:18 · 266 阅读 · 0 评论 -
嵌入式开发: main的理解
一、函数介绍main 函数作为应用程序的入口,在头文件“#include<stdio.h> ”中。 main 函数需要传参数的时候完整的定义为 int main(int argc,char **argv) 参数 argc,表示参数的个数 参数**argv,存储输入字符的数组 argv[0]表示程序名称 argv[1]——argv[n]输入的参数二、...原创 2019-08-18 09:52:16 · 1100 阅读 · 0 评论 -
嵌入式开发: 时间操作
1、时间的概念UTC时间 :世界统一时间,世界各地的时间以这个为基准 。 UNIX 纪元时间:从 1970 年 1 月 1 日 00:00:00 UTC 开始所经过的秒数。在 linux 中时间日期会以这种方式存储时间,有效位是秒。例如经过了 1 分钟,这个数值会变大 60 秒。 格林尼治标准时(GMT)时间:GMT 是指太阳经过英国格林尼治的时间。在英国很 NX 的时候,以格林尼...原创 2019-08-22 14:05:16 · 870 阅读 · 0 评论 -
嵌入式开发 : 自启动打印Hellow World!
打开自启文件 vi /etc/init.d/rcS 末尾追加helloworld的文件路径 /bin/helloworld & 修改helloworld文件权限 chmod 777 /bin/helloworld 重启...原创 2019-08-19 10:19:37 · 263 阅读 · 0 评论 -
嵌入式开发: ubuntu 网络配置
第一步:配置虚拟机的网络第二步:配置VMware 的网络原创 2019-08-15 09:27:57 · 160 阅读 · 0 评论 -
嵌入式开发 : 串口发送
1 串口初始化函数int set_opt(int fd,int nSpeed, int nBits, char nEvent, int nStop){ struct termios newtio,oldtio; if ( tcgetattr( fd,&oldtio) != 0) { perror("SetupSerial 1"); return -1; } ...原创 2019-08-20 13:47:53 · 483 阅读 · 0 评论 -
嵌入式开发 :串口接收
01 例程#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>#include <string.h>#include <termios.h>int ...原创 2019-08-20 13:58:11 · 583 阅读 · 0 评论 -
嵌入式开发: Hellow World! 程序( 4412开发板)
4412开发板不能直接编译 c 文件,需要在一个Linux系统上完成编译,再把编译好的文件传到 开发板上运行。一、在Notepad++ 撸一串 Hello World 程序。二、通过文件助手,把c文件拖到 ubuntu 虚拟机上,我用的是迅为封装好的 ubuntu, 里面已经有 arm的编译器。arm-non-linux-gnueabi-gcc 表示使用arm编...原创 2019-08-16 09:17:39 · 367 阅读 · 0 评论 -
嵌入式开发:理解硬链接、软链接区别
为了搞懂这二者关系,我在网上搜集了不少的资料,特意整理一番。1、硬链接 硬链接实际上是为文件建一个别名,链接文件和原文件实际上是同一个文件。 硬链接,以文件副本的形式存在。但不占用实际空间。 inode号是同一个,说明它们是同一个文件。 硬链接只能用于文件,不能用于目录。 硬链接不能跨文件系统操作。 场景:A硬链接B, B删除后,A仍然...原创 2019-08-25 20:18:52 · 344 阅读 · 0 评论 -
嵌入式开发: 文件操作 open
一、查看需要的头文件首先,看看 open函数需要哪些头文件在ubuntu上 输入 man 2 open 即可知道。二、函数介绍int open(const char *path, int oflags,mode_t mode);path : 路径名称oflags:打开文件所采取的动作。mode: 设置创建文件的权限。三、oflags 可选参数O...原创 2019-08-17 09:31:21 · 739 阅读 · 0 评论 -
嵌入式开发: creat 创建文件
关于 creat 函数,首先这个单词并不是表示创建的意思,创建的英文单词是“create”, 这是早期的一个小的拼写错误,却一直沿用下来。 在介绍 open 函数的时候,可以看到 open 函数有两种形式,一个是两个参数一个是三个 参数,早期的时候 open 只有三个参数的形式,三个参数的形式会导致 open 函数无法打开一 个未创建的文件,也就是无法建立文件,所以就有了这个 creat 函数...原创 2019-08-17 10:02:10 · 617 阅读 · 0 评论 -
嵌入式开发: 文件操作 write 函数
一、函数介绍write 函数在头文件“#include <unistd.h>”中。 函数原型为 ssize_t write(int fd,const void *buf,size_t count) 参数 fd,使用 open 函数打开文件之后返回的句柄。 参数*buf,需要写入的数据。 参数 count,将参数*buf 中最多 count 个字节写入文件中。 返...原创 2019-08-17 10:45:05 · 914 阅读 · 0 评论 -
嵌入式开发: 文件操作 read函数
一、read 函数介绍 read 函数在头文件“#include <unistd.h>”中。 函数原型为 ssize_t read(int fd,void *buf,size_t len) 参数 fd,使用 open 函数打开文件之后返回的句柄。 参数*buf,读出的数据保存的位置。 参数 len,每次最多读 len 个字节。 返回值为 ssize 类型,出错会...原创 2019-08-17 11:27:37 · 1199 阅读 · 0 评论 -
嵌入式开发: 字符类 adc转换
#include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>#include <sys/ioctl.h>#include ...原创 2019-08-19 09:29:07 · 240 阅读 · 0 评论