Who let us start building an application, right, so here I have invoked an excessive fight that we
have exploded in and seemed to we have our Revatio project and I've also created an application project
and utilizing and had to wait and wait.
So the first step is to find out the driver, which I recommended for you at this rate.
So we'll just be going ahead in a boob support package.
OK, and here you have yes.
You what?
Well.
And for that, the recommended driver is you watch the SUV.
That is what we're going to include in our mean quite so harsh.
Include you.
Yes.
So and you just need to add a prefix asics dot h.
Right?
So this is the driver for you.
What?
We also required one more driver that consists of all the hardware related information.
Again, that is experimented on each way.
Right?
So first, we'll just be proceeding to you what you say and understanding the content of it.
Right?
So if you go to a driver, right?
So here you have a different option that you could set for you all you want.
Right?
Then you also have a different mode of an operation, right?
So you could either operate in a normal mode, the local look back mode or eco mode and remotely pack.
So we'll be demonstrating normal mode and the local loop back mode in this specific example.
You could explore the other modes, such as eco and remote.
Look back.
Right?
Then if you analyze, so we have again the same structure, which we finding another driver also, right?
So you have you what?
Yes, which is an instance structure and you also have.
A config structure, right, so both the structures are and over here.
OK.
And then if you go to a function, OK, you have a function to enable the transmitter and receiver of
you are to disable transmitter entry several if you want.
OK.
The transmitter and receiver offer you what to consist of local fiefdoms, right?
So we do have a function to verify whether the people are empty or not, right?
And other than that, you'll be finding we have a look at conflicts.
You have to initialize the lower level function to send the data.
OK by.
You also have a function to receive the data by, but by then you have a function to chase the moderate
Hokie.
To set the different mode of operation, you have a safe option.
So to new and existing option that we configured for a what we also have a cake option.
OK, do we have a function to sick, though?
If you put, we show.
OK.
And then we have a pool more function, which allows us to verify whether you are complete the data
transmission on or great.
Then we also have a function to set up the receive timeout.
OK.
And the interpretative function, right?
So we do have a good amount of function available in any light driver.
OK, let us first proceed with a initialization of fire.
You are right.
So we required a config structure first.
We go ahead to our mean core.
We declare the config structure and this should be a pointer to what config?
OK, along with this, we also required an instance, right?
So we'll just be copying this and let it just name decides and want.
So once this is done, we declared an independent function, which we named as a new light in it, and
this will perform an initialization of a new library.
So first thing is to generate the config structure, right?
So to generate a config structure, we have a lookup conflict where we need to provide the device right?
So you what config?
OK, and this will be what's to look up config.
And here we need to add a device like this where you find the device IDs.
You just need to go to an X parameter dot and then you need to search for you like this, right?
So this really goes to the location where we have all the data related to an instance of any like this.
So this is a device that we need to add over here.
OK, and as soon as you feel the device, I need to look upon to function, this will generate the config
search, right?
So once we have a config structure, we'll just be utilizing CFG initialize to initialize our benefit.
And now this returns S30, right?
So we'll just declare s32.
Let me just name this as status.
And here we are required to pass the argument first, first document is an instance structure, then
we need to pass the config structure.
And the last argument is the basic research, which could also be invoked from our config structure,
right?
So these the three argument that you need to pass to see if initialize and once you pass this, this
will automatically perform an initialization of a benefit, and this will also return the status of
an initialization, right?
Our agenda will be to verify whether statuses exist.
666 That's OK.
If that is the case, we can see the initialization is successful, right?
So.
If status is access to success in that case, they could just stand still, plaintiff OK and mention.
You worked in it successfully.
Right, this makes sense, as we can see, still brain death.
And then here we will mention you worked in it.
We night this completes the process of initialization now you could actually perform a set of disposal,
so that will verify whether hardware is properly configured, right?
Well, this system now we go ahead and copy the you what init function?
OK, and then we will be adding it to work here.
Right now we proceed.
And us just do more district right?
So first, let it just work around with changing the body and analyzing whether we are able to sustain
the DTI for different body types.
So by default, we know that you are configured to work at one one five two zero zero, right?
So this we already know if you just customizable or double click on anything processing system and you
spill configuration, OK and Agendas tab, you get an access to you.
Like one board, which is one one five two zero zero eight two, this is the default border which is
set by a board, you said.
Now let's try to modify the board.
We try to say if you go to and you like this.
So here you have an option to set the bar.
So if you click on an F3.
So this will basically give it this description of this function.
So this set the bar rate for a device.
Take the input for a valid and also verifies that the requested rate can be configured within the maximum
range specified by the MAX or the error rate.
If the provider rate is not possible, then the current setting is unchanged.
So this is something interesting.
If you specify the bar rate, which is view on the MAX board that you are, you can configure.
It will be simply keeping an existing border.
It won't be changing it right.
And this retains this axis if everything is configured successfully and it returns the excess to board
it, right?
So we'll go ahead and copy this now.
This request to our first one is that instead, Sucher and then we have a border, right?
So.
He would just be copping this, and then we go back to our mean.
Right, so here we are this function.
And then first argument is thanks to a structure, which is you are in this case.
Now let us first try to add the border as nine six zero zero, which is lower.
That's compared to the border, which is said by default, that is one one five two zero zero, right?
And we'll just be verifying whether the still able to get the seed right.
So let's just go ahead.
And I said, Plaintiff, OK, here we are not utilizing the lower level function which we send and receive
that up.
Resonator driver first will just be predominantly working on the border.
So once we understand our configuration of the border, it will be slowly progressing towards a lower
level if we are right.
So let me just mention board eight nine six zero zero, right?
So this is the string that we like to say right now it will just be building up our project first.
So once I build a successful right, we select our application project debug as launch and hardware.
Now this will automatically program my future.
First thing that we're going to do is to configure a way to create terminal to an incorrect border.
Right.
So we know that we have to change our border from one one five two zero zero two nine six zero zero.
Let us go ahead and select one one five two zero zero, which is the default border that we've been
using from the beginning and silicone four.
So once we click OK?
And click on Resume Button now you can clearly see we wouldn't be able to understand that, right?
This is because we have our differences in the border.
Right now will just be disconnecting our serial.
And then again, click on the resume button.
Click on this plus button.
OK, and now choose the border to be nine six zero zero.
Right now, you could see we are connected to a counselor at nine six zero zero.
We'll just be clearing Arkansas and then relaunching our application.
So this is our debugger session.
Right click and then you have a relaunch option.
Wait.
So once we relaunch our session now, we know that our serial terminal is operating at 19 00 border.
I'll just click on the resume right now and you could clearly see that we now get a reality, right?
So this is how we can very dynamically the body esperar requirement.
Right.
So this is the first study now since we plan to keep our body constant for this specific example.
We could just add this body OK in the white init function.
It's so already decided that after we perform an initialization, we can't figure out you want to operate
at.
Nine, six zero zero.
All right.
Once this is done now, let me just again build our application project.
And once bullets finish will again be launched, you got application rate, so they just go ahead and
try to launch our application again.
And now we go to a white minute and click, OK, right now you will see you are in it is successful.
As well as Baldry, which is nine six zero zero that is said by user, is also displayed great.
So put of this thing is working as expected.
Now we proceed to work on the lower level API rate.
So how we work, then sing and rescue function that we have in and you are obviously.