In this exercise you are to create a new circBuff library – i.e. circBuff.h and circBuff.c. This…
In this exercise you are to create a new circBuff library – i.e. circBuff.h and circBuff.c. This library will implement a simple queue based on an array. Do the work in main() first before trying to split if off into separate files. The size of the queue array should be defined using a #define called BUFFER_SIZE. Use a typedef statement to define the item type to be q_item_t. That way you can make queues of ints, chars, uint8_t, floats etc by simply changing this typedef. The functions you will provide as your interface to the queue are: void circBuffInit(void); //This function simply sets the head and tail indices to 0.uint8_t circBuffAdd(q_item_t item); //This function will add the item to the back of the queue.//The function returns a 1 if successful and a 0 if unsuccessful. q_item_t circBuffRemove(void);//This function will return the item at the front of the queue.//If the queue is empty the function returns 0 but it is up to the user to check if this was//valid data or not by calling circBuffEmpty() first to check. uint8_t circBuffEmpty(void); //Returns 1 if empty, 0 if not. uint8_t circBuffFull(void); //Returns 1 if full, 0 if not. uint16_t circBuffNumItems(void); //Returns the current number of items in the queue. q_item_t circBuffGetPos(uint8_t pos); //Returns the item at position “pos” in the queue. void circBuffPrint(void); //Prints the queue to the UART Call the variables that keep track of the front and back of the queue “head” and “tail” respectively. Write a basic program to test your queue by adding and removing items. Send your output out over the UART. Finally, write a program that prompts the user over the UART to enter/remove numbers from the queue. The program should then add/remove etc these numbers and print the current contents of the queue.
Any citation style (APA, MLA, Chicago/Turabian, Harvard)
Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.
You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.