Our Services

Get 15% Discount on your First Order

[rank_math_breadcrumb]

Programming Project

i want someone to do this project

CSE 230 Project 3: UART Palindrome Checker

Learning Objectives:

● Create modular code and interface with unfamiliar modularized code

The Task

In this project, you will be writing a program that receives a string of characters via the UART, checks if this

string is a palindrome, and then uses a print function to print either “Yes” or “No”. A palindrome is a sequence

of characters (typically a word or phrase) that is the same both forwards and backwards. For this project, strings

will be terminated using a period (‘.’). You may assume that a string will contain at least one letter in addition to

a period (e.g., the input, “b.”, should be considered a palindrome). You will not need to handle empty strings,

strings containing only a period, or stings containing characters other than letters, spaces, and periods. Your

program should be able to handle multiple strings sent one after another or concatenated together. For

example, the string: “abba. data.” should print “Yes” followed by “No” on the next line. Spaces should be

ignored when checking for a palindrome and the palindrome should not be case sensitive. For example, “A nut

for a jar of Tuna.” would be considered a palindrome.

Print Function

A template PLP project file is available to download on Canvas. The PLP project includes a second ASM file titled,

project3_lib.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_lib.asm should be made.

When called, depending on the value in register $a0, the following string will be displayed on the simulated

UART device’s output. If $a0 contains a zero then “No” will be displayed and if $a0 contains a non-zero value

(e.g. one) then “Yes” will be displayed. The print function is called using the following instruction:

call project3_print

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 template project file

includes an initialization that sets the stack pointer to 0x10fffffc (the last address of RAM).

Template Structure

The template project file contains six function stubs that need to be implemented. Five are called from the main

loop and the sixth is called from “period_check”. The template file contains comments with descriptions of what

each function needs to do and how it should be implemented. The table below provides a brief description of

the functions.

Function Name Function Description

poll_UART

Polling loop for UART’s status register,

reading new character, and indicating

character has been read

period_check

Checks if new character is a period and

makes a nested function call to

palindrome_check if it is

space_check Skips saving space characters to array

case_check
Converts new character to uppercase if it is

lowercase

array_push Saves new character to array

palindrome_check

Moves inwards from front and back of array

and compares characters at each step to

determine if the string is a palindrome. If at

any point mirroring characters are not

equal, then it should use the print function

to print “No”. If the comparison reaches or

passes the midpoint then the print function

should be used to print “Yes”.

Debugging Tools

To show that you properly tested your program, please save your program while it is in simulation mode (the

blue simulation mode button has been toggled on) such that a CPU Memory Visualization window is open and

shows at least the first 6 words of memory in the array. Please keep in mind that the starting address of the

array is relative to the number of initializations placed before the assembler directive allocating space for the

array. If you change your initializations you may need to adjust your CPU Memory Visualization base address.

The Array Example video in this project’s module demonstrates how to set up a CPU Memory Visualization

window. It is acceptable to also see program contents in memory (these cells will be colored blue). For example,

it would be acceptable to see the following in the visualizer after the string, “abcd.”, has been sent by the user.

Additionally, the watcher window should contain, at minimum, registers $v0, $s1, and $s2. You may also include

any other registers in the watcher window that you find useful for debugging.

Points will be deducted if a CPU Memory Visualization window configured to show the start of the array does

not open when simulation mode is toggled on or the watcher window does not include the minimum set of

registers (the watcher window does not need to open when simulation mode is toggled on).

Deliverables:

1. Take the Project 3 Pre Quiz (6 points)

2. Submit your program on Canvas with the format: Firstname_Lastname_project3.plp (21 points)

3. Take the Project 3 Post Quiz (3 point)

Share This Post

Email
WhatsApp
Facebook
Twitter
LinkedIn
Pinterest
Reddit

Order a Similar Paper and get 15% Discount on your First Order

Related Questions

Virtual LANs

  Questions: A VLAN allows different devices to be connected virtually to each other as if they were in a LAN sharing a single broadcast domain. 1. Why a network engineer would want to deploy VLANs? 2. How do VLANs improve network security?

compliance and rules to follow in cybersecurity.

Follow the attached instructions to complete this work. Note: Make sure to follows rubric or aligns with Rubric. Unit 8 Assignment Directions: Case Study Review the following hypothetical case study. Consider the big-picture ideas and the specific concerns. Make use of the key terms and concepts from the readings in

Discussion on data ( computer science)

Follow the attached direction to complete this work Unit 7 Discussion   Overview Consider this scenario: PQR Corporation provides facial recognition technology to customers. Its products include customer access to consumer electronics as well as mass surveillance capabilities through networked camera systems. While operating legally, PQR has maintained a low

Computer Science – Machine Learning Python Programming Assignment

Assignment Help. Please don’t forget to add comments in the code Page 1 of 3 NorQuest College – CMPT 1011: Lab Assignment 5 CMPT 1011: Introduction to Computing Lab Assignment 2: Variables, mathematical operations and data types Value This coding challenge is worth 3% of your final grade. Background In

Public safety Communications

Subscribe The Communications and Cyber Resiliency Toolkit provides guidance for establishing resiliency measures, public safety communications can better withstand potential disruptions to service. This toolkit, developed by CISA, describes networks and systems critical to successful communication and cyber resiliency and possible threats while providing many resources and additional links for

Case Study 4 o Data (computer)

Follow the attached instructions to complete this work Unit 4 Case Study Directions Review the following case study. Consider both the big-picture ideas and the specific concerns. Make use of the key terms and concepts from the readings in your written responses to the questions below. The case study paper

Discussion 5 and 6

Follow  the attached instructions to complete this work Unit 5 Discussion   Overview In this discussion, you will be considering the emphasis on aspects such as privacy and safety. You will reflect on the significance of the legal concerns and goals of public-private partnerships to address cybersecurity. You will also

SQL injection

Hey! ????  I need an expert in SQL injection, DDOS attack, Code injection attack, XSS attack! To talk further please contact me on discord at mara411 so we can talk more freely and then I will hire you on here! Thanks ???? 

Free CAD, FeniCS or paraview

I have attached the picture and sample work too, I need work as like sampl, but not the copypasted Make sure you can ask me multiple questions but not dont do rubbish work

database

2. Final Assignment – equivalent to 4,000 words The final module mark is based on two deliverables focused on the CarNow case study described below. – 50% of the final mark a. An advisory report – 50 % of the final mark Includes 5% (of the module grade) given for

Computer

Documentation Tabula Insurance Agency ENTER AND UPDATE COMPANY DATA Author: Ashanti Joyner Note: Do not edit this sheet. If your name does not appear in cell B6, please download a new copy of the file from the SAM website. Personnel Tabula Insurance Agency Personnel: April 4-10, 2024 Employee Name Salary

Computer class

All information is below Toronto converted a declining part of the city into a vibrant neighborhood using the smart city 1.0 approach when a local technology company introduced electric shuttle buses to replace private cars and intelligent traffic lights to regulate the flow of pedestrians, bicycles, and vehicles. From Frankl,

Week 15

Read attachments for assignments  Week 14 Feedback Overall Feedback Well done on this assignment You will have to refine your tables and figures for your final submission. Always introduce them to the reader in preceding paragraph, properly create APA table, and cite figures. See Video:   APA Tables and Figures

Prof Double R

  PowerPoint Presentation: Narrative Presentation to the Board of Trustees The Centers for Medicare & Medicaid Services (CMS) has taken on a more visible role in health care. A great deal of change has transpired to improve patient safety and implementation of additional quality metrics. The new health care reform

Week 14

Please read attachments for details  image1.png

Week 13

Read attachments for details  The Finishing Touches – Week 13 Instructions For this week’s assignment you will submit the material discussed in the lesson plan and summarized below: · A refined introduction (Mandatory) · Updated Title Page (Mandatory) · Copyright Page with Declaration (Mandatory) · Dedication Page (Optional) · Acknowledgement

SCMT699

please read attachments for assignment  Feedback from week 10 Please address your design before your next submission.  Its how you are going to go about conducting your research so other can duplicate it. This is a good book on it. Creswell, J. W. (2009). Research design: Qualitative, quantitative, and mixed