当前位置:首页 » 编程软件 » rk3288编译

rk3288编译

发布时间: 2022-06-15 02:17:46

Ⅰ 使用RK3288开发,烧录完毕,开机串口打印只有一半。

两方面原因,你需要自己分析一下:
1、烧录的程序和主控器调用的地址对应不上。比如主控本来是要去第10行调用程序,结果程序被烧录到了第12行。就出现了你描述的,串口打印输出不正常的现象。
2、对NAND Flash或者eMMC芯片烧录中的坏块位置或者分区地址有分配不正常现象,NAND 需要特别注意
3、确保你的硬件本身是好的,这是首要条件。

Ⅱ rk3288 编译内核后 kernel.img和source.img在哪个目录

配置bootloader装载rnkeel和将Ramdisk装入ram中,并将Ramdisk地址在系统启动时传给kernel

Ⅲ 哪里找Mali-T764的OpenCL在linux下的binary

mali的那个SDK我用过,那个可以用来编译出安卓下的opencl的binary。
如果需要在GNU/Linux上跑OpenCL的程序,需要两方面的支持:
1.内核层OpenCL的支持,这个是mali官方给出来了,可以下得到。
不过听说瑞芯微在哪个版本的内核已经加入了内核层OpenCL的支持,所以把mali提供的内核支持文件移植到我们内核中的工作就不用我们做了,瑞芯微做好了。本来他们就需要做,不然他们怎么验证他们的芯片GPU功能呢。
2.用户层OpenCL的支持,这个必须得瑞芯微自己提供。也就是GNU/Linux下的OpenCL的binary、
mali官方给的公版似乎不能在RK3288实际的硬件上使用。
现在就是用户层OpenCL的问题比较麻烦,非常需要瑞芯微整出这个东西来,不然,OpenCL的编程根本没法往下搞。

Ⅳ 如何用安卓文件系统读写数据

  经过ARM板-RK3288和小米手机的测试。亲测可以使用。

       博客中写的欠缺的地方,无所谓,直接去看代码,里面的注释很详细。程序员看代码就行了,每个函数全部封装好了,废话不多话。博客很长,大家慢慢看,看完一劳永逸,以后直接调我的函数就行了,但是讲的很详细,全部都是对比的来实现,方便大家的阅读。

总体:大家依据直接饿的需求去看

      一、先大体的介绍一下理论部分,这里还是很重要的。

      二、常见的存储数据的方式

       三、IO 文件流的读取方式

       四、sharedPreference 存储

       五、SQLite的存储方式

       六、assets的存储方式 

       七、res的存储方式

       八、raw的存储方式

       一、先大体的介绍一下理论部分,这里还是很重要的。

      安卓存储文件、数据的地方: RAM、ROM、内存(内部存储器)、APP程序里面(Assets,raw,res),SD卡(早期的安卓的可以插卡,现在的不支持了,但是有些 arm板 嵌入式方向的还是带卡槽的),总体上来说就是这些了,网络。

      接下来再细分:

       1、RAM、ROM 这些东西我们就别碰了,不然一大堆问题,Environment.getRootDirectory()  需要获取root权限,不合适

      2、内存和SD卡  大家得理解  Environment.getExternalStorageState()  代表的是什么意思,不是插卡的SD卡,而是说你买了开发板、手机,厂家送你的存储地方(直接你得让他送你哈)。  这部分作为主要的存储路径,小数据和大数据都适用。

      3、SD卡,黑色那张卡,老古董,现在手机都没有了,不建议大家使用,非要去使用,我也写了相关的代码(根据机型,不通用,切记,不能用不能怪我,这个只提供思路)。

     4、网络,请求自己的服务器,读取数据,URI的方式,httpClient    post 和 get 两种请求数据的方式

      存储的地方就这么多了。

     二、常见的存储数据的方式

      1、sharedPreference,  将数据保存为 xml 的格式,

      2、数据库  将SQLite的方式

      3、contentprovider  APP之间交互数据的方式。(这里不讲,没有用过,没有发言权)

      4、文件的读取(IO流) 和 java的操作类似。

      5、Android内部的存储 assets,res, raw,  三者的区别

           assets 和 raw 是不会随着 APP进行编译, res下的文件会随着app一起编译,每次 shift+alt+x 都要等好久

           assets目录下可以创建子文件夹     raw 不可以

 

              Ⅳ 如何入手学习android 底层开发

              android 底层开发学习:
              一、基于Android的CPU+GPU的异构编程开发,目前主要有以下几种平台:
              1. OpenCL
              在桌面系统和大规模并行计算领域被普遍使用的一种底层API。最近一段时间,主流的芯片厂商的旗舰或准旗舰芯片都开始支持OpenCL1.1或者1.2标准,包括高通,三星, 联发科,Rockchip等厂商的芯片,都可以找到OpenCL的支持。
              2. CUDA
              目前只有NVIDIA自己出的基于Tegra K1芯片的设备(NVIDIA Shield)支持CUDA,所以支持的面比较窄。
              3. RenderScript (RS)
              Google力推的异构编程,宗旨是由平台帮你选择运行的处理器,也就是说你是不知道你的程序跑在CPU还是GPU上的,这是由系统的驱动来决定的。想法是美好的,可现实是开发者并不买RS的帐, 大家觉得RS的性能不可控,灵活性太差,其文档之缺乏也被人诟病;此外,芯片厂商对于RS的优化都还普遍处于比较低阶的水平,这些都导致了RS在实际应用中很少被用到。

              二、由于OpenCL的普及程度,以下部分只针对OpenCL展开。
              目前支持OpenCL的设备和芯片
              1. 支持OpenCL的GPU
              高通几乎全系的GPU, 包括但不限于以下GPU (Adreno 305, 320, 330, 405, 420, 430, 530 ...)
              ARM Mali的6系和7系GPU, 比如T628, T760

              2014年以来较新的Imagination PowerVR GPU,比如G6430
              2. 支持OpenCL的芯片。以下是一个很粗略地列举了主要的支持OpenCL的芯片。

              高通8064, 8974(骁龙800,801), 8084(骁龙805), 8994(骁龙810)等
              三星 Exynos猎户座 5420, 5433 (内置ARM Mali GPU)
              联发科 MT6752 (内置ARM Mali T760 GPU)
              瑞芯微 RK3288 (内置ARM Mali GPU)
              3. 支持OpenCL的手机和平板。 这个就数不胜数了,下面只随手给出几个例子以供参考。(注意:Google Nexus系列的手机或平板,虽然硬件上支持OpenCL,但因为删掉了OpenCL的驱动程序,所以基本都不支持OpenCL;值得注意的是,据国外blog上报道,可以将相应的OpenCL驱动推送回设备以重新开启OpenCL的支持, 详见maxlv.net 的页面)

              三星 Galaxy S4, S5, S6, Note 3, Note 4
              LG G2, G3, G4
              HTC One M7, M8, M9
              小米使用高通芯片的手机和平板
              魅族M1 Note
              台积电P90HD
              等等等等。。。。
              如果不确定手头的设备是否支持OpenCL, 可以使用OpenCL-Z Android进行检测,这款软件可以显示详细的OpenCL的设备信息,同时运行micro-benchmark检测设备的计算能力。
              三、需要掌握的知识:
              1. 简单的GPU基本知识
              2. OpenCL并行程序设计
              3. Android NDK知识
              4. Android JNI接口的编写
              5. 简单的Android程序开发知识

              四、开发的步骤(这里只是步骤的精简版本,只阐述操作,不进行解释):
              1. 编写OpenCL的C/C++程序实现GPU的核心计算代码
              2. 用Android NDK编译之前写的C/C++代码。这一阶段可以在纯C/C++环境下工作,可以编写main函数测试实现的功能,用NDK将代码编译为可执行的代码(BUILD_EXECUTABLE), 然后用ADB将可执行程序推送到设备上运行。运行可执行程序要求设备具有root权限,如果没有root权限,可以通过Native Program Launcher (AndroidNativeLauncher · GitHub,可能需要翻墙) 这一工具在设备上执行二进制代码。
              3. 上一阶段测试结束,功能基本正常。开始编写JNI接口。
              4. 开始编写Android应用程序,使用JNI封装native函数。编译C/C++代码成动态链接库。
              5. 在Android程序里,以静态方式加载上一步编译的动态链接库。
              6. 在需要的地方(比如点击按钮事件),调用相应的native函数,即可实现相应的功能。

              Ⅵ 怎么能让RK3288能有1920*1200P60显示输出

              HDMI版本 1.0-1.2a 1.3 1.4
              最高分辨率 1920x1200p60 2560x1600p75 4095x2160p24
              (采用24bit/px色彩深度)

              最高分辨率 N/A 2560x1600p60 4096x2160p24
              (采用30bit/px色彩深度)
              最高分辨率 N/A 1920x1200p75 4096x2160p24
              (采用36bit/px色彩深度)
              最高分辨率 N/A 1920x1200p60 1920x1200p60
              (采用48bit/px色彩深度)

              目前VGA 接口可支持2048x1536分辨率,不过目前大部分DVI线不支持1920x1200以上分辨率。

              Ⅶ rk3288 linux可以安装jdk吗

              准备工作
              编译 Android 对机器的配置要求较高:
              64 位 CPU
              16GB 物理内存+交换内存
              30GB 空闲的磁盘空间用于构建,源码树另外占用大约 8GB
              官方推荐 Ubuntu 12.04 操作系统,实际上也可以采用更新的操作系统版本,只需要满足 http://source.android.com/source/building.html 里的软硬件配置即可。
              编译环境的初始化可参考 http://source.android.com/source/initializing.html 。
              安装 JDK 6:
              sudo add-apt-repository ppa:webupd8team/java
              sudo apt-get update
              sudo apt-get install oracle-java6-installer

              Ubuntu 12.04 软件包安装:
              sudo apt-get install git gnupg flex bison gperf build-essential \
              zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
              libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
              g++-multilib mingw32 tofrodos gcc-multilib ia32-libs\
              python-markdown libxml2-utils xsltproc zlib1g-dev:i386

              Ubuntu 13.10/14.04 软件包安装:
              sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev \
              libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip curl \
              libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils \
              xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev \
              lib32readline-gplv2-dev gcc-multilib libswitch-perl

              安装 ARM 交叉编译工具链和编译内核相关软件包:
              sudo apt-get install gcc-arm-linux-gnueabihf \
              lzop libncurses5-dev \
              libssl1.0.0 libssl-dev

              下载 默认版 Android SDK
              注意:如果你在 2014-12-11 之前下载过源码,请重新到云盘下载并更新。
              由于 SDK 比较大,请选择以下云盘之一下载 firefly-rk3288_android4.4_git_20141211.tar.gz :
              网络云盘
              Google Drive
              下载完成后先验证一下 MD5 码:
              $ md5sum /path/to/firefly-rk3288_android4.4_git_20141211.tar.gz
              firefly-rk3288_android4.4_git_20141211.tar.gz

              确认无误后,就可以解压
              mkdir -p ~/proj/firefly-rk3288
              cd ~/proj/firefly-rk3288
              tar xf /path/to/firefly-rk3288_android4.4_git_20141211.tar.gz
              git reset --hard
              git remote add bitbucket https://bitbucket.org/T-Firefly/firefly-rk3288.git

              以后就可以直接从 bitbucket 处更新:
              git pull bitbucket master:master

              也可以到 https://bitbucket.org/T-Firefly/firefly-rk3288/commits/branch/master 在线浏览源码。
              另外,linux-rockchip 社区搭建了 Git 镜像服务器,详见这里。 如果要下载源码,请用以下命令(可选其它镜像服务器):
              git clone -b firefly/master git://git.us.linux-rockchip.org/rk3288_r-box_android4.4.2_sdk.git

              下载 PAD 版 Android SDK
              PAD版SDK是具有PAD特性的SDK,可用于调屏,TP,支持横竖屏显示等。
              由于 SDK 比较大,请选择以下云盘之一下载firefly-rk3288_pad_android4.4_git_20141218.tar.gz
              网络网盘
              Google Drive
              下载完成后先验证一下 MD5 码:
              $ md5sum /path/to/firefly-rk3288_pad_android4.4_git_20141218.tar.gz
              firefly-rk3288_pad_android4.4_git_20141218.tar.gz

              确认无误后,就可以解压: mkdir -p ~/proj/firefly-rk3288_pad
              cd ~/proj/firefly-rk3288_pad
              tar xf /path/to/firefly-rk3288_pad_android4.4_git_20141218.tar.gz
              git reset --hard
              git remote add bitbucket https://bitbucket.org/T-Firefly/firefly-rk3288.git

              以后就可以直接从 bitbucket 处更新:
              git pull bitbucket pad:pad

              也可以到 https://bitbucket.org/T-Firefly/firefly-rk3288/commits/branch/pad 在线浏览源码。
              编译内核
              编译正式版(0930)开发板的内核:
              cd ~/proj/firefly-rk3288/kernel
              make firefly-rk3288_defconfig
              make -j8 firefly-rk3288.img

              编译公测版(0809)开发板的内核:
              cd ~/proj/firefly-rk3288/kernel
              make firefly-rk3288_beta_defconfig
              make -j8 firefly-rk3288_beta.img

              编译 Android
              编译 Android:
              cd ~/proj/firefly-rk3288
              make -j8
              ./mkimage.sh

              烧写分区映像
              上一步骤的 ./mkimage.sh 会重新打包 boot.img 和 system.img, 并将其它相关的映像文件拷贝到目录 rockdev/Image-rk3288/ 中。以下列出一般固件用到的映像文件:
              boot.img :Android 的初始文件映像,负责初始化并加载 system 分区。
              kernel.img :内核映像。
              misc.img :misc 分区映像,负责启动模式切换和急救模式的参数传递。
              recovery.img :急救模式映像。
              resource.img :资源映像,内含开机图片和内核的设备树信息。
              system.img :Android 的 system 分区映像,ext4 文件系统格式。
              请参照 如何升级固件 一文来烧写分区映像文件。
              如果使用的是 Windows 系统,将上述映像文件拷贝到 AndroidTool (Windows 下的固件升级工具)的 rockdev\Image 目录中,之后参照升级文档烧写分区映像即可,这样的好处是使用默认配置即可,不用修改文件的路径。
              打包成统一固件 update.img
              在 Windows 下打包统一固件 update.img 很简单,按上一步骤将文件拷贝到 AndroidTool 的 rockdev\Image 目录中,然后运行 rockdev 目录下的mkupdate.bat 批处理文件即可创建 update.img 并存放到 rockdev\Image 目录里。
              update.img 方便固件的发布,供终端用户升级系统使用。一般开发时使用分区映像比较方便。

              Ⅷ rk3288 android6.0 hdmi输出4k怎么做的

              -
              怎么能让RK3288能有1920*1200P60显示输出
              得重新编译固件吧

              Ⅸ Android 开发板有哪些如何选择

              这里我只是给出我选购Android开发板的思路,供大家参考:

              (1) 一定要支持比较新的Android版本

              这里我把Android手机也算在Android开发板里面吧。目前,支持Android源码版本最好的手机/开发板应该就是Google的干儿子了(Nexus系列),官方最新源码编译好了就可以直接在上面跑了,唯一我觉得不太方便的就是手机的接口太有限,比如没有串口、有线网口、丰富的GPIO等等,调试和扩展起来比较受限。

              如果不是购买官方源码支持的Android设备/开发板,那么你就需要开发板生产商提供对应的Android源码(其实主要是patch包),因此,我举得如果一个Android开发板只能提供Android 2.3版的源码,建议你就不用考虑了。

              (2)最好选购比较热门的开发板

              孤军奋战,遇到问题没人交流是最痛苦的事儿了,因此,我会比较看重那些社区比较完善和活跃、关注度和开发者比较多的开发板,这里比较推荐一些开源硬件,如树莓派,Beaglebone等等,国内国外都很火,不仅有很多大牛分享开发经验,而且遇到问题也很容易在社区搜到解决方案。

              (3) 其他的综合考虑

              对于我来说,上面两个因素是我最看重的,当然,也还有其他的可以参考的因素,比如:价格,文档资料,开发板的接口(串口、网络、USB OTG、HDMI等等),开发板的处理器厂商(TI?高通?Marvell?)开发板的性能(CPU、内存大小等)。

              3. Android开发板推荐

              根据上面我介绍的原则,我相信大家也很快能选中自己心仪的开发板,不过我相信肯定还是会有童鞋希望我能推荐一款,那么这里就给大家推荐我自己购买的开发板吧。

              热点内容
              ef数据库查询数据 发布:2025-05-18 03:29:36 浏览:668
              百度云下载文件夹 发布:2025-05-18 03:17:33 浏览:674
              php云开发 发布:2025-05-18 03:12:41 浏览:447
              sql语句显示表 发布:2025-05-18 03:12:30 浏览:690
              数据库系统的例子 发布:2025-05-18 03:02:42 浏览:191
              数字化储存与编译是什么 发布:2025-05-18 02:56:55 浏览:217
              个人网站模板源码 发布:2025-05-18 02:51:17 浏览:490
              主服务器ip地址 发布:2025-05-18 02:46:29 浏览:856
              电脑配置太低玩不了绝地求生怎么办 发布:2025-05-18 02:38:39 浏览:797
              存储过程怎么出错了 发布:2025-05-18 02:37:16 浏览:368