RK3399高性能主板方案介绍-使用说明
本帖最后由 qq7643066 于 2019-8-1 11:45 编辑该平台是基于Big.Little大小核架构的低功耗高性能处理器,它包括双核Cortex-A72、 4核Cortex-A53以及独立的NEON协处理器,可应用于计算机、手机、个人移动互联网,数字多媒体设备。RK3399内置多种功能强大的嵌入式硬件引擎,为高端应用提供了优异的性能。 支持多格式视频。新创云智能科技公司推出了基于RK3399处理器的XCY-3399主板,RK3399作为RK3288的升级版,XCY-3399主板引出了RK3399的绝大部分功能,并支持包括Android、Linux、ChromiumOS等多款操作系统,性能优越。
1、图纸设计
原厂的demo板采用cadence画原理图,我们一般在此基础上进行增减即可。
2、layout部分采用allegro设计
3、软件调式3.2 SDK编译
3.2.1 JDK安装
Android7.1 系统编译依赖于 JAVA 8。编译之前需安装 OpenJDK。
安装命令如下:
sudo apt-get install openjdk-8-jdk
配置 JAVA 环境变量,例如,安装路径为/usr/lib/jvm/java-8-openjdk-amd64,可在终端
执行如下命令配置环境变量:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
SDK 带有 Open JDK8 的配置脚本,在工程根目录下,命名为 javaenv.sh。
可直接执行以下命令,配置 JDK:
source javaenv.sh
uboot 编译:
cd u-boot
make rk3399_defconfig
make ARCHV=aarch64
kernel 编译:
cd kernel
make ARCH=ARM64 rockchip_defconfig -j8
make ARCH=arm64 rk3399-xinchuangyun-lvds.img -j12
android 编译:
source build/envsetup.sh
lunch rk3399_all-userdebug
make -j12
./mkimage.sh
编译完成3.3 LVDS调式1、先看lvds线路设计
实际上是MIPI转LVDS的过程,加了tc358775这颗芯片实现我们已经拿到了该芯片补丁,直接手动打上
然后进入dts配置控制引脚<span] status = "okay";<span] panel@0 {<span] compatible ="simple-panel-dsi";<span] <span] //power-supply = <&vcc_lcd>;<span] //enable-gpios = <&gpio2 9GPIO_ACTIVE_HIGH>; // tc35 stby 2_b1<span] dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |<span] dsi,format = <MIPI_DSI_FMT_RGB888>;<span]
<span] prepare-delay-ms = <6>; <span] delay,power = <10>;<span]
<span] disable-delay-ms = <20>; <span] size,width = <120>;<span]
status = "okay";<span]
display-timings { native-mode = <&timing1>;
timing0: timing0 { clock-frequency = <141000000>; hactive = <1920>; //<1080>; vactive = <1080>; //<1920>; //hback-porch = <118>; //hfront-porch = <118>; hback-porch = <18>; hfront-porch = <18>; vback-porch = <2>; vfront-porch = <12>; hsync-len = <4>; vsync-len = <4>; hsync-active = <0>; vsync-active = <0>; de-active = <0>;
pixelclk-active = <0>;配置屏的参数修改完成后编译,生成img固件
2、烧录下图蓝线为USB升级口
下图xcy-3399主板有recover、reset按键,按住recover键不放 同时按一下reset,系统进入升级模式
当由于某种原因比如烧录错误固件导致uboot引导失败的时候,需要强行进入升级模式,需要把下面2个测试点用镊子短接在一起,然后插入12V电源。
LVDS完美显示
更多精彩教程可以进入www.sunychip.com的开发教程版块进行了解
RK3399完整原理图
这种板子市场价多少啊 eddy2019 发表于 2019-8-5 14:29
这种板子市场价多少啊
要看配置了,最近ddr行情变化大
其他PCB源文件太大,发不出来
rk3399 那个开发板 编译不通过,怎么搞 发下rk3399 软件开发指南 上传一份rk3399主板规格书
你们是做方案的公司吗? 幽魂 发表于 2019-8-13 11:31
发下rk3399 软件开发指南
加我发给你啊
支持 资料拿到了
RK3399 板卡调试4G模块的资料分享
android 7.1 "移动网络" 选项 不存在问题。
1、celluar networks 字符串定义
首先在设置APK的资源文件去找到这一串字符
Mobile networks
2、network_settings_title引用
packages/apps/Settings/src/com/android/settings/WirelessSettings.;" /> private static final String KEY_MOBILE_NETWORK_SETTINGS = "mobile_network_settings";
把 network_settings_title赋值给 KEY_MOBILE_NETWORK_SETTINGS,再跟进一下 KEY_MOBILE_NETWORK_SETTINGS这个变量吧。
在相同的文件中我们找到:
RemovMobile Network Settings if it's a wifi-only device.
if (Utils.isWifiOnly(getActivity())) {
getPreferenceScreen().removePreference(findPreference(KEY_MOBILE_NETWORK_SETTINGS));
}
getSystemService(Context.CONNECTIVITY_SERVICE);获得网络连接服务,然后判断是否支持TYPE_MOBILE,现在判断应该是不支持,也就是if判断中:Utils.isWifiOnly(getActivity())=1
所以把“移动网络”的选项移除,现在我们就重点去分析Utils.isWifiOnly(getActivity()),找到不显示的原因,也就是if()中的判断条件,跟进这段代码
3、我们去看下ifWifiOnly()是何方神圣?
packages/apps/Settings/src/com/android/settings/Utils.;" /> .import android.net.ConnectivityManager;
.public static boolean isWifiOnly(Context context) {
ConnectivityManager cm = (ConnectivityManager)context.getSystemService(
Context.CONNECTIVITY_SERVICE);
return (cm.isNetworkSupported(ConnectivityManager.TYPE_MOBILE) == false);
.}
Utils.isWifiOnly(getActivity())=1也就是
cm.isNetworkSupported(ConnectivityManager.TYPE_MOBILE) = false,可是我们现在要的值是true,为什么会出现false呢,我们继续往下看cm.isNetworkSupported
4、 再分析isNetworkSupported
frameworks/base/core/java/android/net/ ConnectivityManager.java
.public boolean isNetworkSupported(int networkType) {
.try {
.return mService.isNetworkSupported(networkType);
.} catch (RemoteException e) {}
.return false;
.}
07.}
继续跟进 mService.isNetworkSupported这个函数的实现
5、 mService.isNetworkSupported的实现
\frameworks\base\core\java\android\net
public boolean isNetworkSupported(int networkType) {
try {
return mService.isNetworkSupported(networkType);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
}
6、到最后是device\rockchip\common\overlay\frameworks\base\core\res\res\values\config.xml
"wifi,1,1,2,-1,true"
"mobile,0,0,0,-1,true"
"mobile_mms,2,0,2,60000,true"
"mobile_supl,3,0,2,60000,true"
"mobile_dun,4,0,2,60000,true"
"mobile_hipri,5,0,3,60000,true"
"mobile_fota,10,0,2,60000,true"
"mobile_ims,11,0,2,60000,true"
"mobile_cbs,12,0,2,60000,true"
"bluetooth,7,7,0,-1,true"
"ethernet,9,9,9,-1,true"要注意这里
"0,1"
"1,1"
"7,1"
"9,1" 注意这里
7、最好要开启rild相关的资源,这是4G模块就可以加载成功。
在boardconfig.mk文件增加此功能
BOARD_HAVE_DONGLE:=true
在android7.1可以成功利用4G模块上网 加油 加油 加油 rk3399编译
kernel
make ARCH=arm64 rockchip_defconfig
make -j8 ARCH=arm64 rk3399-firefly-android-sunchip.img
android
source build/envsetup.sh
lunch rk3399_all-userdebug
make -j32
./mkimage.sh
uboot
make rk3399_box_defconfig
make ARCHV=aarch64 -j8 开发定制需要多久 开发费用多少呢 sw10086 发表于 2020-5-7 09:50
开发定制需要多久 开发费用多少呢
28天出样品
页:
[1]
2