- 博客(42)
- 资源 (9)
- 收藏
- 关注
原创 project日历共享
在已修改日历的project计划中依次点击:文件 - 信息 - 管理器(组织全局模板),在弹窗中点“日历”标签栏,将右侧已修改的日历“标准”复制到左侧全局日历“标准”,即可。
2024-05-15 17:35:39 175
原创 CAN总线学习笔记
1、CAN总线是一种多主通信模式,即只要总线空闲,总线上任何节点都可以发送报文(不同于像I2C总线的主从通信模式)。2、CAN总线有2种帧格式(标准格式、扩展格式),5种帧类型(数据帧、遥控帧、错误帧、过载帧、间隔帧)。3、标准格式和扩展格式的主要区别是仲裁段中帧ID的长度,标准帧的帧ID长度是11位,扩展帧的帧ID长度是29位。(1)帧起始:由一个显性位(低电平)表示,发送节点发送帧起始。(2)仲裁段:如果有两个或两个以上的节点开始传送报文,那么就会存在总线访问冲突的可能。但是CAN.
2022-03-22 17:47:18 1557
转载 并发与并行的区别
Erlang 之父 Joe Armstrong 用一张5岁小孩都能看懂的图解释了并发与并行的区别并发是两个队列交替使用一台咖啡机,并行是两个队列同时使用两台咖啡机。并发和并行都可以是很多个线程,就看这些线程能不能同时被(多个)cpu执行,如果可以就说明是并行,而并发是多个线程被(一个)cpu 轮流切换着执行。...
2022-03-17 23:54:58 152
转载 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 2601
转载 C语言编程思想 — 用结构体实现面向对象和分离
说明: 以下示例是看到Linux中驱动一个比较简单的架构,然后记录下来。 示例的功能是:将led通用的一些驱动代码和硬件相关代码分离开。 什么是通用的驱动代码:比如注册file_operation结构体啊,class类等一些。就算我们修改驱动,这些也不会变动的代码。 硬件相关代码:比如led的引脚地址为什么要这样做? 1.减少耦合性。将通用代码和硬件相关代码分离开。这样,当我们修改LED的驱动的时候,就不用看一段很长的代码。只需要单独修改跟硬件相关代码的那个文件。
2021-08-04 09:52:41 410
原创 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 381
原创 关于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 463
原创 vmware虚拟机检测不到vspd虚拟串口问题
参考帖子:https://blog.csdn.net/baidu_33232390/article/details/54954931照做后发现vmware并不能检测到虚拟串口,结果发现帖子少写了关键一步:重启电脑!(不只是重启虚拟机,是重启电脑!)。据说是虚拟机不支持热插拔。...
2021-05-11 16:23:18 1817 1
转载 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 409
转载 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 200
原创 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 328
原创 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 702
原创 shell if [ “x${var}" == “x” ]中x的作用
防止出现语法错误。如果不写x,当${var}为空或未设置时,出现语法错误。加上x后,当${var}为空或未设置时,解释为if [ “x"== "x"] ,依然正确。if [ “x${var}" == “x” ]整句的意思是判断${var}是否为空。...
2020-03-23 14:24:44 13394
原创 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 639
原创 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 522
转载 Linux 下framebuffer 帧缓冲的使用
转载地址:https://www.cnblogs.com/chay/p/8043314.html#_label0阅读目录framebuffer 帧缓冲 fb与应用程序的交互 fb的控制 相关结构体 使用实例回到顶部framebuffer 帧缓冲帧缓冲(framebuffer)是Linux 系统为显示设备提供的一个接口,它将显示缓冲区抽象,屏蔽图像硬件的底层差异,允许上层...
2018-10-11 09:05:00 1450
原创 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 1358
原创 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 1241
原创 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 1769
原创 编译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 1776 3
原创 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 <module> main() File "/opt/fsl-imx-fb/4.1.15-1.2.0...
2018-05-08 19:57:55 1579 1
原创 ubuntu离线安装技巧
因某些原因,开发用的电脑不能联网,如果要离线在ubuntu上安装软件包,经常会因不清楚依赖关系而不知要下哪些包,但如果另有台可联网的电脑,用的ubuntu版本也和离线机一致,则可用如下方法解决:比如离线ubuntu上报错:bison: Command not found显然是没安装bison,在联网ubuntu上先:$sudo apt-get autoremove bison卸载掉
2017-08-10 18:19:22 1832
转载 联合体嵌套结构体的问题
原帖: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 5207 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 639
转载 安卓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 6238
转载 Java内部类的使用小结
原文地址:http://android.blog.51cto.com/268543/384844/内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。*内部类可以是静态static的,也可用public,default,protected和private修饰。(而外部顶级类即类名和文件名相同的只能使用public和default)。 注意:内部类是一个编译时的
2017-03-02 17:16:02 252
转载 ARM开发板嵌入式linux系统与主机PC通过串口传输文件
我想如果要从PC机下载东西到开发板的嵌入式linux系统里面,很多人首先会想到用tftp sftp等网络工具从网口下载。但如果网络用不了,只能通过串口下载怎么办呢?这个时候有两个工具能帮到你:一个是zmrx、zmtx,另外一个是lsz、lrz。个人觉得zmrx/zmtx没有lsz/lrz稳定,建议还是用后者。下面介绍一下lsz/lrz的使用方法。 一、编译lrzsz并下载到开
2017-02-21 13:49:26 4686 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 3842
原创 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 3399 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 7025 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 1134
原创 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 598
原创 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 557
原创 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 3425
转载 我眼中的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 2790
原创 yocto 串口打印异常问题排查
在移植yocto imx6q时,u-boot出现过打印消息正常,但console无法输入,一直从serial驱动到console初始化一步步排查,都正常,郁闷至极,无意想到是不是串口输入脚搞错了,一对照,果然是pin脚错了一个序号,更正后输入正常。今天做到kernel这一步了,在menuconfig中尽最大可能保留了官方标准配置,只设置了System Type -> Freescale i.M
2016-12-19 15:36:18 825
原创 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 6277
原创 解决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 3168
原创 解决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 1704
I2C总线协议(中文)
2009-07-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人