://www.videolan.org/developers/x264.html 2.2 解压、配置X264库 [wbyq@wbyq tiny4412]$ tar xvf /mnt/hgfs/linux-share-dir...--target-os=linux --enable-gpl --extra-cflags=-I/home/wbyq/work/tiny4412/x264-master/_install/include...”目录拷贝到目标开发板上。...将库拷贝到开发板之后,再将“ffmpeg-4.2.2/_install/bin/ffmpeg” 可执行文件拷贝到开发板的bin目录下。...下面是在开发板的终端运行ffmpeg命令效果: [root@tiny4412 ]# ls bin etc linuxrc nfs.sh root
前言 Tiny4412开发是友善之臂推出的Android、Linux学习开发板,CPU采用三星的EXYNOS4412,32位芯片,属于Cortex-A系列,主频是1.5GHZ,可以运行ubuntu、Android5.0...核心板如图: 下面是开发板的实物图: 开发板的配置: 2....PC机编译、在嵌入式开发板运行这种模式就叫交叉编译。 交叉编译器在开发板的光盘里有提供,直接拷贝到PC机Linux下解压,配置环境变量接口。 详细操作步骤如下: 1....烧写到开发板测试 dd iflag=dsync oflag=dsync if=./E4412_N.bl1.bin of=/dev/sdb seek=1 参数: if=..../main.bin (1)查看原理图,查找LED的接线位置 tiny4412开发板是分两层设计的,一个核心板,一个底板,LED灯是焊接在核心板上面,原理图就得打开核心板这份。
当前用的开发板是友善之臂的Tiny4412,官方提供了分区工具,可以将SD卡分区,将制作好的内核、uboot、文件系统映像、配置脚本放在SD卡里,然后开发板选择SD卡启动,就可以通过uboot完成EMMC...根文件系统映像制作需要用到make_ext4fs命令,这个工具在光盘里也有,是一个压缩包,解压到PC机Linux系统下就可以使用。...配置内核: # cp tiny4412_linux_defconfig .config 制作根文件系统的方式: make_ext4fs -s -l ...,设置uboot从刚才解压文件系统的分区启动,重启开发板,最后完成挂载。...TINY4412 # fdisk -c 1 1024 1024 1024 TINY4412 # ext2format mmc 1:2 (2)打包PC机的rootfs文件系统 [wbyq@wbyq work
前言 根文件系统是Linux内核启动之后挂载的第一个文件系统,上篇文章里已经介绍过,如何使用busybox来制作根文件系统。...PC机上,嵌入式开发板通过网络到PC机进行访问。...当前采用的开发板是友善之臂的Tiny4412,内核、uboot、交叉编译器都采用官方光盘自带的文件。...# saveenv TINY4412 # reset 2....# save TINY4412 # reset 重启之后开发板正常就会进入到Linux命令行:
当前开发板采用友善之臂的Tiny4412,CPU是三星的EXYNOS4412,4412是三星的第一款四核处理器,主频是1.5GHZ,稳定频率是1.4GHZ。 2....硬件原理图 当前的开发板上自带了一颗EEPROM存储芯片(具体型号是24AA025E48,代码与AT24C02一样的),原理图如下: 自带的内核里没有内置EEPROM的驱动: 存储芯片的数据手册介绍...> #include #include #include #include #include #include #include #include #include..., .release=tiny4412_release, .llseek=tiny4412_llseek }; /* Linux内核管理驱动---设备号 设备号是一个unsigned int 的变量
环境介绍 目标开发板: 友善之臂Tiny4412 Linux内核: 3.5 uboot版本: 2010.12 (2)....创建inittab cp busybox解压目录/examples/inittab /tiny4412/rootfs/etc/ [wbyq@wbyq rootfs]$ cp .....将文件系统放在PC机上 开发板NFS网络挂载的思路: PC机开启NFS服务器,配置NFS共享的路径: 将rootfs共享出来....# save TINY4412 # reset (13)....挂载成功 重启之后开发板正常就会进入到Linux命令行:
一、环境介绍 宿主机: Redhat 6.3 32位 目标开发板型号: 友善之臂Tiny4412 目标开发板操作系统: 使用busybox制作,内核使用官方3.5内核。...3.1 设备端代码 #include #include #include #include...("GPL"); /*设置模块的许可证--GPL*/ 3.2 驱动端代码 #include #include #include #include #include #include #include <linux..., .release=tiny4412_release, .llseek=tiny4412_llseek }; /* Linux内核管理驱动---设备号 设备号是一个unsigned int 的变量
当前使用的开发板是友善之臂的Tiny4412开发板,CPU是三星的Exynos-4412,主频是4核1.5GHZ,当前运行的Linux内核版本是3.5。...硬件接线图 Tiny4412开发板扩展GPIO口: 4....示例代码 #include #include #include /*杂项字符设备头文件*.../ #include /*文件操作集合*/ #include /*延时函数*/ #include <linux..._fops= { .open=tiny4412_open, .read=tiny4412_read, .write=tiny4412_write, .release=tiny4412_release
接下来编译完成,将kenel刷入开发板后卡机,用adb shell进入可以看到如下: ?...修改的源码: #include <linux/kernel.h #include <linux/module.h #include <linux/miscdevice.h #include <linux.../fs.h #include <linux/types.h #include <linux/moduleparam.h #include <linux/slab.h #include <linux.../ioctl.h #include <linux/cdev.h #include <linux/delay.h #include <linux/gpio.h #include <mach/gpio.h...#include <plat/gpio-cfg.h //添加必要的头文件 #include <linux/proc_fs.h #include <linux/uaccess.h #define
前言 Tiny4412开发是友善之臂推出的Android、Linux学习开发板,CPU采用三星的EXYNOS4412,32位芯片,属于Cortex-A系列,主频是1.5GHZ,可以运行ubuntu、Android5.0...、纯Linux等操作系统。...上篇文章已经介绍过LED裸机编程,完成LED灯控制,这篇文章就介绍利用这款开发板继续完成按键编程,了解GPIO口基本的输入输出配置。 下面是开发板的实物图: 开发板的配置: 2....按键编程 要完成程序开发,需要先搭建交叉编译环境,安装arm-linux-gcc编译器,上篇文章已经介绍了,这篇就不再重复。...2.1 查看原理图 tiny4412开发板有两个原理图,分别对应底板和核心板,按键是接在底板上,下面就分别打开底板、核心板原理图,找到按键具体的接线位置。
本身算是个精简的Linux系统,主要是负责硬件的初始化和引导,本身带有一些工具,作为引导程序,常作为嵌入式设备的引导。当真正的系统开始运行的时候U-boot就把管理权限交了出去。...选择U-Boot的理由: ① 开放源码; ② 支持多种嵌入式操作系统内核,如Linux、NetBSD, VxWorks, QNX, RTEMS, ARTOS, LynxOS, android; ③...当前测试uboot命令的开发板是友善之臂tin441,使用三星的EXYNOS4412,本篇文章重点是介绍uboot命令行的命令功能,用法,使用的uboot版本是2010.12,是友善之臂官方提供的uboot...//设置完需要重启开发板,自动生效 删除环境变量示例: setenv baudrate //删除baudrate环境变量 引用环境变量示例: TINY4412 # setenv timer 10...2.6 查看开发板的配置信息–bdinfo TINY4412 # bdinfo arch_number = 0x00001200 ->开发板的机器码, 用来引导操作系统的内核 boot_params =
下面是超声波模块与开发板的连线方式: 2....示例代码 下面是超声波测距模块的驱动代码,将超声波模块的输出脚接在开发板支持中断的IO口上,配置为上升沿触发,当超声波输出脚检测到高电平就进去中断服务函数,在中断服务函数里调度工作队列,最终在工作函数里完成高电平的时间长度获取...下面是测量的结果: 2.1 驱动代码 #include #include #include #include...注册中断*/ request_irq(irq,csb_irq_handler_func,IRQF_TRIGGER_RISING,"tiny4412_csb",NULL); timer.expires..._linux_csb_init); /*驱动入口--安装驱动的时候执行*/ module_exit(tiny4412_linux_csb_cleanup); /*驱动出口--卸载驱动的时候执行*/
先将SD卡从开发板取出(开发板不要断电),通过读卡器插入 PC,复制一些文件到卡里,然后再重新插入开发板中 (SD卡拔出来时开发板不要断电,目的想测试一下 mmc rescan 命令作用)。...文件拷贝完将SD卡再放回开发板,先不要重新扫描 mmc 设备,直接输入 fatls 就会出错: TINY4412 # fatls mmc 0 /* 打印错误信息,因为开发板没有断电,设备0是SD卡*/...查看帮助: TINY4412 # ?...'; when booting a Linux kernel, 'arg' can be the address of an initrd image //传递参数的参数…”;当引导Linux...Uncompressing Linux... done, booting the kernel.
硬件环境 当前开发板采用友善之臂的Tiny4412,CPU是三星的EXYNOS4412,最高主频为1.5GHZ,Linux内核版本是3.5。...下面是红外线接收模块原理图: 通过杜邦线接在开发板的中断输入脚上:(GPX1_0接口上,第9个排针。) 驱动安装后,解码的效果: 3....#include #include #include #include #include #include #include #include <linux/workqueue.h..._hello_module_cleanup(void) { free_irq(irq,NULL); printk("驱动测试: 驱动卸载成功\n"); } module_init(tiny4412
硬件环境 当前测试使用的开发板采用友善之臂的Tiny4412开发板,芯片是三星的EXYNOS-4412,最高主频1.5GHZ。...开发板引出了SPI的IO口,这里使用的W25Q64是外置的模块,使用杜邦线与开发板的IO口连接。...开发板上引出的IO口都是5V和1.8V,为了方便供电,采用了一个USB转TTL模块提供电源,测试驱动。...https://gitee.com/dsxiaolong/blog-drawing-bed/raw/master/img/image-20220106103338509.png)] W25Q64模块接在开发板的..._fops= { .open=tiny4412_open, .read=tiny4412_read, .write=tiny4412_write, .release=tiny4412_release
但是没有注册标准的音频驱动,没有对接音频框架,只是在驱动层完成VS1053的直接控制,本篇的重点主要是介绍如何初始化开发板的GPIO口,使用Linux的延时函数,模拟SPI时序,代码写了两种版本,一种是直接通过...当前采用的开发板是友善之臂的Tiny4412,芯片是三星的EXYNOS4412,这款芯片出来有很长一段时间了,之前用在三星的S系列手机上的,最高主频是1.5GZ,稳定推荐主频是1.4GHZ,内核是三星提供的...demon,友善之臂在基础上完成了移植适配,也就是现在拿到的Tiny4412开发板内核,Linux 版本是3.5,不支持设备树。...当前我采用的VS1053是正点原子设计的完整模块,方便杜邦线与开发板进行测试。...> #include #include #include #include <linux/spi/spi.h
原文地址:http://www.cnblogs.com/jacklu/p/6226330.html Exynos 4412 Uboot的汇编代码就不贴了,没有的可以私信我。...(图中带+的表示未展开,所有未展开的都会有另外截图,图标代表思维导图层级结构) Exynos 4412 Uboot源码解析 ? 图1 ? 图1-1 ? 图1-1-1 ? 图1-1-2 ?
由于源码本身已经集成了 Tiny 4412开发板相关配置,省去了很多工作量。 百问网提供配置好编译环境的虚拟机,初步使用了一段时间,诸多不便,这里记录下在Ubuntu 18.04 编译源码的过程。.../host/x86_64-linux-glibc2.11-4.6//x86_64-linux/include/c++/4.6/bits/basic_string.h:270: error: unsupported...reloc 43 prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6//x86_64-linux/include/c++/4.6/bits/...basic_string.h:270: error: unsupported reloc 43 prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6.../host/x86_64-linux-glibc2.11-4.6/x86_64-linux/bin/ld ---- 在源码编译3h之后报的错误 Copying: out/target/common/obj
硬件环境介绍 当前的开发板采用友善之臂Tiny4412开发板,采用三星的exynos-4412芯片,下面是开发板与PCF8591的硬件连线图: 模块接口说明 当前项目采用的模块左边和右边分别外扩2路排针接口...3.1 驱动端代码 #include #include #include #include... #include /*注册中断相关*/ #include /*中断边沿类型定义*/ #include... /*中断IO口定义*/ #include /*工作队列相关*/ #include .../*互斥信号量头文件*/ #include #include /*杂项设备相关结构体*/ #include <linux/fs.h
前言 MPlayer是一款开源多媒体播放器,在主流的Linux、windows、Mac OS 都能运行,主要广泛用在Linux系统上; Mplayer不仅支持图形界面、也支持命令行播放。...这篇文章就介绍如何将MplayerJ交叉编译移植到嵌入式开发板上运行,在命令行上正常的播放视频,LCD屏采用的帧缓冲驱动框架渲染图像。...开发板采用友善之臂的Tiny4412开发板,MCU是三星的EXYNOS4412,板子上接的LCD分辨率为800*480,帧缓冲驱动框架接口,Linux内核版本是3.5,系统不带图形界面,文件系统是采用busybox...交叉编译器采用arm-linux-gcc 4.5.1版本。...拷贝依赖库 拷贝依赖就是需要将mplayer命令运行时,需要的所有库文件找齐,拷贝到开发板的/lib目录下。 然后再将mplayer可执行文件命令拷贝到开发板的/bins目录下。
领取专属 10元无门槛券
手把手带您无忧上云