User Tools

Site Tools


lab4

This is an old revision of the document!


Background

BeagleBone PRUSS

The BeagleBone is a low-cost, high-performance embedded platform for hobbyists and other uses. It is based upon a TI AM335x 1GHz ARM® Cortex-A8. Features (from the product website) include:

Processor: AM335x 1GHz ARM® Cortex-A8

  • 512MB DDR3 RAM
  • 2GB 8-bit eMMC on-board flash storage
  • 3D graphics accelerator
  • NEON floating-point accelerator
  • 2x PRU 32-bit microcontrollers

Connectivity

  • USB client for power & communications
  • USB host
  • Ethernet
  • HDMI
  • 2x 46 pin headers

The board comes pre-loaded with and Ångström Linux distirubtion and many other options can be considered for development and operating the device. It is a very powerful device with a large number of peripherals built in making it well-suited for a number of soft real-time applications.

To support demanding hard-real time constraints or to off load processes from the main CPU, the processor chip includes two programmable real-time (PRU) cores. These are reasonably high speed, 32-bit RISC cores where every instruction takes a deterministic 5 ns to complete. The devices have dedicated peripherals, access to the main system's peripherals, and ability to communicate with the main processor through interrupts, shared memory or DMA.

These devices can be used to create programmable real-time peripherals and subsystems. The downside is that they are specialized and need low-level (assembly) programming (at least until someone develops a compiler) and configuration.

Procedure

The goal is to have a task that every 300 ms checks the distance of the IR Rangefinder and change the servo's position accordingly.

  • Open the lab stationary using CodeWarrior located in:
LAB04/Micrium/Software/EvalBoards/Freescale/MC9S12DG256B/WytecDragon12/Metrowerks/Paged/
   OS-Probe-LCD/OS-Probe-LCD.mcp
  • Add a task that every 300 ms calls ir_range(ATD0DR0)
  • Connect the VCC and ground wires of Servo and IR Range Finder. Make sure you have +5 volts and have a common ground between the microprocessor and your power supply.
  • Connect PP7 pin to servo's input signal and PAD04 pin to R Range Finder output signal.
  • Double check your circuitry with your TA before powering up anything.
  • Recompile the project and transfer the binaries to Dragon12 board. icon3.jpg

Reference Manuals

Resources

lab4.1393208977.txt.gz · Last modified: 2014/02/24 02:29 by allison

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki