I2C波形规格介绍 Spec:Read:./i2c_read_write -b 0 -a 0xd0 -f A8D8 -r 0x75Reg value: 0x68上图是往7bit slave addr为0x68(write addr 0xD0)的设备读取reg 0x75 值的波形。需要注意的地方如下:1. scl & sda在空闲没有设备控制时的默认状态是high;2. 在传输数据的过程中,只有scl为低时,sda的状态才能发生改变,否则就是发送start或者是stop信号。start:
cygwin利用cross-ng制作toolchain 安装cygwinCygwin Installationcross-ng所需lib & toolWget安装apt-cvg从GitHub - transcode-open/apt-cyg: Apt-cyg, an apt-get like tool for Cygwin 下载apt-cyg放到bin目录,用于下载一些需要的toolGccUbintilMakeFlexcursesLibintlGette...
extern export const的使用 C++全局变量的声明和定义(1)编译单元(模块) 在VC或VS上编写完代码,点击编译按钮准备生成exe文件时,编译器做了两步工作: 第一步,将每个.cpp(.c)和相应的.h文件编译成obj文件; 第二步,将工程中所有的obj文件进行LINK,生成最终.exe文件。 那么,错误可能在两个地方产生: 一个,编译时的错误,这个主要是语法错误; 一个,链接时...
linux coredump的使用方法 1. kernel config打开CONFIG_COREDUMP2. /etc/profile添加coredump文件大小限制 ulimit -c unlimited3. 修改/proc/sys/kernel/core_pattern,改变保存coredump的方式if [ -e /etc/core.sh ]; then echo "|/etc/core.sh %p...
嵌入式linux的启动流程 1.首先是从init/main.c的start_kernel开始,启动/sbin/init程序,如果bootargs中有指定init=linuxrc,则启动对应的init进程 start_kernel -rest_init -kernel_init -/sbin/init2.init起来后会去读/etc/inittab配置文件执行对应的启动命令: ::sysinit:/e...
mdev & hotplug实现动态挂载 当SD卡或者usb插入/拔出的时候,会触发hotplug调用mdev创建/移除对应的设备节点,我们可以在这个时候通过配置/etc/mdev.conf来实现动态挂载,当前实现前必须确保linux支持hotplug和mdev功能(/proc/sys/kernel/hotplug: /sbin/mdev)。1. /etc/mdev.conf添加usb/sd对应节点,以及需要在创建/移除时需要执行的脚...
watchdog 使用方法 #include <signal.h>#include <time.h>#include <sys/time.h>#include <linux/watchdog.h>#define WATCHDOG_IOCTL_BASE 'W'#define WDIOC_SETTIMEOUT _IOWR(WATCHDOG_IOCTL_B...
kernel space 执行user space程序 test code:#include <linux/init.h> #include <linux/module.h> #include <linux/moduleparam.h> #include <linux/kernel.h> #include <linux/sched.h> MODULE_LICEN...
libjpeg软解码成rgb888 1. 下载libjpeg source code:https://sourceforge.net/projects/libjpeg/files/latest/download2. 下载libtool source code:http://www.gnu.org/software/libtool/3. 交叉编译libtool: a../configure CC=arm-li...
linux支持ntfs write 1. open kernel fuse config :CONFIG_FUSE_FS2. get ntfs write open source code:https://www.tuxera.com/3. how to buildntfs-3g_ntfsprogs-2017.3.23 a../configure CC=arm-linux-gnueabihf-gcc --h...
signal mask & catch int s, sig; sigset_t set; pthread_t thread_ceva,thread_sync; sigemptyset(&set); sigaddset(&set, SIGCHLD); s = pthread_sigmask(SIG_SETMASK, &set, NULL); if...
nand flash 读写测试 参考链接:https://www.cnblogs.com/pengdonglin137/p/3468953.html测试程序:#include <stdio.h>#include <string.h>#include <sys/types.h> #include <sys/stat.h> #include <fc...
支持ext4日志文件系统 & fat文件系统修复 到https://sourceforge.net/projects/e2fsprogs/下载e2fsprogs源码; 修改编译选项,增加ALL_CFLAGSsed -i -e 's/-DTEST/$(ALL_CFLAGS) &/' lib/e2p/Makefile.inMkdir build;cd ./build ,然后配置config的toolchain:../configur...
apt-get install lib依赖问题 首先使用sudo gedit/etc/apt/sources.list然后将以下内容粘贴到文本的最下方deb cdrom:[Ubuntu 16.04.3 LTS _Xenial Xerus_ - Release amd64 (20170801)]/ xenial main restricteddeb http://mirrors.aliyun.com/ubuntu/ xenial...
小型项目makefile搭建 最近在串一个基于live555的rtsp client,因为要连接camera sdk - rtsp client - live555,所以要写一个基于camerasdk的执行程序来call rtsp client的lib,rtsp client又要call live555的lib。顺便整理一下可执行程序链接动态库/静态库,以及如何生成动态库/静态库的过程;live555源码如何编译: ...
git merge最简洁 转载:https://blog.csdn.net/baidu_31333625/article/details/80767680一、开发分支(dev)上的代码达到上线的标准后,要合并到 master 分支git checkout devgit pullgit checkout mastergit merge devgit push -u origin master1234...