Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

This is to be done using UART in the language PLP CSE 230 Project 3: UART String Conversion Learning Objectives: ? Create modular code and

This is to be done using UART in the language PLP

CSE 230 Project 3: UART String Conversion Learning Objectives:

? Create modular code and interface with unfamiliar modularized code

The Task

In this project, you will be writing a program that converts a string to an integer (similar to Javas Integer.parseInt() method or Pythons int() function). You program will receive ASCII strings from the UART, one character at a time. It should convert each string of characters into an integer value that is passed to a provided print function. Strings will be terminated using a semicolon (;) character and will contain one or more characters in addition to the semicolon. Your program should be able to handle multiple strings concatenated together and treat each string ending with a ; as a separate input. When processing strings, it should detect any invalid characters within a string. Invalid characters are any characters other than 0 through 9 and ;. If an invalid character is detected then the rest of the string (i.e. all characters leading up to and including the next ;) should be received by the UART, but ignored. Your program should then use the print function to output an error message and then continue processing the next string as a new string.

Print Function

A skeleton PLP project file is available to download on Blackboard. The PLP project includes a second ASM file titled, project3_print.asm. This ASM file contains the print function used in this project. PLPTool concatenates all ASM files within a PLP project into a single location in memory (unless additional .org statements have been added to specify different location for code). No changes to project3_print.asm should be made.

When called, the print function will send the value currently in register $a0 over the UART to the PLPTool simulated UART device. Register $a1 is used as an invalid character flag for the print function. If $a1 register contains a non-zero value, the print function will display an invalid character message instead of the value in register $a0. The print function is called using the following instruction:

To use the print function, your PLP program needs to initialize the stack pointer ($sp) before performing the function call (or any other operations involving the stack pointer). For this reason, the skeleton project file

call project3_print 

includes an initialization that sets the stack pointer to 0x10fffffc(thelastaddressofRAM). This initialization only needs to be done once at the start of the program.

Deliverables:

Take the Project 3 Pre Quiz on Blackboard (3 points)

Submit your program on Blackboard with the format: lastname_project3.plp (25 points)

Note: Please do not zip the project file or include any additional files in your submission

Take the Project 3 Post Quiz on Blackboard (2 point)

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

AWS Certified Database Study Guide Specialty DBS-C01 Exam

Authors: Matheus Arrais, Rene Martinez Bravet, Leonardo Ciccone, Angie Nobre Cocharero, Erika Kurauchi, Hugo Rozestraten

1st Edition

1119778956, 978-1119778950

Students also viewed these Databases questions

Question

=+3. What is content curation and its role within social media?

Answered: 1 week ago