从零入手Kinetis系统开发10-eDMA模块.pdf

从零入手Kinetis系统开发10-eDMA模块.pdf

ID:50268304

大小:578.01 KB

页数:9页

时间:2020-03-05

从零入手Kinetis系统开发10-eDMA模块.pdf_第1页
从零入手Kinetis系统开发10-eDMA模块.pdf_第2页
从零入手Kinetis系统开发10-eDMA模块.pdf_第3页
从零入手Kinetis系统开发10-eDMA模块.pdf_第4页
从零入手Kinetis系统开发10-eDMA模块.pdf_第5页
资源描述:

《从零入手Kinetis系统开发10-eDMA模块.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、【原创】从零入手Kinetis系统开发(十)之eDMA模块2012-05-1621:19发表系统分类:嵌入式系统自定义分类:Kinetis标签:KinetisDMAUART离上次更新从零入手系列又是一个月了,哎,时间过的好快的来,30个一睁眼一闭眼的日子就这么过去了,呵呵。不要怪俺更新的慢,的确是写这个比较累人,另外为保证这个系列的质量,还是要靠时间磨一磨的,当然磨的好还是坏,群众的眼光是雪亮雪亮的,哈哈~(本段是牢骚,嘿嘿,不想看的直接略过,asm(jump“正题”))本来是想着昨天就写出来的,结果15号貌似是个好日子的来

2、,一个是飞思卡尔的寻龙活动,一个是小米手机青春版发布,自己就等着这两个较期待的事。果不其然,期望越大失望越大,哎...先说说第一个活动吧,感觉那哪是寻龙啊,一打开网页几乎占满半个窗口的火龙就赤裸裸的跳出来了,哪还用的着去“寻”,直接捉就是的嘛,木有难度,让俺本来颗期待寻宝找刺激的心拔凉拔凉的了,哎,估计向来无缘奖品的我是没戏了。另一个更让人窝火,苦苦等到10点,结果最后出来还是买不起,说是给俺们学生准备的,结果价格有点高不说还人人可以抢,哎,又让小米赚了个噱头了,俺们穷学生上哪说理去...呼呼,又是一顿牢骚,嘿嘿,作为学生还是专心

3、搞自己的技术吧,下面进入正题,asm(call"正题")。。。正题:欢迎跳转到此,嘿嘿,是不是有点汇编编程的赶脚,有木有!言归正传,上次说过要写篇DMA的介绍来,结果还是耽误了,这次就补上了,另外这里预告一下,下篇的从零入手打算写一下FlexBus的软件部分(前面说了说它的硬件设计),如果有用到的话敬请期待,不会用到或者早就已经熟用了就不用等了,当然期间还会穿插一些其他的工程技巧的,不要错过哦,亲...(咳咳,借用下淘宝体)下面就正式介绍下Kinetis的DMA:1.先介绍下DMA。DMA(DirectMemoryAccess)是

4、一种直接存储器访问技术,工作过程中不需要CPU干预,也不需要像中断处理方式那样需要保留现场、恢复现场之类的麻烦事,简单理解为一条直接连通外设与RAM的硬件通道(这句话需要仔细琢磨,下面文章里会重点提一下),所以DMA技术可以提高系统运行效率(即CPU可以干其他的事去,算是一种简单的并行模式吧)。而对Kinetis来说,我们会看到eDMA,其实就是多了个e(enhanced,即增强型),嘿嘿,至于为什么会多了个e,从下面对Kinetis的eDMA特性的分析就可以看出来;2.Kinetis的eDMA包括两部分,即DMAMuliplex

5、er(DMA多路转换器,就是个矩阵开关,路由DMA触发源的)和DMAController(DMA控制器,这个是重点,用来配置DMA控制引擎(Engine)和DMA传输控制描述区(TCD)),其内部框图如下所示:DMAMUX框图DMAController框图3.下面介绍下Kinetis的eDMA的一些特性,有点多,就挑重点和特色的来说了:(1)16个独立可配置的DMA通道,其中前四个通道可配置成周期性触发(需要用到PIT模块),如上图DMAMUX框图所示;(2)52个外设触发slots(这个我担心翻译不好误人子弟了就直接用该单词替代

6、了,呵呵,用过Qt的人都这是个槽的概念,大家权当触发源来理解吧),10个直通slots,每一个slot可以通过软件编程路由到16个DMA通道中的任意一个(这个通过配置DMAMUX_CONFIGn得到),这方面比STM32的M3好些,STM32是固定的,所以Kinetis灵活性好些(咳咳,该言论不代表贬低STM32,毕竟它还是很强大的);(3)独立可编程的源地址、目标地址和传输宽度(8bit,16bit,32bit,另外支持16byte的缓存),支持外设到RAM,RAM到外设,RAM到RAM之间的传输;(4)每一个通道都有一个11个

7、寄存器的TCD(Tranfercontroldescripter),注意这11个寄存器(包括16位和32位宽度的寄存器)才是我们编写驱动的重点对象;(5)固定的优先级模式和时间轮询(round-robin)优先级模式(注意:如果不通过软件设置优先级的话,系统默认为每个通道的优先级等于它的通道号,即0通道的优先级为0,且优先级号越小,其优先级越低);(6)每个通道包括了三个中断标志,即DMA半传输完成标志、DMA传输完成标志和DMA传输出错标志,3个标志逻辑或成一个中断请求(所以如果都使能了,那可以通过查询相关标志寄存器来判断当前的

8、中断类型);(7)可软件中断取消DMA传输(通过配置DMA_CR_CX位)。4.DMA工作流程,这里先给出清华的一个功能框图,我觉着还是挺清晰的,便于理解,然后接下来的三幅图分别代表了一个DMA完整传输的流程,这里一句两句没法说清楚就只能上图了,不

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。