搜索
bottom↓
回复: 90

讨论一下,RK2706实现USB HOST的可行性 期待高人出现

[复制链接]
头像被屏蔽

出0入0汤圆

发表于 2011-7-29 18:06:00 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入618汤圆

发表于 2011-7-29 18:10:33 | 显示全部楼层
山寨做法可以加一片CH375……

出0入0汤圆

发表于 2011-7-29 18:17:00 | 显示全部楼层
CH376可以更山寨
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-29 18:17:48 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-29 18:21:50 | 显示全部楼层
虽然挺新颖的,但不建议这么干,602定位为随身听,而且是我们的第一个产品,先做好最基本的,其他的功能我们慢慢来,芯片支持,又有想法和条件,还怕以后上801上实现不了。贪多必失,大家说呢。

出0入0汤圆

发表于 2011-7-29 18:24:20 | 显示全部楼层
CH376. 想要稍微能用些,得完全抛弃内部的U盘这块固件.自己实现.
这时还不如从0去啃主控的HOST呢.

原来做过一个项目,只是抛弃了文件系统,直接用CH376内部的读写扇区命令.
但部分U盘会死,不支持多个LUN,只支持512字节的扇区.

不过现在U盘大多有多个LUN,读卡器实现的U盘还会有大于512字节的扇区.

USB这块是个庞大的东西.变数多.要做得好难度大于播放器.
所以建议不要纳入播放器,不过可以预留,为DIY扩展准备.

出0入0汤圆

发表于 2011-7-29 18:24:23 | 显示全部楼层
RK27XX硬件支持

  1.支持SD卡;
  2.可外接PHILIPS CODEC音质更好;
  3.支持RGB、MCU屏;
  4.支持FLASH 4pcs、8bit ECC;
  5.支持USB HOST、OTG;
  6.RK2706:128PIN LQFP、尺寸20*20;RK2708/10:144PIN LQFP封装

出0入618汤圆

发表于 2011-7-29 18:27:28 | 显示全部楼层
有寄存器说明就一切好办,没有的话实现不了的。

出0入618汤圆

发表于 2011-7-29 18:39:26 | 显示全部楼层
另外有人知道RK2706的Host/OTG是FS还是HS的?
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-29 19:54:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入21汤圆

发表于 2011-7-29 20:23:45 | 显示全部楼层
我觉得三文鱼无需将功能做得太多,只要将音频播放做好就是成功的,有谁会接个硬盘装在身上听歌?要说插U盘,那么已经提供了TF插座了。其实我觉得包括USB解码器以及同轴输入功能都可以不要(个人观点,请众网友不要拍砖,谢谢!),我期待的三文鱼是:功能简单,品质出众!

出0入0汤圆

发表于 2011-7-29 20:39:44 | 显示全部楼层
more is less
做的跟手机一样什么都干,什么都干不好

出0入0汤圆

发表于 2011-7-29 20:49:34 | 显示全部楼层
我也觉得,不加为上策!音质才是硬道理,不要什么都加上去,没必要!

出0入8汤圆

发表于 2011-7-29 21:09:31 | 显示全部楼层
个人认为,目前的状况已经很好,产品定位准确,HIFI播放器不用顾忌那么多功能。想要全功能的自己买台电脑回去

比如魅族M3为了音质牺牲了视频播放,但是获得了更好的音质

出0入0汤圆

发表于 2011-7-29 21:15:52 | 显示全部楼层
强烈发对RK27加USB HOST,对一款便携机来说,没有任何意义,音质才是王道,要放多点歌,搞个32G的卡就好了。如果真的要加硬盘支持,那不如干脆像ipod classic,做硬盘机。下一版三文鱼如果真如阿莫所说,换一款主控,到时用个强悍的主控,再做不迟。
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-29 21:24:36 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-29 21:29:39 | 显示全部楼层
要实现这个功能,你用网站或公司的名找上瑞心要 usb host的资料就行。相信他们有驱动例程的。
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-29 21:33:08 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-29 21:48:28 | 显示全部楼层
rockchip就是瑞心的产品啊。
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-29 22:14:39 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-29 22:15:13 | 显示全部楼层
回复【16楼】armok  阿莫
回复【15楼】roasn  冰封的心
强烈发对rk27加usb host,对一款便携机来说,没有任何意义,音质才是王道,要放多点歌,搞个32g的卡就好了。如果真的要加硬盘支持,那不如干脆像ipod classic,做硬盘机。下一版三文鱼如果真如阿莫所说,换一款主控,到时用个强悍的主控,再做不迟。
-----------------------------------------------------------------------
可能大家站在的角度,与我站在的角度不同。
我站在的角度是:三文鱼主控板是一块可以oem供应给音响商的。 某些音响商可以将外置usb硬盘作为卖点之一。三文鱼主控板如果在不增加多少硬件的前提下,能支持usb硬盘,它必将获得更大的市场。
我们的k602 或 k801 版本,可以没有usb硬盘功能,因为我们的对手机型也没有这个功能,我们不必做上去。

-----------------------------------------------------------------------

三文鱼到现在K***版本已经比较成熟了
我很担心在添加usb硬盘支持后 供电会成为一个很棘手的问题
如果因此再影响到电源部分的设计 那就……
而且如果是机械硬盘的话 转动等等 引入的震动与电流部分的噪声 又要重新设计评估
在百度百科中摘抄了如下的话
笔记本要求硬盘快速启动,所以笔记本硬盘的启动电流大一些,约900mA左右. 移动硬盘使用的盘片启动时间略长,起动电流小一些,一般700mA左右. 所以如果自己组装移动硬盘,还是需要找专门的移动硬盘版的盘芯. (这句话显得有点问题,我引用只想说明一个电流的数量级)
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-29 22:27:17 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入618汤圆

发表于 2011-7-29 23:03:09 | 显示全部楼层
Rockchip中文名叫瑞芯微,不是瑞心,搞技术的严谨点好。
BTW:难道阿莫从来没上过Rockchip官方网站?

出0入0汤圆

发表于 2011-7-29 23:26:12 | 显示全部楼层
找了一圈资料。。都说官方为了保密,资料是不公开的。。

俺算是知道国产的芯片咋造出来的了。。

出0入0汤圆

发表于 2011-7-29 23:48:01 | 显示全部楼层
没必要,便携设备,小巧,续航

出0入618汤圆

发表于 2011-7-30 00:07:24 | 显示全部楼层
回复【24楼】huayuliang 花生
找了一圈资料。。都说官方为了保密,资料是不公开的。。
俺算是知道国产的芯片咋造出来的了。。
-----------------------------------------------------------------------

也不能这么说,国外Broadcom,Marvell,Qualcomm这些大厂都是不公开资料的,只是商业模式问题。
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 00:13:28 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 00:13:52 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入169汤圆

发表于 2011-7-30 00:19:09 | 显示全部楼层
rockchip就是瑞心的产品啊。
-----------------------------------------------------------------------
回复【19楼】money_2011

我还以为Rockchip改名了呢,我怎么从没听说过这么样个简称。

这几年玩了很多各种各样的MP3,RK2706的也有很多,不过带OTG功能的一个都没有,

可能加入这个功能需要付出的代价过大。

回复【14楼】huangdog
比如魅族m3为了音质牺牲了视频播放,但是获得了更好的音质
-----------------------------------------------------------------------
m3是支持视频的,虽然仅avi,m6也是。

出0入0汤圆

发表于 2011-7-30 01:23:17 | 显示全部楼层
估计即使弄出来
支持的效果也不会太理想
这个host挺占资源的,尤其在文件较多的情况下
还不如弄个3方的芯片

出0入618汤圆

发表于 2011-7-30 01:34:36 | 显示全部楼层
刚刚看了RK的datasheet,大部分功能都有详细说明,寄存器都有了,拿着这个自己开发固件不是问题,唯独USB Host一章简单带过,让我去看RK27xx USB 2.0 Host Controller.pdf,这个果然就没辙了。

话说有了datasheet,把RT-Thread移植到上面应该也不难,顺便可以看看双核支持怎么弄。嗯,有点手痒了。
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 01:34:41 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入618汤圆

发表于 2011-7-30 01:41:48 | 显示全部楼层
回复【32楼】armok 阿莫
rk2706的屏幕速度我感觉不够快,键盘操作有点慢。我会让技术人员改进(不过对手的机型更慢)。
-----------------------------------------------------------------------

估计你用的是MCU接口的屏,市面上的MP4都是用RGB接口的,直接由RK2706扫屏,速度有保证。

出0入0汤圆

发表于 2011-7-30 01:42:40 | 显示全部楼层
忍不住想跑题说一下君正,比较而言君正要开放很多,MP4市场上君正并不占优势
目前君正是出到1GHZ的JZ4770了吧,奇怪的是君正的芯片似乎在学习机等市场上优势大很多,也就是利润没那么低的市场
和RK2706相当的也许要算JZ4755了,LQFP的封装易于焊接,也不带USB HOST
JZ4740 JZ4750 JZ4760 JZ4770都是BGA的
JZ4760以上就没玩过了,600MHZ的,USB HOST和USB OTG 2.0都有,据芯片文档说OTG是支持高速的

对爱好者来说,君正的芯片更好玩但对做产品来说未必是个好选择,资料开放的策略估计也是跟公司本身实力有限有关系,就是说产品方案没有那么给力,反正给我的感觉是这方面凌阳最厉害,瑞芯微其次,君正就更差,开放性也是凌阳最封闭,当然我并不在行内,这只是一个爱好者的角度

做产品的角度,芯片厂商的SDK成熟度很重要吧,如果SDK动不动有BUG,厂家又不及时更新,做方案公司的也很惨

即使芯片厂商开放了资料,如果某些功能厂商并不给技术支持,那搞起来就是事倍功半,如果是爱好者可能乐在其中,开发产品就要斟酌啦,我觉得做产品最怕的就是技术人员不找外面的支持,不找厂家的支持,埋头苦干,老板等着稳定的版本望眼欲穿,开发进度一拖再拖。。。何况现在连资料都没开放呢,跑完题回来,这功能还是砍了吧

出0入0汤圆

发表于 2011-7-30 08:01:25 | 显示全部楼层
我以前写过USB HOST以及U盘的驱动。就USB HOST本身的技术问题说两句。

1. 对于的USB HOST,常见的有:
OHCI(Open Host Controller Interface)
EHCI(Enhanced Host Controlle)
UHCI(Universal Host Controller Interface)
她们都是USB主机的具体实现方式,都可以被称为“USB HOST”。OHCI使用的是USB1.1规范(12Mhz总线频率),EHCI和UHCI使用的是USB2.0规范(480Mhz总线频率)。我没有找到2706的手册,但我估计2706使用的是EHCI控制器。

2. 不管是哪一种USB主机,说白了就是一些寄存器组成的外设控制器而已,和AVR上的普通外设没有本质的差别。区别仅在于这些主机控制器的所有寄存器都是有公开的协议规范的。打比方说,无论在哪一个芯片上的OHCI,她们的功能和寄存器定义一定是相同的。

3. USB HOST在软件上实际包含两个驱动:
USB HOST驱动: 实现USB基本的通信功能
USB Message类驱动: U盘之类海量存储类外设的驱动

4. 从具体的开发上来说,因为USB协议过于复杂,从0开始编写驱动并不是一个好主意。我曾经编写过OHCI的驱动,我花了很长的时间才能完全理解协议中各种故作高深的名词。最简单快速的方法是从UBoot这样的开源软件中提取出USB主机和U盘的驱动,然后移植到2706上。这样做的好处是速度快,不足是这些开源软件在兼容性方面会有一些问题,可能有一些U盘会无法使用。

出0入618汤圆

发表于 2011-7-30 08:52:17 | 显示全部楼层
回复【35楼】jk36125 AliveHex
-----------------------------------------------------------------------

就一句话:没有手册,什么都是白搭。

出0入0汤圆

发表于 2011-7-30 09:10:13 | 显示全部楼层
其实阿莫站在给厂商提供OEM的角度,也不必在目前的主控上增加USB HOST,三文鱼的主控板也可以走多元化的产品路线,如果真的计划有下一代的主控,换用一颗更强大的芯片,再增加USB HOST,一样可以赢得厂家的青睐;
上面的网友已经说了,三文鱼的推出赢在音质和价格上,只要有此保障,还能没有生意?有多重主控,各有特长各有侧重点,厂商的方案选择面更广,岂不是好事!!

出0入0汤圆

发表于 2011-7-30 09:26:37 | 显示全部楼层
做过2706的USB HOST,做到勉强工作程度,内部很多问题,实际上并不能可靠工作(也不支持多个USB设备,只能挂1个,加USB HUB也不行,软件问题),这不是靠手册能解决的,需要原厂把这部分未完成的工作OPEN出来,才能继续做下去。 但这芯片早已不在厂家努力范围之内了。

一句话:有手册,也是白搭。

可以考虑换2708,2712之类的后续芯片。

出0入0汤圆

发表于 2011-7-30 09:29:10 | 显示全部楼层
回复【36楼】gzhuli  咕唧霖
-----------------------------------------------------------------------

我没有找到RK2706的pdf,所以不知道资料少到什么程度。

要使USB主机驱动工作,其实只要知道两个数据:

1. USB的主机类型
2. USB的主机的寄存器基地址

剩下的寄存器定义可以从标准协议中找到。

点击此处下载 ourdev_662091H0TNUY.pdf(文件大小:670K) (原文件名:OHCI.pdf)
点击此处下载 ourdev_662092O03GF0.pdf(文件大小:1.06M) (原文件名:EHCI.pdf)
点击此处下载 ourdev_662093J1MWXX.pdf(文件大小:512K) (原文件名:UHCI.pdf)

出0入0汤圆

发表于 2011-7-30 09:42:59 | 显示全部楼层
回复【38楼】gale  
做过2706的usb host,做到勉强工作程度,内部很多问题,实际上并不能可靠工作(也不支持多个usb设备,只能挂1个,加usb hub也不行,软件问题),这不是靠手册能解决的,需要原厂把这部分未完成的工作open出来,才能继续做下去。 但这芯片早已不在厂家努力范围之内了。
一句话:有手册,也是白搭。
可以考虑换2708,2712之类的后续芯片。
-----------------------------------------------------------------------

USB规定根hub下面只能挂载一个器件。通常嵌入式的USB主机都只有一个根hub。如果你接入usb hub,首先需要在主机部分添加usb hub的驱动。
我自己写过OHCI,USB Mass Storage类以及USB HID类的驱动。也发现有些U盘不能正常工作的现象,除了主机软件上的关系,这和某些山寨U盘的质量差,协议层不完善也有关。
USB HOST之所以难以开发,一部分原因是协议复杂。另外一部分是因为当初制定这些规范的头头大佬公司就根本没有让第三方开发驱动的打算,所以文档写的云里雾里,高深莫测。即使Linux的USB主机驱动部分,也经历了几次大改动才能趋于稳定。

出0入0汤圆

发表于 2011-7-30 10:19:47 | 显示全部楼层
没有datasheet,说什么都没有用……

出0入0汤圆

发表于 2011-7-30 10:47:25 | 显示全部楼层
有些芯片的资料,是要签订相关保密协议的,不是随便能搞到的,并且只针对大厂

出0入0汤圆

发表于 2011-7-30 11:28:33 | 显示全部楼层
很高兴阿莫能够将USB及SATA接口提到桌面上来讨论
也希望业有专攻 三文鱼在可靠及性能上做到更好
但要是能够在不影响三文鱼现有的基础上
做到更多的外围支持选择
这个也会吸引更多的外围厂商选择三文鱼主控以拓展各自的方向及高度
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 11:31:23 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 11:33:06 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 11:34:16 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入618汤圆

发表于 2011-7-30 11:56:53 | 显示全部楼层
回复【38楼】gale  
-----------------------------------------------------------------------

你确定是在host模式而不是otg模式?otg是不能挂hub的。


回复【39楼】jk36125  AliveHex
-----------------------------------------------------------------------

2706是ehci的,就是没有寄存器描述。


回复【46楼】armok  阿莫
-----------------------------------------------------------------------

具体情况不了解,不过这种情况一般和中断,总线优先级有关。STM32放wav都不会引起操作明显变慢,rk应该也不会的,还是检查代码架构吧。
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 12:20:21 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-30 12:27:03 | 显示全部楼层
回复【50楼】armok  阿莫
-----------------------------------------------------------------------

可能是为了保证播放的流畅性,解码的优先级设成了最高,所以会导致按键和刷屏的延时,特别是解比较耗资源的音频文件

出0入0汤圆

发表于 2011-7-30 12:35:53 | 显示全部楼层
回复【50楼】armok 阿莫
回复【49楼】gzhuli  咕唧霖
具体情况不了解,不过这种情况一般和中断,总线优先级有关。stm32放wav都不会引起操作明显变慢,rk应该也不会的,还是检查代码架构吧。
-----------------------------------------------------------------------
对手的产品是请方案公司做的,慢得比我们还严重。我们在测试对手的机器时,甚至在播放ape时,有时卡在哪里动不了。
-----------------------------------------------------------------------

我们用usb otg来做拖U盘,以及硬盘,支持U盘以及硬盘的媒体播放。USB host反而是留给像3G,等其他外设的接口,ARM11的方案。

出0入0汤圆

发表于 2011-7-30 17:25:24 | 显示全部楼层
回复【39楼】jk36125  alivehex
-----------------------------------------------------------------------
2706是ehci的,就是没有寄存器描述。

参考我在39楼上传的EHCI.pdf文件:

EHCI控制器的寄存器不仅是已知的,而且功能和位设置方式都有详细说明。


(原文件名:EHCI寄存器描述.jpg)
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 18:50:36 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-30 19:07:56 | 显示全部楼层
为何阿莫不采用速度更快的RK28/RK29系列芯片,USB OTG都是支持的,并且我相信没有那些所谓的键盘反应慢的问题!
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-30 19:27:10 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-30 20:17:19 | 显示全部楼层
jk36125  AliveHex  说的是对的。

一般soc的USB只要是符合EHCI、OHCI、UHCI,在芯片手册中肯定只是简单的描述,说自己有这个模块,然后符合什么版本的USB协议。其他就不讲了。

详细的寄存器描述,只要知道基址,在加上【39楼】 jk36125 AliveHex 上传的几个文件就好了。

比如2440和6410这两款常见的芯片,在USB这一章节,都只是简单的描述。

(原文件名:2440host.jpg)


另 to 【49楼】 gzhuli 咕唧霖 :otg可以接hub的。

出0入0汤圆

发表于 2011-7-30 21:07:14 | 显示全部楼层
我们公司的host是ohci接口的,集成在一个51core的soc(tw公司喜欢自己搞定制mcu),当然也有使用速度快一点的W90N740。
soc(51core)速度不是很高,但是支持普通USB设备是够用的;W90N740可以轻松搞定mass Storage(包含usb硬盘)应用。
对于阿莫的提出SATA我不是太明白,不过我想说,要使用USB host开发没有一些代码积累是很困难的,我接触的ohci代码量是巨大的,有很多高手的心血。
开发是有难度的,最主要是看阿莫是否有时间投入了!

出0入0汤圆

发表于 2011-7-30 21:22:29 | 显示全部楼层
回复【54楼】armok  阿莫
-----------------------------------------------------------------------

1. 2706可以外接硬盘。

2. 需要移植或者自己编写EHCI的驱动

3. 需要移植或者自己编写移动硬盘驱动(USB MassStorage类驱动)

出0入0汤圆

发表于 2011-7-30 21:30:29 | 显示全部楼层
回复【56楼】armok 阿莫
-----------------------------------------------------------------------
RK27XX是几年前的片子了。

RK2806:ARM9 560MHz + DSP
RK29XX:更不用说了,A8+DSP,做MID的,PMP太浪费了。

http://www.rock-chips.com

出0入618汤圆

发表于 2011-7-30 22:11:30 | 显示全部楼层
回复【57楼】goink  小桂
-----------------------------------------------------------------------

就是不知道寄存器基址。
另:确认了一下,otg确定可以挂hub。

出0入0汤圆

发表于 2011-7-30 22:23:39 | 显示全部楼层
查了一下,发现这些寄存器复位是有一些特殊值的,或许可以作为猜测的依据....仅仅是猜测....

见图(摘自OHCI)

(原文件名:0.jpg)


(原文件名:1.jpg)


(原文件名:2.jpg)


(原文件名:3.jpg)
大概有3处,所以,如果连续读一下,搞不好能看见希望呢~~

出0入0汤圆

发表于 2011-7-30 22:48:57 | 显示全部楼层
瑞芯微RK2729芯片

这个不知是不是可以支持USB Host

出0入0汤圆

发表于 2011-7-30 23:59:19 | 显示全部楼层
我找到了RK27XX的数据手册,版本是A1.1。原来论坛的帖子里面就有,看来以后google之前要先用一下论坛的搜索功能了。

可以在这个帖子下载到数据手册:http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4317730&bbs_page_no=1&search_mode=1&search_text=2706&bbs_id=9999

仔细浏览了RK27XX的pdf以后,对于RK27XX的USB HOST可以得出这么几个结论:

1. RK27XX的USB HOST同时支持EHCI和OHCI。

数据手册105页:


(原文件名:UHC.jpg)

2. RK27XX的USB HOST控制器基地址为0x180a8000

数据手册22页,注意红线的地方,UHC就是USB HOST Controller


(原文件名:MemMap.jpg)

通过比对OHCI和EHCI寄存器的复位初始值,可以分别找到两个控制器的起始基地址。

参考我在39楼的发言,可以得出结论:RK27XX完全可以增加USB HOST驱动。

出0入0汤圆

发表于 2011-7-31 00:22:41 | 显示全部楼层
我是反对这个提议的,因为项目有可能失去控制,没人能说清楚什么时候做好做稳定,只有做好做稳定了,大家才松一口气

出0入0汤圆

发表于 2011-7-31 00:46:26 | 显示全部楼层
补充一下:

我只是从纯技术的角度出发,说明RK27XX是否具备增加USB HOST的条件。至于三文鱼本身是不是需要增加USB HOST,我不敢妄下结论,这个问题还是留给阿莫站长,他是三文鱼之父。

我以前编写OHCI驱动的经验来说,USB HOST驱动比较复杂,开发周期会比较长一些。在后期使用的时候可能会出现个别U盘不能认到的问题,很难做到像XP一样良好的兼容性。
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-31 10:44:12 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-31 10:47:14 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-31 10:52:25 | 显示全部楼层
我想问一下
老大为什么没有用君正的东西做?
如果用君正的东西,我想坛子里能搞定的人一大把

出0入0汤圆

发表于 2011-7-31 10:55:38 | 显示全部楼层
要搞定这个关键不在高人
而在于能否拿到内部的资料
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-7-31 11:06:42 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-7-31 13:30:32 | 显示全部楼层
可以看看NXP的 SAF1761
http://www.nxp.com/documents/data_sheet/SAF1761.pdf

有些产品是 SAF1761 + ADI BF系列DSP做的。。。

出0入0汤圆

发表于 2011-8-1 09:04:03 | 显示全部楼层
回复【64楼】jk36125 AliveHex
-----------------------------------------------------------------------

周一过来顶一下,哈哈,看来又往前推进一步了。

话说想跑裸代码,把host、otg搞起来,好像真很有难度呀!

要是真做的话,估计u-boot下drivers/usb/host下面的几个文件会是最好的选择了。

有搞头,有意思!

出0入0汤圆

发表于 2011-8-1 09:25:01 | 显示全部楼层
回复【68楼】armok  阿莫
-----------------------------------------------------------------------

如果需要为三文鱼编写EHCI的驱动,确实需要花费较长的时间,最近家里正在装修,抽不出太多的时间,怕是帮不上这个忙了。

我以前编写的OHCI HOST,可以支持U盘,移动硬盘,鼠标和键盘等,并且非常容易移植到新的平台上。不足之处在于因为OHCI是USB1.1接口,所以速度比较慢:读写大约为100KB/S左右。

如果需要,我可以无偿提供OHCI的USB HOST驱动程序供三文鱼项目进行使用。实际上,我一直以来希望将这个OHCI驱动改写为V-USB那样可以使用通用IO口实现USB功能的软件栈,然后开源,但一直没有时间实现。

出0入0汤圆

发表于 2011-8-1 10:15:33 | 显示全部楼层
回复【楼主位】armok  阿莫
-----------------------------------------------------------------------

搜索一下市面上这个方案的mp3/4,看看有没有这个方案支持usb host的,如果有的话就可以放心大胆的支持上

爱可 C901 PRO(4GB)
操作系统         Android2.1
处理器型号         ARM+DSP+GPU
标称主频         660MHz
3D图形加速         GPU加速芯片
芯片方案         瑞芯微RK2818方案
系统内存         DDR2缓存
存储容量         4GB
存储介质         闪存
存储卡         支持MicroSD(TF)卡,最大32GB
屏幕尺寸         7英寸
屏幕分辨率         800×480
屏幕色彩         1600万色
屏幕类型         宽屏(16:9)
屏幕材质         LED屏
其他描述         支持91手机助手等第三方Android软件商店
WIFI功能         支持
3G上网功能         支持(通过USB HOST支持TD-SCDMA、WCDMA、EVDO上网卡)
USB接口         USB2.0
扬声器         内置
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-8-1 10:21:20 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-8-1 10:44:36 | 显示全部楼层
回复【76楼】armok  阿莫
-----------------------------------------------------------------------
如果需要为三文鱼编写ehci的驱动,确实需要花费较长的时间,最近家里正在装修,抽不出太多的时间,怕是帮不上这个忙了。
-----------------------------------------------------------------------
呵,这样的话就可以宣布放弃了。

这么复杂,不如换主控芯片了。
-----------------------------------------------------------------------
如果是能搞到linux系统的移植,那么就不需要花时间搞这部分驱动了,前提是这个播放器的固件方案是基于linux开发的

出0入0汤圆

发表于 2011-8-1 12:55:30 | 显示全部楼层
回复【66楼】jk36125 AliveHex
补充一下:
我只是从纯技术的角度出发,说明rk27xx是否具备增加usb host的条件。至于三文鱼本身是不是需要增加usb host,我不敢妄下结论,这个问题还是留给阿莫站长,他是三文鱼之父。
我以前编写ohci驱动的经验来说,usb host驱动比较复杂,开发周期会比较长一些。在后期使用的时候可能会出现个别u盘不能认到的问题,很难做到像xp一样良好的兼容性。
-----------------------------------------------------------------------

兼容性问题肯定是有的,依照我们公司做法,都会发一客诉单子由FW人员去解特定设备兼容性问题。所以我们看到的FW都是一堆乱七八糟的代码叠加起来的,但是功能使用的都还不错。

回复【73楼】goink 小桂
回复【64楼】jk36125 alivehex
-----------------------------------------------------------------------
周一过来顶一下,哈哈,看来又往前推进一步了。
话说想跑裸代码,把host、otg搞起来,好像真很有难度呀!
要是真做的话,估计u-boot下drivers/usb/host下面的几个文件会是最好的选择了。
有搞头,有意思!
-----------------------------------------------------------------------

73楼推荐的方法不错,可以研究下。

出0入0汤圆

发表于 2011-8-1 13:13:44 | 显示全部楼层
我觉得有更多的功能固然是好事情,不过作为起步产品的话,应该有更多的精力去专注于某个性能,比如音质、稳定性。一旦一个型号的产品成功了,再去拓展更多的产品系列,每个系列都有各自的特点才好推广。如果走乱炖的路线,恐怕会顾此失彼,而且成本上也会带来负担。

出0入0汤圆

发表于 2011-8-1 13:21:52 | 显示全部楼层
回复【46楼】armok  阿莫
回复【33楼】gzhuli  咕唧霖
回复【32楼】armok 阿莫
rk2706的屏幕速度我感觉不够快,键盘操作有点慢。我会让技术人员改进(不过对手的机型更慢)。
-----------------------------------------------------------------------
估计你用的是mcu接口的屏,市面上的mp4都是用rgb接口的,直接由rk2706扫屏,速度有保证。
-----------------------------------------------------------------------
唉,真的没有咕唧霖不懂的问题。
2706屏幕速度不够快的原因找到了:后台在播放时,屏幕与键盘的速度就会变慢。这肯定是先天不足,无法解决的了。有人有高招吗?

-----------------------------------------------------------------------

RK2706的现在使用的操作系统就是 UCOS + MINIGUI ,系统中共有5个任务,
HIGH
MHIGH
NORMAL
LOW
MIN

GUI线程注_册在 NORMAL 任务中,按键、触摸消息的派发 刷屏也这个任务中
系统播放音频文件时 在 HIGH 任务中注_册了一个解码与控制线程,NORMAL任务中也有一个交互线程, 如果系统频率较低 可能会始 位于 NORMAL 任务中的GUI线程得不到足够的时间来运行导致按键消息响应较慢或者屏幕反应较慢。

解决方法 提高播放时的系统频率,在 hw_pmu.c 文件中 有一个结构体改变对应的频率即可(根据播放文件格式来的)

这个屏幕速度跟屏的类型是MCU还是RGB应该是没有关系的。

出0入618汤圆

发表于 2011-8-1 13:44:41 | 显示全部楼层
回复【80楼】zxy1217
-----------------------------------------------------------------------

这个我就不懂了,STM32放MP3都不会明显影响刷屏速度(虽然STM32刷屏并不快),号称400MHz主频ARM9 + DSP双核的RK2706放个WAV居然会影响按键响应速度,这个比较不合逻辑吧。按你这么说,这只是软件架构的问题,提高主频是治标不治本的做法。

出0入0汤圆

发表于 2011-8-1 13:46:58 | 显示全部楼层
回复【78楼】flor  
兼容性问题肯定是有的,依照我们公司做法,都会发一客诉单子由fw人员去解特定设备兼容性问题。所以我们看到的fw都是一堆乱七八糟的代码叠加起来的,但是功能使用的都还不错。


我比较喜欢自己编写代码的原因就在这里。我们公司的做法是指定某些类型的U盘......

我有试过某一个版本Uboot下面的驱动。移植以后效果并不好,速度慢,而且没有几个U盘可以用。

出0入0汤圆

发表于 2011-8-1 14:29:47 | 显示全部楼层
发表一下个人看法。
USB Host的实现可分为三步,
1、USB底层:USB slave的管理、与端点的通信。
2、bulk only协议和SCSI协议实现
3、文件系统。

都可有成熟代码移植,不过有这个移植功力也不简单。

前面大多数讨论好像只停留在第一步。

出0入0汤圆

发表于 2011-8-1 14:48:52 | 显示全部楼层
回复【81楼】gzhuli  咕唧霖
回复【80楼】zxy1217
-----------------------------------------------------------------------
这个我就不懂了,stm32放mp3都不会明显影响刷屏速度(虽然stm32刷屏并不快),号称400mhz主频arm9 + dsp双核的rk2706放个wav居然会影响按键响应速度,这个比较不合逻辑吧。按你这么说,这只是软件架构的问题,提高主频是治标不治本的做法。
-----------------------------------------------------------------------

400M:27xx 内核是ARM7的最快能跑200M,但是播放MP3时主频只会抬高60-72M ,如果没有运行其它任务 主频小于100M,音频都是软解码。
DSP: 视频才会用的。
GUI任务中对图片的解码、窗口绘制很耗时间。
系统还有其它的任务需要运行。

另外:STM32应该没有跑OS吧!


按你这么说,这只是软件架构的问题,提高主频是治标不治本的做法。
-----------------------------------------------------------------------

如果播放高码率的MP3 或者APE格式的文件有这种现象,很可能就是主频不够的原因。

出0入0汤圆

发表于 2011-8-1 16:01:39 | 显示全部楼层
来晚了,好多天没上,都84楼了。
当初提议支持硬盘中的有我一个。
我只是站在用户的立场考虑做个台式的数字转盘来提议主控板应该支持硬盘的。
没想到有那么多的技术问题。
便携机确实不需要支持硬盘的。

出0入0汤圆

发表于 2011-8-6 12:28:25 | 显示全部楼层
2706屏幕速度不够快的原因找到了:后台在播放时,屏幕与键盘的速度就会变慢。这肯定是先天不足,无法解决的了。有人有高招吗?
--------------------
如果按键是中断的话,就是bus的问题了。bus速度不够,或者效率不高就有这问题。所以,太bug了。
其次host不建议支持。等下一版本直接支持otg。
代码不用自己写,无论是host还是otg,直接从Linux上整过来。不过otg Linux支持的还有点操蛋。建议使用官方代码。
如果官方不提供,就根据寄存器定义去查用的那个公司的ip,然后从相同ip芯片的代码支持里扣代码。

至于host还是不需要支持了。按照以前的说法,总线有问题,那么host对总线是一个mast,效率肯定支持不了2.0 high speed。
那就是说,就算支持移动硬盘,速度慢到要预测客户的播放列表进行预加载。还是不爽。而 otg至少2.0 full speed 很多都直接支持高速。那是最应该的。而且插pc或者优盘可以做自动适应,还是比较好玩的。

出0入0汤圆

发表于 2011-8-6 18:24:41 | 显示全部楼层
根据64楼提供的资料,是标准的EHCI/OHCI控制器,基地址也有了,还差一个中断源号,有了这3条信息,实现起来完全是没有问题的。如果是linux系统,内核有现成的驱动和协议栈,如果是其他系统稍微复杂一些,我这里有从linux移植过来的EHCI/OHCI驱动和USB协议栈。EHCI的IP我还是比较熟悉的,参与过IP的集成调试。

出0入0汤圆

发表于 2011-8-8 23:28:00 | 显示全部楼层
USB接口可以不要,输入功能也不要,接口的负担影响音质;sd卡我还是喜欢的,不过这个莫老板说了算

出0入0汤圆

发表于 2011-8-15 10:57:48 | 显示全部楼层
回复【35楼】jk36125  AliveHex
我以前写过usb host以及u盘的驱动。就usb host本身的技术问题说两句。
1. 对于的usb host,常见的有:
ohci(open host controller interface)
ehci(enhanced host controlle)
uhci(universal host controller interface)
她们都是usb主机的具体实现方式,都可以被称为“usb host”。ohci使用的是usb1.1规范(12mhz总线频率),ehci和uhci使用的是usb2.0规范(480mhz总线频率)。我没有找到2706的手册,但我估计2706使用的是ehci控制器。
2. 不管是哪一种usb主机,说白了就是一些寄存器组成的外设控制器而已,和avr上的普通外设没有本质的差别。区别仅在于这些主机控制器的所有寄存器都是有公开的协议规范的。打比方说,无论在哪一个芯片上......
-----------------------------------------------------------------------

是的
瑞星的方案应该是ohci,寄存器的安排是标准的

出0入0汤圆

发表于 2011-8-17 17:18:33 | 显示全部楼层
回复【33楼】gzhuli 咕唧霖
回复【32楼】armok 阿莫
rk2706的屏幕速度我感觉不够快,键盘操作有点慢。我会让技术人员改进(不过对手的机型更慢)。  
-----------------------------------------------------------------------
估计你用的是mcu接口的屏,市面上的mp4都是用rgb接口的,直接由rk2706扫屏,速度有保证。
-----------------------------------------------------------------------

不是这样的,市面上MP4的3.0以下的屏都是MCU屏,而且RK27是通过DMA刷屏的,速度非常快,速度不够快是软件处理的问题

另外,RK2706可以实现USB HOST功能,完全没有问题

另复17楼,你以网站的名和公司的名找瑞芯微,是得不到答复的

出0入0汤圆

发表于 2011-8-21 03:53:07 | 显示全部楼层
个人建议 先出东西 再加功能
如果需要使用的功能比较难加 可以考虑换方案
如果外扩片子会引入不稳定的风险和软件开发维护的工作以及成本 说不定比换主控还贵

考虑定位和侧重
应该侧重HIFI  如果做功能全的山寨方案很多,但是没有亮点

出0入0汤圆

发表于 2011-8-30 13:06:47 | 显示全部楼层
看帖的支持一下

出0入0汤圆

发表于 2019-7-4 07:58:17 | 显示全部楼层
Is this product on sale somewhere?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 17:33

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表