这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » uTenux--003--1软件底层驱动组织结构介绍

共2条 1/1 1 跳转至

uTenux--003--1软件底层驱动组织结构介绍

助工
2013-05-31 10:19:16     打赏
 

经过第一节对uTenux初步认识和第二节对uTenux\AT91SAM3S4C开发板的硬件结构的介绍,这一节我们将要学习的是uTenux\AT91SAM3S4C的软件底层驱动。

在悠龙公司的官网或者uTenux\AT91SAM3S4C开发套件的光盘中我们都可以找mdk_source这样也该文件夹或压缩包。这个和第一讲中提到了uTenux_V1.5.00r160压缩包将是我们未来这段时间主要学习和完善的内容了。

下面是mdk_source文件夹下的目录内容:

├─01-Nandflash

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─02-SD card

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─03-USART

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─04-usart_rs485

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─05-Uart

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─06-LCD

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─07-SPI_Touchscreen

  ├─inc

    ├─include

    └─lib

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─08-Led_Controller

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─13-ADC12

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─15-fatfs_nandflash

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─16-cm3_bit_banding

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─17-CRCCU

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─18-dac12-sinewave

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─19-effc_uniqueid

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─20-lowpower

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─21-pmc_clock_switching

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─22-pwm_pdc

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─23-RTC

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─24-RTT

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─25-OS

  ├─CoOS

    ├─Document

    ├─kernel

    └─portable

        ├─IAR

        └─Keil

  ├─RTX

    └─RTX_Blinky

        ├─Lst

        └─Obj

  └─uCosII-2.52_SAM3S_FLAG

      ├─GPIO

      ├─MCUTarget

      ├─project

      ├─ReadMe

      ├─uCOS-II

        ├─Ports

          └─ARM-Cortex-M3

              └─Generic

                  ├─IAR

                  └─RealView

        └─Source

      └─UserApp

├─common

  ├─chip

    ├─cmsis

    ├─include

    └─source

  ├─fat

  ├─LIB

  ├─memories

    ├─build

      └─mdk

    ├─include

    ├─nandflash

    ├─norflash

    ├─sdmmc

    └─spi-flash

  ├─peripherals

    ├─include

    └─source

  ├─startup

  └─usb

      ├─common

        ├─audio

        ├─cdc

        ├─core

        └─hid

      ├─device

        ├─audio-speaker

        ├─audio-speakerphone

        ├─ccid

        ├─cdc-serial

          └─drv

        ├─composite

          └─drv

        ├─core

        ├─hid-keyboard

        ├─hid-mouse

        ├─hid-transfer

        └─massstorage

      └─include

├─USB_Audio_Headphone

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─Usb_Cdc_Serial

  ├─driver

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

├─Usb_Hid_Keyboard

  ├─inc

  ├─project

    ├─flash

    └─sram

  ├─ReadMe

  └─src

└─Usb_Massstorage

    ├─inc

    ├─project

      ├─flash

      └─sram

    ├─ReadMe

└─src

看到上面的目录内容是不是已经心里有点慌,底气不足了呀,嘿嘿,别急,其实这个目录下的内容可以分为3个部分,其中我认为最重要的就是common这个文件夹。Common文件夹的作用就如他的名字一样,这里面有各种底层的驱动。其中的common\chip目录下是针对AT91SAM3S4C控制器的底层驱动,这个类似于STM32的底层驱动,这个也就是所谓的Cotex M系列处理其软件设计的好处了。虽然各生产商提供的底层驱动库书写命名不大相同,但是对于应用他们的原理是一样的也就是对于AT91SAM3S4CCotex内核驱动和其外围的驱动。另外在common\startup中是AT91SAM3S4C的启动文件,就不多言了。Common\fat文件夹下是文件系统,但是目前是空的,应该是需要我们去完善了。Common\LIB里面是以及编译了的库文件,我们对此不必太关心,如果用KEIL编程也许不会用到。Common\Peripherals目录下是对于uTenux\AT91SAM3S4C开发板的驱动文件,我们以后要好好研究这个文件夹了。Common\memories文件夹下是对开发板上的NAND Flash的底层驱动。

还有一个文件夹就common\USB,这个望文生义,我就不在细说了。Common文件夹下主要就是这些文件了,还有一些零散的文件,这些是在我们用板载的NandFlash时的启动文件,后面应用时会讲解其用法。

mdk_source中有3部分文件夹,刚才说了最重要的部分---common,接下来说一下第二部分。第二部分是我们对common文件夹下内容的具体应用,就是01-Nandflash-à25-OS25个文件夹了,这些基本把uTenux\AT91SAM3S4C开发板的功能应用了,不过也就是仅仅简单的调试了下硬件而已,并没有把这款开发板的功能发挥的淋漓精致,所以还需我们努力,去充分的运用这款开发板,实现他的应用价值。

最后一部分就USB部分了,这一部分是针对AT91SAM3S4C处理器自带的USB接口的应用,像HID设备,存储设备等功能的实现。另外还有一个文件Clean_Bin_Files.bat,这个批处理文件使用来清除由KEIL编译后生成的目标文件的。

以上便是对mdk_source文件夹的讲解,至此结束这一节吧。下一节主要讲怎样重新整理common文件夹结构,以方便我们今后的使用,以及怎样添加我们用到的处理器外设驱动和开发板的外设驱动,以保证不用的外设不添加驱动,使得减小我们的编译时间。

OK,这一节结束。谢谢您的阅读,希望您留下宝贵的意见建议,谢谢!




关键词: uTenux     软件     驱动     组织结构     底层    

高工
2013-06-20 15:37:14     打赏
2楼
期待下一节啊!

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]