Answered step by step
Verified Expert Solution
Question
1 Approved Answer
to write a robotic arm controller. The controller has one motor for each of the five fingers ( the pinky is finger 0 and the
to write a robotic arm controller. The controller has one motor for each of the five fingers the pinky is finger and the thumb is finger with others in order Our hardware uses a scheme called memorymapped IO whereby the hardware intercepts accesses to particular memory locations and interprets them as signals to the hardware device instead of RAM accesses thus these addresses do not correspond to readswrites of memory, which might not even exist at these addresses
Arm User's Guide
The arm's API supports the following operations and more:
Initialize: write the integer to memory location xFFEE This will also close all fingers com pletely.
Ready: Every initialization operation must be followed by this once to ensure that the arm is ready to receive commands. The arm clears bit of memory location xFFEE after it has initialized all its motors and it is ready to receive instructions. In other words, the program must wait for this bit to become before proceeding.
Open finger k by radians: set bit k k of memory location xFFEEC The upper bits ie k do not map to any I devices and may thus be corrupted as you wish
Close finger k by radians: set bit k k of memory location
xFFEEC
Due to mechanical issues since motors are far slower than computers successive openings of the same finger must be separated by at least ms to avoid motor slippage.
Assignment
Draw a CFG and write a MIPS program to do the following:
Open the index finger completely ie radians
Close the index finger exactly half way while opening the thumb also exactly half way. You wish to do these two fingers in interspersed manner, not one after the other in other words, this means you should close the index finger by radians, then open the thumb by radians, before closing the index finger more.
Since we don't yet have a way to implement time delays, you can simply write delay n as an instruction to indicate a delay of n s
The same conventionsrules as on the previous homework apply, but you may also use the pseudoinstructio li if you want, and of course the branchrelated instructions but not pseudoinstructions Submissions without a CFG will not be graded and it makes no sense to not do the CFG first
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started