找回密码
 注册
搜索
查看: 1009|回复: 4

[资料] (转)音频驱动分析:2410+iis+iic

[复制链接]
发表于 2008-10-12 23:20:41 | 显示全部楼层 |阅读模式
【文件名】:081012@52RD_音频驱动分析:2410+iis+iic.pdf
【格 式】:pdf
【大 小】:70K
【简 介】:转贴
【目 录】:
 楼主| 发表于 2008-10-15 23:48:09 | 显示全部楼层
【文件名】:081015@52RD_UDA1341TS_4.pdf
【格 式】:pdf
【大 小】:160K
【简 介】:I2S接口audio芯片UDA1341TS_4
【目 录】:
点评回复

使用道具 举报

 楼主| 发表于 2008-10-16 00:56:54 | 显示全部楼层
WinCE 下Audio driver结构!


【文件名】:081016@52RD_Audio Framework.pdf
【格 式】:pdf
【大 小】:140K
【简 介】:WinCE 下Audio driver结构:包含类图,函数调用顺序,执行过程!
【目 录】:
点评回复

使用道具 举报

 楼主| 发表于 2008-10-16 01:15:29 | 显示全部楼层
转:wince 5.0 内核启动顺序


1. Startup() -> Startup.s

位于%_WINCEROOT%\Platform\<Hardware Platform Name>\Src\Kernel\OAL 目录下

这个函数是bootloader调转到run-time镜像后最先执行的代码,位于我们的BSP开发包中,由OEM定制.程序最后启动KernelStart().

2. KernelStart() -> Armtrap.s (Private)

位于 %_WINCEROOT%\Private\Winceos\Coreos\Nk\Kernel\ARM 目录下

这个函数是内核的Main Entry 点.
   

      3. ARMInit() -> Mdarm.c (Private)

位于 %_WINCEROOT%\Private\Winceos\Coreos\Nk\Kernel\ARM 目录下

这个函数调用4,5来对Main Arm 进行初始化动作.


      4. OEMInitDebugSerial() -> Mdarm.c (Private)

位置同上.

初始化串口,调用BSP 包中的串口函数(由OEM定制的部分).


      5. OEMInit() -> Init.c

%_WINCEROOT%\Platform\<Hardware Platform Name>\Src\Kernel\OAL

这个位于我们BSP开发包中,由OEM自行定制,不用多说,做过OAL开发的都知道.


      6. KernelInit() -> Kwin32.c (Private)

%_WINCEROOT%\Private\Winceos\Coreos\Nk\Kernel 目录下

该函数调用7,8,9,10函数对内进行初始化动作.


      7. HeapInit() -> Heap.c (Private)

%_WINCEROOT%\Private\Winceos\Coreos\Nk\Kernel 目录下

初始化内核堆.


      8. InitMemoryPool() -> Physmem.c (Private)

%_WINCEROOT%\Private\Winceos\Coreos\Nk\Kernel 目录下

初始化内核内存池


     9. ProcInit() -> Schedule.c (Private)

%_WINCEROOT\Private\Winceos\Coreos\Nk\Kernel

初始化内核进程.


     10. SchedInit() -> Schedule.c (Private)

_WINCEROOT\Private\Winceos\Coreos\Nk\Kernel

初始化调度管理器(scheduler) ,创建SystemStatupFunc 线程.


     11. FirstSchedule() -> Schedule.c (Private)

%_WINCEROOT\Private\Winceos\Coreos\Nk\Kernel

启动调度管理器(scheduler), 调用SystemStartupFunc(),IOCTL_HAL_POSTINIT


     12. SystemStartupFunc() -> Schedule.c (Private)

%_WINCEROOT\Private\Winceos\Coreos\Nk\Kernel

当所有内核需要的初始化动作完成之后并且当系统准备启动和运行内核线程,SystemStartupFunc被调用.SystemStartupFunc以IOCTL_HAL_POSTINIT为参数调用OEMIoControl,OEMIoControl,


     13. OEMIoControl,这个我也不多说了,由我们OEM定制.

以上为wince 基于ARM cpu 的内核启动的过程.
点评回复

使用道具 举报

发表于 2008-10-27 06:55:58 | 显示全部楼层
谢谢楼主的资料,[em09][em08][em08], 谢谢楼主的资料,[em09][em09][em09]
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-12-27 13:22 , Processed in 0.055878 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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