自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (9)
  • 收藏
  • 关注

原创 CAN总线学习笔记

1、CAN总线是一种多主通信模式,即只要总线空闲,总线上任何节点都可以发送报文(不同于像I2C总线的主从通信模式)。2、CAN总线有2种帧格式(标准格式、扩展格式),5种帧类型(数据帧、遥控帧、错误帧、过载帧、间隔帧)。3、标准格式和扩展格式的主要区别是仲裁段中帧ID的长度,标准帧的帧ID长度是11位,扩展帧的帧ID长度是29位。(1)帧起始:由一个显性位(低电平)表示,发送节点发送帧起始。(2)仲裁段:如果有两个或两个以上的节点开始传送报文,那么就会存在总线访问冲突的可能。但是CAN.

2022-03-22 17:47:18 1408

转载 并发与并行的区别

Erlang 之父 Joe Armstrong 用一张5岁小孩都能看懂的图解释了并发与并行的区别并发是两个队列交替使用一台咖啡机,并行是两个队列同时使用两台咖啡机。并发和并行都可以是很多个线程,就看这些线程能不能同时被(多个)cpu执行,如果可以就说明是并行,而并发是多个线程被(一个)cpu 轮流切换着执行。...

2022-03-17 23:54:58 133

原创 project顶行显示项目名称

project要在顶行显示项目名称,对应序号和WBS为0,设置方法:格式→勾选“项目摘要任务”。

2021-10-26 17:08:54 2460

转载 RGB_TTL、LVDS、MIPI接口液晶屏

液晶屏有RGB TTL、LVDS、MIPI DSI接口,这些接口区别于信号的类型(种类),也区别于信号内容。  RGB TTL接口信号类型是TTL电平,信号的内容是RGB666或者RGB888还有行场同步和时钟;  LVDS接口信号类型是LVDS信号(低电压差分对),信号的内容是RGB数据还有行场同步和时钟;  MIPI DSI接口信号类型是LVDS信号,信号的内容是视频流数据和控制指令。一、RGB_TTLTTL接口,数据传输速率不高,传输距离较短,且抗电磁干扰(EMI)能力也比较差,会

2021-09-30 15:36:51 2379

转载 C语言编程思想 — 用结构体实现面向对象和分离

说明:   以下示例是看到Linux中驱动一个比较简单的架构,然后记录下来。  示例的功能是:将led通用的一些驱动代码和硬件相关代码分离开。  什么是通用的驱动代码:比如注册file_operation结构体啊,class类等一些。就算我们修改驱动,这些也不会变动的代码。  硬件相关代码:比如led的引脚地址为什么要这样做?  1.减少耦合性。将通用代码和硬件相关代码分离开。这样,当我们修改LED的驱动的时候,就不用看一段很长的代码。只需要单独修改跟硬件相关代码的那个文件。

2021-08-04 09:52:41 357

原创 Linux嵌入式板卡修改时间并同步到硬件

查看系统时间:#date设置系统时间:#date-s“2021-07-26 15:33:00”将系统时间同步到硬件时钟:#hwclock -w关于hwclock命令用#hwclock --help可以查看说明:hwclock [-r|--show] [-s|--hctosys] [-w|--systohc] -r 或 --show 读取并打印硬件时钟(read hardware clock and print result) -s 或--hctosys将...

2021-07-26 15:41:01 323

原创 关于linux kfifo环形(循环)缓冲区代码难点理解

代码不重复贴,网上大把,针对比较难理解的几句代码注释下,以备忘:1、kfifo的size要求是2的N次方,主要是为满足(fifo->in & (fifo->size - 1) ) 等价于(fifo->in % fifo->size)。2、fifo->in % fifo->size用来求得buffer中的写下标。3、fifo->size - (fifo->in & (fifo->size - 1))表示写下标到buffer尾还有

2021-07-20 16:58:39 418

原创 vmware虚拟机检测不到vspd虚拟串口问题

参考帖子:https://blog.csdn.net/baidu_33232390/article/details/54954931照做后发现vmware并不能检测到虚拟串口,结果发现帖子少写了关键一步:重启电脑!(不只是重启虚拟机,是重启电脑!)。据说是虚拟机不支持热插拔。...

2021-05-11 16:23:18 1599

转载 Qt之JSON生成与解析

转载自:http://blog.sina.com.cn/s/blog_a6fb6cc90101gnxm.htmlJSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使JS

2021-05-10 11:09:29 337

转载 pthread_create传递线程参数需要注意的问题

程序如下void* thread_rountine(void *arg){ int *cnt = (int*)arg; for (int i=0; i<5; ++i) printf("%d-hello\n",*cnt); return 0;}int main(void){ pthread_t pid[2]; int ret; for (int i=0; i<2; ++i) { if (

2021-03-19 17:07:52 171

原创 ubuntu16.04编译android6.0问题汇总

1、安装openjdk-7由于ubuntu16.04默认安装的是openjdk 8,但编译android6.0要求openjdk 7,所以要先安装openjdk 7,ubuntu的电脑无法上网(开发安卓不能上网,就像本来可以直接买火机用,但非得去钻木取火一样SB),只能手动下载deb包,并根据提示一个个解决依赖的问题,每个系统初装软件可能有差异,我的ubuntu16.04装openjdk-7时下了如下包:openjdk-7-jdk_7u95-2.6.4-3_amd64.debopenjdk-7-

2020-06-30 10:16:53 297

原创 imx显示驱动参数详解

struct fb_videomode { const char *name; /* optional */ u32 refresh; /* optional */ u32 xres; u32 yres; u32 pixclock; u32 left_margin; u32 right_margin; u32 up...

2020-04-26 14:29:34 631

原创 shell if [ “x${var}" == “x” ]中x的作用

防止出现语法错误。如果不写x,当${var}为空或未设置时,出现语法错误。加上x后,当${var}为空或未设置时,解释为if [ “x"== "x"] ,依然正确。if [ “x${var}" == “x” ]整句的意思是判断${var}是否为空。...

2020-03-23 14:24:44 12714

原创 imx6 android6 usb驱动能识别,无法挂载

1、插入U盘后,打印提示盘符sda1,指令find . -name sda1查找对应路径为:./dev/block/platform/soc0/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/sda12、而fstab.freescale中的usb挂载路径为:/devices/soc0/soc/2100000.aips-bus/2184000.usb...

2019-11-08 14:20:59 592

原创 imx6q android u-boot 2015.04传递给kernel启动参数的修改方法

之前的思路是修改uboot里的bootargs来修改传递给kernel的启动参数,总是不生效。imx6q android u-boot 2015.04正确的方法是修改:(源码根目录)/device/fsl/imx6/BoardConfig.mk中BOARD_KERNEL_CMDLINE。...

2019-05-15 10:12:44 486

转载 Linux 下framebuffer 帧缓冲的使用

转载地址:https://www.cnblogs.com/chay/p/8043314.html#_label0阅读目录framebuffer 帧缓冲 fb与应用程序的交互  fb的控制 相关结构体 使用实例回到顶部framebuffer 帧缓冲帧缓冲(framebuffer)是Linux 系统为显示设备提供的一个接口,它将显示缓冲区抽象,屏蔽图像硬件的底层差异,允许上层...

2018-10-11 09:05:00 1357

原创 imx6 yocto移植udev-100

imx6q yocto通过bitbake自动生成的根文件系统与之前差异较大,外置sd卡无法挂载,#grep "udevd" rootfs -r发现启动的都不是以前/sbin下的守护进程,变成了/lib/udev/udevd,试图编最新的udev-182,解了一堆的配置与编译的依赖,最后还是链接不过,果断放弃!重新移植udev-100,步骤如下:一、下载udev-100包后,修改Makefile如下...

2018-06-29 18:43:31 1301

原创 imx6 yocto移植minigui-3.0.12

一、下载minigui所需库源码包:zlib-1.2.6.tar.gz、libpng-1.2.37.tar.gz、jpegsrc.v8c.tar.gz、freetype-2.3.9-fm20100818.tar.gz、minigui-res-be-3.0.12、libminigui-gpl-3.0.12.tar.gz、mg-samples-3.0.12解压后,文件目录层次:minigui|——zl...

2018-06-27 16:49:33 1211

原创 imx6q yocto移植vpu

1、在未配置环境变量的干净环境中,cd到源码顶层目录(fsl-release-bsp)配置:$DISTRO=fsl-imx-fb MACHINE=imx6qsabresd source fsl-setup-release.sh -b build-fb2、$bitbake imx-test3、生成的例子程序mxc_vpu_test.out在fsl-release-bsp/build-fb/tmp/w...

2018-05-24 17:55:52 1723

原创 编译mg-samples-3.0.12报错:libminigui_ths.so: undefined reference to `WndClientRect'解决方法

用gcc 5.2.0去编译mg-samples-3.0.12,报错:.../lib/libminigui_ths.so: undefined reference to `WndClientRect' .../lib/libminigui_ths.so: undefined reference to `pixel2rgb' .../lib/libminigui_ths.so: undefined r...

2018-05-18 15:33:20 1702

原创 bitbake报错“AttributeError: 'module' object has no attribute 'lib'”

Traceback (most recent call last):  File "/opt/fsl-imx-fb/4.1.15-1.2.0/sysroots/i686-pokysdk-linux/usr/lib/python2.7/site.py", line 553, in &lt;module&gt;    main()  File "/opt/fsl-imx-fb/4.1.15-1.2.0...

2018-05-08 19:57:55 1527 1

原创 ubuntu离线安装技巧

因某些原因,开发用的电脑不能联网,如果要离线在ubuntu上安装软件包,经常会因不清楚依赖关系而不知要下哪些包,但如果另有台可联网的电脑,用的ubuntu版本也和离线机一致,则可用如下方法解决:比如离线ubuntu上报错:bison: Command not found显然是没安装bison,在联网ubuntu上先:$sudo apt-get autoremove bison卸载掉

2017-08-10 18:19:22 1659

转载 联合体嵌套结构体的问题

原帖:http://bbs.csdn.net/topics/392021186?page=1#include  typedef union{    unsigned int u;    struct    {        unsigned char a :1;        unsigned char b :1;        unsigned char c 

2017-06-16 10:44:00 5138 3

转载 linux tslib-1.4移植

1、下载tslib-1.4.tar.gz:http://download.csdn.net/source/31774492、解压安装tslib:# tar -zxvf tslib-1.4.tar.gz# cd tslib# ./autogen.sh# echo "ac_cv_func_malloc_0_nonnull=yes" > arm-none-linux-gn

2017-03-31 19:15:04 596

转载 安卓adb shell中mv引起cross-device link错误解决办法

安卓的adb shell中,没有cp命令,使用mv文件的时候出现cross-device link错误。出现错误的原因是mv命令不允许将存储卡中的文件复制到/system/或/data/分区中,因为两者被认为是在不同的设备上。# mv /sdcard/tcpdump /data/local/tcpdumpfailed on '/sdcard/tcpdump' - Cross-device

2017-03-28 09:16:45 6074

转载 Java内部类的使用小结

原文地址:http://android.blog.51cto.com/268543/384844/内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。*内部类可以是静态static的,也可用public,default,protected和private修饰。(而外部顶级类即类名和文件名相同的只能使用public和default)。 注意:内部类是一个编译时的

2017-03-02 17:16:02 228

转载 ARM开发板嵌入式linux系统与主机PC通过串口传输文件

我想如果要从PC机下载东西到开发板的嵌入式linux系统里面,很多人首先会想到用tftp sftp等网络工具从网口下载。但如果网络用不了,只能通过串口下载怎么办呢?这个时候有两个工具能帮到你:一个是zmrx、zmtx,另外一个是lsz、lrz。个人觉得zmrx/zmtx没有lsz/lrz稳定,建议还是用后者。下面介绍一下lsz/lrz的使用方法。    一、编译lrzsz并下载到开

2017-02-21 13:49:26 4652 2

原创 imx6 device tree lvds屏配置

imx6qdl-sabresd.dtsi中lvds接口显示配置如下:&ldb { status = "okay"; lvds-channel@0 {  fsl,data-mapping = "spwg";  fsl,data-width = ;  primary;  ipu_id = ;  disp_id = ;  status = "okay";  dis

2017-02-16 09:46:39 3781

原创 android OutputStream向sd卡中文件写入操作立即关机数据清0问题

用OutputStream写入Sd上的文件,写完后会有打印提示,如果立即把机器断电,再打开被写入的文件,发现成了0字节。一直怀疑是写在缓存,没同步到磁盘,于是在write()后加了个flush(),结果还是0字节。是因OutputStream是字节流,其写入操作不会用到缓存:参考:http://book.51cto.com/art/200907/140872.htm所以flush根本没

2017-01-23 11:35:24 3333 1

原创 Yocto Toolchain编译busybox

1、在官网https://busybox.net下载最新源码1.26.2;2、先导入环境变量: . /opt/fsl-imx-fb/4.1.15-1.2.0/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi3、cd到busybox的源码文件夹busybox-1.26.2,配置编译选项$make menuconfig:

2017-01-23 09:15:52 6912 3

转载 解决:app:compileDebugNdk 系统找不到指定的路径

在编译包含jni库时,报错::app:compileDebugNdk系统找不到指定的路径。Execution failed for task ':app:compileDebugNdk'.原因(转自http://blog.csdn.net/yihui8/article/details/48949429#):默认情况下,存在src/main/jni文件夹时,gradle生成脚

2017-01-12 14:31:24 1097

原创 android2.3预置第三方apk到system.img

环境:imx51 android2.3.71.在编译根目录的packages\apps下创建存放第三方apk名称命名的文件夹,举例:MyApp,若有用到so库,可在MyApp下创建lib目录,存放so文件,举例:MyLib.so2.将第三方apk,如MyApp.apk放到MyApp文件夹中,并创建Android.mk文件,内容如下:LOCAL_PATH := $(call my-dir

2017-01-10 18:33:38 562

原创 ubuntu12.4安装jdk1.6

1、在oracle下载安装包:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR,得到jdk-6u45-linux-i586.bin;2、解压:$./jdk-6u45-linux-i586.bin;3、将解压得到

2017-01-09 17:17:54 534

原创 imx6q yocto修改device tree中uart管脚配置

因自己做的板子上把SD3_DAT6和SD3_DAT7复用成uart1的调试口,公版代码里是用于usdhc3,需修改device tree中的管脚配置,方法如下:1、修改arch/arm/boot/dts/imx6qdl-sabresd.dtsi(此文件作为头文件被imx6q-sabresd.dts包含):在&iomuxc子结点的pinctrl_uart1: uart1grp中,修改pin脚

2016-12-29 18:57:29 3362

转载 我眼中的Linux设备树(Device tree)

1、概述设备树(Device tree)是一套用来描述硬件属相的规则。ARM Linux采用设备树机制源于2011年3月份Linux创始人Linus Torvalds发的一封邮件,在这封邮件中他提倡ARM平台应该参考其他平台如PowerPC的设备树机制描述硬件。因为在此之前,ARM平台还是采用旧的机制,在kernel/arch/arm/plat-xxx目录和kernel/arch/arm/ma...

2016-12-29 10:55:50 2639

原创 yocto 串口打印异常问题排查

在移植yocto imx6q时,u-boot出现过打印消息正常,但console无法输入,一直从serial驱动到console初始化一步步排查,都正常,郁闷至极,无意想到是不是串口输入脚搞错了,一对照,果然是pin脚错了一个序号,更正后输入正常。今天做到kernel这一步了,在menuconfig中尽最大可能保留了官方标准配置,只设置了System Type -> Freescale i.M

2016-12-19 15:36:18 787

原创 imx6 yocto编译备忘

1、git把源码下到fsl-release-bsp后,配置编译选项:$DISTRO=fsl-imx-fb MACHINE=imx6qsabresd source fsl-setup-release.sh -b build-fb-b 可以指定你要将文件编译到哪个目录2、全编译:$bitbake fsl-image-machine-test如有报错:ERROR: Tas

2016-12-03 11:32:55 6223

原创 解决bash和dash兼容性导致的问题

最近写个imx5 android自动化编译脚本,在脚本中执行“source build/envsetup.sh”时,总提示source: not found,经网查, 是Ubuntu 6.10开始,/bin/sh默认link到dash而不是bash,故envsetup.sh中有些bash语句,dash解析不了。解决方法有二:1、临时改法:在需要bash的脚本的第一行写上"#!/bin/bash

2016-11-29 16:32:54 2841

原创 解决mx51-bbg串口ttymxc1只能发不能收的问题

调试过程大概记录如下:1、硬件上把ttymxc1的tx和rx直连;2、通过在kernel中的mxcuart_rx_chars()//mxc_uart.c加打印显示,控制台(ttymxc0)发送的回车命令可正常收到,可排除驱动问题;3、ttymxc1的tx循环发送单字节数据(0xa),在mxcuart_int()中加打印发现if(sr2 & MXC_UARTUSR2_RDR)并示触发中断

2016-09-02 15:16:02 1664

原创 解决ubuntu上eclipse无法打开,提示jvm版本太旧,至少要jdk1.8以上

1.下载JDK 1.8(linux版);2.解压到指定目录(我的:/usr/lib/jdk1.8.0_101);3.配置系统环境变量:$sudo vi /etc/profiled在最后加入:#  set java environmentexport JAVA_HOME=/usr/lib/jdk1.8.0_101 export JRE_HOME=${JAVA_HO

2016-08-22 21:46:34 3750

海思3559AV100ES.rar

海思3559AV100ES.rar

2021-07-19

autologin.rar

真正能实现yocto自动root登录的正确方法,无需手动输入root。网络上有些方法并不完善,有些可自动登录,但串口端输入ctrl+c就不响应了。

2020-04-21

imx-test-3.0.35-4.0.0.tar.gz

imx-test-3.0.35-4.0.0测试代码,可用于学习imx系列功能模块的实现

2019-06-20

imx-vpu.rar

i.MX_VPU_Application_Programming_Interface_Linux_Reference_Manual

2019-06-06

jdk1.5-linux-i586

适用Linux jdk1.5

2016-07-25

Linux常用命令全集-CHM格式

Linux常用指令全集,很实用,CHM格式,可搜索。

2009-12-25

DVB数字电视机顶盒原理

1.DVB机顶盒的概念与分类 2.DVB机顶盒的工作原理 3.DVB机顶盒的结构 4.DVB机顶盒的主要技术

2009-07-08

I2C总线协议(中文)

I2C 总线支持任何 IC 生产过程( NMOS CMOS 双极性)。 两线――串行数据 SDA 和串行时钟SCL 线在连接到总线的器件间传递信息 。每个器件都有一个唯一的地址识别 (无论是微控制器 LCD驱动器 存储器或键盘接口) 而且都可以作为一个发送器或接收器(由器件的功能决定)。

2009-07-08

手机板PCBLAYOUT

6层手机板,可供学习学习学习学习学习学习学习学习

2008-10-19

空空如也

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

TA关注的人

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