This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Newbie Questions

As a complete beginner with the AM335x Starte Kit I'm having a bit of difficulty finding things.

Q1. The information in the Device Abstraction layer API - APIReference_02_00_01_01.chm seems, so someone completely unfamiliar with this device to be very light on, more like a reminder for someone who is rather familiar with the 'reference'. Just where is this reference?

Q2. Are there more examples / resources in the Device Abstraction layer area?

Q3. How does one get from, say, the Device Abstraction layer API to a video player? (no, not using *nix or any OS, building up from the API ) Are there any resources I've missed somewhere in the woods?

  • Hello Mark,

    1) I think the "reference" here would be the AM335x TRM.  It can be downloaded from here: http://www.ti.com/lit/pdf/spruh73.

    2) Everything is in StarterWare.

    3) There is going to be quite a lot between StarterWare and a video player.  Because of the complexity of a true video player, we don't have resources that discuss this as this delves more into the section of general program development as opposed to something specific to this chipset or any of our chipsets.  At the core of any video player, there will be a receiving mechanism (USB, Ethernet, parallel) which is handled by the device abstraction.  However, the handling of the stream would have to be defined by the application.  There would also need to be a frame buffer, possibly two or more, to store lines until they frame is complete, and lastly, there would need to be a mechanism to output the frame buffers to the screen.  This would be another components that handles the line by line output of an entire frame via the LCD output device abstraction.

    That's only a basic setup.  This doesn't include any decompression of the stream and it assumes that it is in the exact resolution that the SW is designed for.  That would be handled in SW also.  

  • Thanks Michael,

    So carrying on from there (Still trying to locate the woods and the trees, etc.)

    1. So to understand the DAL API when the meaning of a call is not clear apparent on needs to read the appropriate place in the TRM, even though the TRM does appear not mention anything in the DAL by name?

    2. If, say, I look at RASTER.C I find it has 42 functions, but if I look at the sum total of the StarterWare examples (that I downloaded) I find that only 20 of them are 'exampled'. Does this mean the function of the others is considered obvious, or what?

    3. Understand, just pulling at an example. So does *nix use the DAL API to build on, or does it start from scratch?

    Can you hazard a guess as to how long it takes someone to become 'proficient' and then 'expert' at the DAL API?

    Is there formal learning available?

    Thanks.

  • So to understand the DAL API when the meaning of a call is not clear apparent on needs to read the appropriate place in the TRM, even though the TRM does appear not mention anything in the DAL by name?

    Think of the TRM as a companion document.  It will not mention anything in the DAL API because the TRM describes the HW, not the abstraction layer above it.  The StarterWare UG also has a lot of useful information about the APIs as well.  There is a PDF in the StarterWare Docs folder and is online here: http://processors.wiki.ti.com/index.php/StarterWare_02.00.01.01_User_Guide

    If, say, I look at RASTER.C I find it has 42 functions, but if I look at the sum total of the StarterWare examples (that I downloaded) I find that only 20 of them are 'exampled'. Does this mean the function of the others is considered obvious, or what?

    Not necessarily but each one contains a short description which was lifted directly from the comments in source code (this is a Doxygen-generated document).  The source is provided as open-source so that is an API is questionable in it's usage, the source can be reviewed, along with the TRM, to determine exactly what it does.  

    Understand, just pulling at an example. So does *nix use the DAL API to build on, or does it start from scratch?

    *nix includes device abstraction but the usage is very different. 

    Can you hazard a guess as to how long it takes someone to become 'proficient' and then 'expert' at the DAL API?  Is there formal learning available?

    Sorry, but that's entirely subjective.  We don't have formal training for StarterWare but there is a section of our Processors Wiki dedicated to StarterWare; http://processors.wiki.ti.com/index.php/StarterWare