Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
Implement the "Nuclear Reactor" example using the following: An ISR triggered by a button press A task to update the temperatures A semaphore to communicate between the ISR and the update task The update task should use dynamic memory allocation to get a buffer in which to place the temperature. Pass the buffer containing the temperatures to the checking task using an RTOS queue.Write an "Introduction to using FreeRTOS" document in which you use your "Nuclear Reactor" code as an example to explain the key concepts of Semaphores, queues, dynamic memory allocation in an RTOS and timing in an RTOS.This is a code: Nuclear reactor. //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// main.c////////////////////////////////////////////////////////////////////////////////////////////////////////////////#include/* Scheduler include files. */#include#include#include#include/*-----------------------------------------------------------*/voidTaskUpdatTemps(void *pvParameters);voidTaskCheckTemps(void *pvParameters);/*-----------------------------------------------------------*///global shared dataint temperatures[2];//xSemaphoreHandle-Data structure managed by the RTOSxSemaphoreHandletemperaturesSem;xSemaphoreHandleReleaseSem;ISR(INT0_vect){ //Release the semaphore xSemaphoreGive(ReleaseSem);}intmain(void){ //Set direction of PORTB pin 5,6,7 as output pins DDRB |= (1< DDRB |= (1< DDRB |= (1< //Generate in on rising edge on INT0 pin - bits in EICRA Reg EICRA |= (1 << ISC00); EICRA |= (1 << ISC01); //Enable - bits in EIMSK reg EIMSK |= (1 << INT0); //Enable interrupts - Set I bit in SR(status register) sei(); xTaskCreate( TaskUpdatTemps , NULL , 256 , NULL , 2 , NULL ); xTaskCreate( TaskCheckTemps , NULL , 256 , NULL , 1 , NULL ); //Create semaphores vSemaphoreCreateBinary(temperaturesSem); vSemaphoreCreateBinary(ReleaseSem); //Start the task Scheduler vTaskStartScheduler();/*while(1) { //do nothing }*/}/*-----------------------------------------------------------*/voidTaskUpdatTemps(void *pvParameters){//Just keep compiler happy (void)pvParameters; staticint count = 0;while(1) { //Take the semaphore ReleaseSem xSemaphoreTake(ReleaseSem, portMAX_DELAY); //Take the semaphore temperatureSem to protect atomic variables xSemaphoreTake(temperaturesSem, portMAX_DELAY); temperatures[0]=count; temperatures[1]=count; //Give the semaphore back xSemaphoreGive(temperaturesSem); //Increment Count variable count ++; //Toggle portb pin 6 to turn LED on/off (Using Exclusive OR) PORTB ^= (1< //Delay for 1 sec //vTaskDelay( 1000 / portTICK_RATE_MS ); }}/*-----------------------------------------------------------*/voidTaskCheckTemps(void *pvParameters) // Main Green LED Flash{int temp0, temp1; (void) pvParameters;//Set direction of pin to be an output DDRB |= (1<while(1) { //Take the semaphore temperatureSem to protect atomic variables xSemaphoreTake(temperaturesSem, portMAX_DELAY); temp0=temperatures[0]; //Delay for 1 sec vTaskDelay( 1000 / portTICK_RATE_MS ); temp1=temperatures[1]; //Give the semaphore back xSemaphoreGive(temperaturesSem); //Toggle portb pin 5 to turn LED on/off (Using Exclusive OR) PORTB ^= (1< //Checking to see if temperatures match if(temp0 != temp1) { PORTB |= (1< } }}
1- Allocate array with 32bit 100 element 2- Prompt the user to enter the maximum or the upper bound of the random value 3- Read the value and use it generate random numbers to init
Define the Parameter Passing Mechanism - Computer Programming? The Parameters are syntactically identifiers and they are used within the body of the function and sometimes the
how to save bulk entries at a time using collections?
What is an algorithm? What are the characteristics of a good algorithm? An algorithm is defined as “a step-by-step procedure of accomplishing some task'''' An algorithm may be sh
The reader-writer problem can be stated as follows: A shared memory location can be concurrently read by any number of tasks, but when a task must write to the shared memory locati
Your task will be to code a simulation of image compression based on the approximate low rank structure of the set of image patches. You will write functions .code = my block compr
Really urgent help needed with Javascript. I have this website: I">https://www.theppcpresents.com/globe13/#/home I need to remove the video on the slider so that it only sho
Write a function called triple (in a file called 'triple.m'). That takes a single variable x and returns a single variable in which every element of x is multiplied by 3. Make sure
CSCI 3380 Project 1 For Mano’s Computer design, we have the following flowchart for fetch and decode phases: Please write the code to simulate the computer to
Advantages of java stored procedures Transactions Although a saved process contains SQL orders, once collected it will socialize with SQL Hosting server very diversely from
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd