自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

TonyHo's NotePad

tonyiot.com 373466062ATqq.com

  • 博客(33)
  • 资源 (14)
  • 收藏
  • 关注

原创 Yocto i.MX6 (TQIMX6) (04) : 使用mjpg-streamer做一个WebCam Server

libjpeg的编译下载后直接对configure指定即可。或者使用Yocto编译,参考我的其他与Yocto相关博文。mjpg-server的编译mjpg-streamer已经很老了,且sourceforge中的下载文件,默认是deb格式的,因此需要找到对应的源代码下载地址:http://sourceforge.net/projects/mjpg-streamer/files/mj

2015-12-26 19:02:28 3029

原创 Yocto tips (19): Yocto SDK Toolchian的使用

在使用之前需要先source env,导入各种环境变量:source ../qt5_sdk/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi然后我们可以查看一下bash的env了,下面是多出来的一些env:declare -x AR="arm-poky-linux-gnueabi-ar"declare -x ARCH

2015-12-23 17:03:41 8960 6

原创 Yocto tips (18): Yocto SDK Toolchian中静态库的添加

Toolchian中静态库的添加没有静态库,是无法静态编译应用程序的,因此,为了方便,还需要在SDK中添加静态库,例如libc。这个特性在只需要开启即可,在local.conf中添加一行:SDKIMAGE_FEATURES_append = "staticdev-pkgs"Toolchian中静态库的验证然后重新build SDK,并安装SDK之后,我们可以验证其是

2015-12-23 16:32:30 5961 1

原创 Yocto tips (16): Yocto 制作SDK分发Toolchain 脱离Yocto环境开发

Yocto中SDK有两种:只有Toolchain,或者Toolchain+某类GUI特性有针对某个Distribution的SDK,即含有Toolchian也含有这个Distrbutition特殊的文件下面分别说明。第一类这类的软件包有如下这些:其实就是两类:meta-toolchainmeta-toolchain-qt/qte/qt5后

2015-12-23 16:22:39 11833 2

原创 Yocto tips (17): Yocto License问题:restricted license not whitelisted in LICENSE_FLAGS_WHITELIST

Yocto中可以配置一个Distrbution的License,然后所有的软件包,都需要符合这个license才可以被shipped到image中,如果我们需要使用违反此license的软件包,那么就需要额外配置。例如,在bitbake编译vlc的时候出现下面的错误log:$ bitbake vlcParsing recipes: 100% |######################

2015-12-23 15:53:30 6713

原创 Yocto tips (9): Yocto 软件包的下载地址在哪

一般而言,可以使用Yocto tips (5): Yocto如何更改source code的下载与git clone地址中提到的方法,但是有的时候一些地址是在bb文件include的文件中,而inc文件又可能层层包含,查找比较繁琐,因此直接到env中查找比较快。例如要找到imx kenrel的fetch地址可以使用下面命令:bitbake -e linux-imx | grep ^SRC_

2015-12-23 15:04:55 5019

原创 Yocto tips (10): Yocto hellworld 添加一个软件包

Yocto中一个软件包是放在bb文件中的,然后很多的bb文件集成一个recipe(配方),然后许多的recipe又组成一个meta layer,因此,要添加一个包其实就是在recipe下面添加一个bb(bitbake配置文件)。下面使用helloworld作为一个例子。clone bb文件首先是进入到一个recipe目录下,例如下面就是到了recipes-graphics:$ pwd

2015-12-23 09:43:20 12192 11

原创 Yocto tips (15): Yocto中的包管理器

使用包管理器在local.conf中使能即可:然后编译后就会有rpm包了:配置文件服务器可以使用ngix和apache,但是我们也可以只用使用python:python -m SimpleHTTPServer打开浏览器可以看到:在机器上面查看包的statussmart status在机器上面配置channel

2015-12-22 16:11:16 8356 1

原创 Yocto tips (14): Yocto中编译链的配置变更(tuning)

这个在我们自己编译toolchain以及针对不同的硬件自己调整toolchain的时候用得多。变更方法也很简单,只需要在poky对应的配置查找一个合适的即可。例如针对armv7而言,我们可以到下面文件查找一个合适的来使用:将自己选择好的写入到local.conf中:

2015-12-21 22:44:26 5340

原创 Yocto tips (13): Yocto 查看软件包的依赖关系

查看一个文件包的依赖,我们可以使用图形化来查看,下面是一些官方说明:例如我们要查看weston的依赖:bitbake --ui=depexp -g weston或者 bitbake -g -u depexp weston这个会列出不同的依赖,例如中间的是编译时候需要依赖的东西,结果如下:

2015-12-21 22:37:03 6359

原创 Yocto i.MX6 (TQIMX6) (03) : wifi网卡的相关工具wpa_supplicant与dhcp

加密与认证无线网卡驱动起来之后,还需要在用户态的一些程序支持,从而可以寻找热点并连接热点,访问网络。wifi连接时候的有出于两个方面的考虑:连接认证传输数据的加密出现了不同的标准,这些认证/加密常见的有下面这些:open(即不加密)WEP(WEP)WPA(TKIP)WPA2(AES)加密认证工具而针对不同的认证/加密就有不同的软件来辅助我们wifi设

2015-12-21 22:24:34 5649

原创 Yocto tips (12): 使用Yocto帮组我们寻找难找的固件与固件放置路径

有很多的硬件需要firmware才能工作,而这些firmware需要不仅仅需要找到,还需要放置到正确的位置,一般这个位置是/lib/firmware下面,但是很多也不尽然。手动去查找这些固件,容易出现遗漏或者混淆,也有可能是年久不匹配了的固件,例如在我前面的博客中:Yocto i.MX6 (TQIMX6) (02) : USB Wifi (TP-Link WN821N等设备)AR9170的Li

2015-12-21 21:15:36 3027

原创 Yocto i.MX6 (TQIMX6) (02) : USB Wifi (TP-Link WN821N等设备)AR9170的Linux内核支持与固件使用

说明固件的下载见博客末尾。Wifi模块有一个TP-Link的WN821N的USB无线网卡,查到UbuntuPC上面用lsusb看了看:内核支持在内核中搜索lsusb输出的设备VID与PID,可以看到是有支持的,直接在内核中配置即可:这个是Linux社区对这个USB Wifi的支持,在这个Menuconfig选项的help中的网站里面很多东西都已经无法

2015-12-21 11:09:42 3283

原创 Yocto tips (11): Yocto如何往最终的rootfs中添加软件

在Yocto中如果我们期望在rootfs中添加一些软件,例如可能是bash,可能是lsusb等,那么,我们可以有两种方法:手动添加,一个个文件的拷贝在bb文件中添加安装项目,让Yocto自动帮助我们添加第一种方法需要手动将软件包的所有文件以及依赖都一个个添加进去,耗时耗力且易错,因此使用第二中方法比较合适。Yocto中Rootfs中添加软件包的步骤找到打包roo

2015-12-21 10:34:24 18708 2

原创 Yocto tips (8): Yocto 如何加快软件包的下载 如何只下载所有需要的软件包而不编译

加快下载Yocto中下载是最耗时的,因此我们可以尽可能的开启最多的并行数量。对此,我们可以在local.conf中将并行数目调大,例如我的CPU 是E3-1230 v2, 8核,所以我可以开启16个线程来下载,因为我们的网速慢,所以其实这些下载操作并非CPU密集型任务,很多包也很小,所以同时IO也不密集,因此可以适当调大:效果如下:下载所有需要的软件包而不编译有

2015-12-20 13:57:53 8065

原创 Yocto tips (7): Yocto Bitbake的clean与cleanall以及cleansstate的区别

Yocto中对于不同的Package,有不同的task,即可以执行不同的操作,有一些是所有包共通的,例如clean,build等。我们可以使用下面命令来查看一个包都有哪些可执行的task:bitbake Package -c listtasks图示:我们可以从里面看到clean与cleanall以及cleansstate的区别。

2015-12-20 13:46:36 27800 6

原创 Yocto tips (6): Yocto中如何共享已经下载的文件

Yocto的下载耗时可能会超过编译的时间,因此大家都希望下载一次后大家都用共用下载好了的文件,而不要再去下载。Yocto中所有下载了的以及git clone的文件都放在环境变量DL_DIR指示的目录下,这个目录默认在machine build directory下面。因此要共享下载文件只需要指定此变量到下载好了的目录即可,可以在local.conf中指定即可:

2015-12-20 12:36:04 4408

原创 Yocto tips (5): Yocto如何更改source code的下载与git clone地址

现象Yocto中在fetch一些软件包的时候经常出现一天也下载不下来,这种情况极大浪费了我们的时间。例如,下面有三个Package下载了一天也没有完成:解决方法确定下载的地址,手动下载先确定软件包的下载地址,例如对于opencv与opencv-samples软件包:可以看到他们的git地址都是一样的,因此,我们可以手动来git clone:

2015-12-20 11:53:02 12743 3

原创 start kernel 之后没有任何输出与uboot无法将bootargs传入内核的调查方法与解决之道

可能的原因昨晚在Yocto中适配TQIMX6的时候,bootm之后出现start kenrel之后没有任何输出。对此一般有多种调试方法,与调查方向,可能的原因如下级类:串口的引脚是否配置正确,例如pincltrl指定的Debug串口引脚,串口选错没有串口的直连与交叉问题查看bootargs传过去的console=是否正确,例如ttyXX是否正确,波特率内核使用的comman

2015-12-20 09:56:12 5010 4

原创 Yocto i.MX6 (TQIMX6) (01) : 3.14.28内核的适配

Freesacle Yocto的环境配置与编译到Freescale下载imx6 Linux Source Code,解压里面的fsl-yocto命名的压缩包得到Yocto setup手册:Freescale_Yocto_Project_User's_Guide.pdf然后按照里面的步骤操作即可编译出一个完整的distribution,当然很可能会因为网络或者一些Package早已不

2015-12-19 23:42:56 12251

原创 Yocto tips (3): Yocto 如何重新编译Linux内核与dtb,并放到deploy目录?

编译内核,并生成uImage+dtb,编译的命令如下:bitbake linux-imx -C compile注意这里的-C的C是大写,和小写的c是有区别的。注意这里的linux-imx是针对imx的内核,你的内核名字可能不一样,关于如何确定一个包的名字,请看:Yocto tips (4): Yocto 如何确定(找到)一个包的名字

2015-12-19 23:36:30 14158 2

原创 Yocto tips (4): Yocto 如何确定(找到)一个包的名字

使用下面命令来却确定:bitbake -s | grep XXX其中XXX为包的关键字,例如linux或者uboot,这样就可以看到所有带有关键字的包了,如下图,就是为了找到内核:

2015-12-19 23:35:17 7555 3

原创 Yocto tips (2): Yocto Linux内核编译目录在哪?

内核放在了哪里? 这个是放在了如下位置,我们可以用下面命令来确定:bitbake -e linux-imx  | grep ^S=图示:

2015-12-19 23:19:46 7345

原创 Yocto tips (1): Yocto 编译后文件放在了哪里 输出文件位置

编译完成后内核以及rootfs,内核,uboot以及dtb会放在相对于build目录的tmp/deploy/images/MACHINE/下面,这里MACHINE需要可能为空(对于老版本的poky/yocto),也可能是你的板子名字,例如sabresd。对于toolchain,那么放在mp/deploy/sdk/MACHINE/下。图片参考博客:Yocto i.MX6 (T

2015-12-19 23:09:10 9285

原创 Freescale IMX6 Android (7): Android启动动画死循环 Home界面不出来与pid XXX exit 可能的原因汇总

或许你某一次编译了整个Android,然后烧进去,结果屏幕中一直显示Android Bootanimation,Home界面一直不出来。对此,可能有以下五类原因,往这几个方向考虑与调查可能可以提供一些线索。前面两类是属于软件的,后面两类属于硬件。最后一类属于软件硬件都相关。第一类:binder相关binder: release 3000:3000 transaction 12769

2015-12-17 22:16:34 5306

原创 Freescale IMX6 Android (6): 向ServerManager中添加Service

简述前面的博客中,我们直接添加C lib到APK中,然后使用LoadLibrary加载这个库,同时添加一个class来作为中间层,直接使用这个C库中的native函数来控制硬件,这种做法将硬件与APK牢牢绑定,如果有多个APP来访问同一个硬件就会出现问题,代码也会有很多的重复,在Android中,我们使用Android的SystemServer向ServiceManager来将硬件的功能添

2015-12-17 17:08:34 1861

原创 PPT分享: Linux启动流程 关于initrd与initramfs的区分及其发展历程

在电脑的角落发现自己在2013年做的组内技术分享与交流的关于Linux启动的PPT:FS involved in the Linux booting。下载地址:Linux启动流程 initrd与initramfs的区别截图如下:

2015-12-16 11:12:25 1784

原创 Freescale IMX6 Android (5): APP通过JNI控制LED

本篇博客接上一篇的:Freescale IMX6 Android: 基于TQIMX6 给Toolbox添加LED控制程序,上一篇是直接将控制程序放到了Toolbox,本篇则是通过JNI调用C库来完成LED的控制,即APP--> C --> HW。APK的编写(源码见末尾)编写主要需要注意下面个事项与步骤1. 更改xml在layout中添加控件2. Checkbox与Butt

2015-12-12 16:14:54 2442

原创 Freescale IMX6 Android (4): 基于TQIMX6 给Toolbox添加LED控制程序

本篇博文是为了后面的Android HAL层使用LED而做的准备,板子基于TQIMX6Q,Android 4.3,Android已经编译完成了,如果还没有可以参考前面我的博文:Freescale IMX6 Android: 使用HDMI作为Android显示输出的配置,以及TQ提供的开发者手册。LED的硬件连接LED4~6是给用户使用的,如下:可以看到是GPIO3_21

2015-12-10 20:47:31 2750

原创 Freescale IMX6 Android (3): 手动制作Android启动用SD卡 省去MFGTOOLS烧写

Freescale IMX6的烧写方式在Windows下面一般使用MFGTools,但是TQ提供的MFGTools在Windows下面无法工作,USB的驱动不正常。于是想到Linux下面的烧写方式,结果一样出现问题,且因为TQ没有提供一些烧写程序的源码,因此无法更改与调试。因此TQ提供的两种烧写Android的方式都无法使用了,加之前面博文中,我也尝试使用NFS来启动,也没有达到需要的效果,因此这

2015-12-07 23:36:19 5324

原创 Freescale IMX6 Android (2): Android NFS启动问题汇总

前面的一篇博文中,提到了要使用自己编译出来的Android来启动,且使用NFS的方式来启动Android,但是在今天的尝试中却遇到了问题。且最终没有解决,但是找到了替换方案,替换方案见下一篇博文。遇到的问题汇总如下,希望可以帮助遇到同样问题的人。板子用的还是TQIMX6Q(见以前的博文)。Android NFS启动的rootfs制作与启动要制作Android NFS rootfs,

2015-12-07 18:21:19 2067

原创 Freescale IMX6 Android (1): 使用HDMI作为Android显示输出的配置

环境准备与编译个人使用的是Ubuntu 12.04 X64,针对环境的配置,百度即可。板子使用的是TQIMX6Q。lunch目标但是,编译的时候使用的是TQ提供的脚本build_sh,根据这个脚本,可以看到lunch的目标是sabresd_6dq:$ echo $TARGET_PRODUCT sabresd_6dq即,TQIMX6的Android lunch目标其实使用的是sa

2015-12-05 17:57:33 9244

原创 废物利用: 动手将笔记本的显示器改成多功能显示器 可用于电视盒子以及嵌入式开发

方案比较买了一个Cortex-A8的开源板子BeagleBone Black,其输出是HDMI,而我的显示器是VGA的。对此想到了几种方法,各有优劣:HDMI显示方案对比方案详细设备优点缺点价格1HDMI->VGA 转换器简单易用需要VGA显示器几十2HDMI显示器方便占用面积大1000左右

2015-12-05 17:34:22 23864 2

USBHID 讲解

USB HID描述符详细讲解文档,主要描述了USB HID的概念,还有一些例子,重点内容已经加红色标注了。

2017-10-13

grub2详解教程

Grub2的中文文档, 讲解了grub2如何编译, 配置, 安装, 加载主题, 如何使用grub2来启动系统等.

2017-02-13

grubfordos

用来加载和启动Windows PE,或者Windows 系统的bootloader

2017-02-13

Windows ARM Hex Converter V5.2

最新版的ARM 指令转换器,可以转换为Thumb与ARM指令

2016-08-02

ARM Thumb Instruction

Thumb指令集, 非常详细

2016-08-02

APCS ARM Procedure Call Standard

ARM调用规范

2016-08-02

AR9170 (支持TP Link WN821N ) Linux 固件 firmware

参考我的博客: 支持的设备如下: 3Com Dual Band 802.11n USB 0x0cf3 0x1010 Actiontec 802AIN Wireless N 0x1668 0x1200 Airlive X.USB 11a/b/g/n 0x1b75 0x9170 Arcadyan WN7512 0x083a 0xf522 Atheros 9170 0x0cf3 0x9170 Atheros TG121N 0x0cf3 0x1001 AVM FRITZ!WLAN USB Stick N 0x057c 0x8401 AVM FRITZ!WLAN USB Stick N 2.4 0x057c 0x8402 Cace Airpcap NX 0xcace 0x0300 D-Link DWA-130 D 0x07d1 0x3a0f D-Link DWA-160 A1 0x07d1 0x3c10 D-Link DWA-160 A2 0x07d1 0x3a09 H3C Dual Band 802.11n USB 0x0cf3 0x1011 IO-Data WNGDNUS2 0x04bb 0x093f NEC WL300NU-AG 0x0409 0x02b4 NEC WL300NU-G 0x0409 0x0249 Netgear WN111 v2 0x0846 0x9001 Netgear WNA1000 0x0846 0x9040 Netgear WNDA3100 (v1) 0x0846 0x9010 500mA Planex GWUS300 0x2019 0x5304 Proxim ORiNOCO 802.11n USB 0x1435 0x0804 Sphairon Homelink 1202 0x0cde 0x0027 TP-LINK TL-WN821N v2 0x0cf3 0x1002 500mA WNC Generic 11n USB Dongle 0x1435 0x0326 Z-Com UB81 BG 0x0cde 0x0023 Z-Com UB82 ABG 0x0cde 0x0026 Zydas ZD1221 0x0ace 0x1221 Zyxel NWD271N 0x0586 0x3417

2015-12-21

imx6 Yocto 内核补丁

参考博客:Yocto i.MX6 (TQIMX6) (01) : 3.14.28内核的适配

2015-12-19

Linux启动流程 initrd与initramfs的区别

Linux启动流程 initrd与initramfs的区别,以前做的一个组内交流活动ppt

2015-12-16

imx6 手动制作Android启动用SD卡脚本与fstab

我的博文中提到的脚本, 博文位置:http://blog.csdn.net/sy373466062/article/details/50208449

2015-12-10

Device Tree DTB视频教程Part1,分卷1

Device Tree DTB视频教程,是一个组内的分享。 因为csdn的size限制,Part1有三卷。

2015-10-22

51单片机完整课程设计上位机实时曲线状态机详细注解

详细内容: http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4375941&bbs_page_no=1&search_mode=3&search_text=QQ373466062&bbs_id=9999 对应上位机: http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4401766&bbs_page_no=1&search_mode=3&search_text=QQ373466062&bbs_id=9999

2011-05-01

LM317中文资料 注意不是1117 而是317

就是317的中文pdf 没有什么太大的用处 备份而已

2010-06-30

交通灯 51单片机 四位数码管显示倒计时

没有完全写好 但是核心已经解决 大家可以修改一下即可

2009-12-16

空空如也

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

TA关注的人

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