Let's learn the basics for robotics? With edX's "Embedded Systems - Shape The World"

many things more…

Thanks Photolong,

Another hard week also Lab9 is a bit more complex. However I think we start to feel the skills we are gaining with this course, those help us to solve these new Labs. I hope it goes on the same way for next Labs :wink:

well happy to report iv

well happy to report iv finished lab11 and another 100marks … very tough lab if you dont have much coding experience … but am very happy to have managed to create code all by myself that accomplished the task … will also say im 100% sure if there was no debug option giveing you the opportunity to step into the code and find out whats going on and see how the code works line by line there is no way i would have being able to do lab11.

The debug feature is so amazing  … as seeing what was happening and what was going wrong i was able to create code piece by piece run it to see if it worked … change it if it wasnt doing what i wanted it to do … and eventually i got code wrote that worked …

it may not be the prettiest bit of code and im sure others could do the same with a lot less code but i have to admit im very proud of it lol lol 

anyway off to look at lab 12 and see what lies ahead of me 

PS why dosent Arduino have a debug feature …  i could imagine id learn more and write code if it had

Good about debugging!

Hi Photolong,

Long time without updating but with many things to do the course has to wait longer.

However I see you do progress and I’m happy. Also because I agree the Keil software has some very useful tools on debugging that make life much easier :wink:

I just finished Lab10 and I have to say it was harder than I expected. You can read my whole feedback above, but now I’m ready for Lab11, let’s see!

P.S.: I think it’s not the actual hardware but the tools that come with them what actually make people choose which platform they keep working on…

nice going on lab10 …
nice going on lab10 …
unfortunately for me things have being very tough of late … my older sister passed away a week a ago from cancer … and it has being a very tough time for my whole family … but as we are a very close family we will get through this together …
but as you can imagine its hard getting back into things and while im keeping busy and catching up on whats being going on on LMR site and other sites im invloved with … trying to get my head to focus on doing this course has not being possible yet … but hoping another few days and my head will get back the focus required to continue.

looking forward to your assessment of lab11 which was anothe interesting lab … lab12 which im on at the moment which involves interrupts is very tough and requires a lot to understand so under present circumstances proving impossible for me to give it the required attention needed but hopefully i will be able to get stuck back into it shortly … until then will just partipicate on the forum and spend a bit of time on the various forums i follow.

don’t worry…

Hi Photolong,

First sorry for the loss, I hope you and your beloved people can be as good as possible. Like always there are some important people in life then comes all the rest of things.

Besides, I’m finding Lab11 quite challenging because of the intense it’s in programming C. I want to do it well dn step by step, so I need more time to understand everything well, which takes time and full concentration together, hard to find these days with work and family as you explained too.

So I keep going and hopefuly I will have some “Aha” moments soon and solve this lab :wink:

See you arond whenever you can, it’s always good.

Ty Franciscodr …if your

Ty Franciscodr …

if your still having problems with lab11 as per the forum … post your code here and i will run it and see if we can figure it out together.  and when you get it sorted we can compare mine with yours as i feel mine is a lot different from the way you did yours and it would be interesting to see how we both sorted out this lab

thought id post my solution

thought id post my solution to the … void UART_ConvertUDec(unsigned long n) … Part of lab11 you could paste this into your programm and step through it if you wanted to see how it works … would like you to post your solution as id love to see other ways to acomplish this …

void UART_ConvertUDec(unsigned long n){

if(n > 9999)

{ UART_OutString("**** ");

}

else{

unsigned cnt=0;

unsigned char buffer[5];

unsigned char d;

buffer[0]=0x30;

buffer[1]=0x20;

buffer[2]=0x20;

buffer[3]=0x20;

buffer[4]=0x20;

buffer[0]=n;

while(n){

d=n%10;

n = n/10;

buffer[cnt]=d;

cnt++;

}

cnt=4;

while(cnt !=0){

d=buffer[cnt-1];

if ((d<0x20)&(d>0x00)){

d=d+0x30;

UART_OutChar (d);

}

if (d == 0x20){

UART_OutChar (d);

}

if (d ==0x00) {

d=d+0x30;

UART_OutChar (d);

}

cnt–;

}

UART_OutChar (buffer[4]);

}

}

Though id also mention lab12
Though id also mention lab12 agrrrrrrrgh this is also a hard one … learning about interrupts … and im finding it very difficult … finally managed to acomplish what i persume is the easy part … pressing the switch toggles a pin high and low then pressing the same switch again turns the pin low … coding this was for me so difficult and took me many many days but finally last night managed to get it right … now to work on the interrupt … lol took me so long to do the switch going to have to go back over and relearn about interrupts as iv forgotton what i learned lol lol …

thanks!

Hi Photolong!

Thank you for your tip, however I did it already and it worked fine. You can read my review above in the main article I have posted.

Now I’m reading Lab12… let’s see…

Things are getting complex as we follow up new chapters…

Hi Photolong,

I think so, things are getting harder as we go with the chapters. Interrupts are usually difficult stuff as it combines both software and hardware working together. I’m late three weeks already but I will finish at my own rithm.  However it’s about learing, not about finishing just one time at whichever price, isn’t it?

nice 1 finshed lab12 100
nice 1 finshed lab12 100 marks … lol coding the switch proved to be the hardest part … understanding how the interrupt worked was tricky and i didnt grasp it for ages but once i realised the code for the interrupt ran in the background from the start and only kicked in when the trigger was triggered then it got fairly easy … awkward part was i am used to single stepping through the programm and seeing how it works and fixing things that go wrong … so even though the coding of the switch was very tough i kept stepping through and changing code till i got it right … how ever with the interrupt its iniatlised at the start and when trigger is triggered it runs but you dont get to step into it and see whats happening so if you set it up wrong you cant figure out why or in my case interrupt was fine but the part that handles the trigger was wrong so it looked at first as though my interrupt wasnt working … but i restarted from scratch figured a few things out checked it and got it to trigger and then put back in my switch code inserted the trigger in right spots and it wroked.

so off now to look at lab13 …

lol wasnt a tip was showing

lol wasnt a tip was showing how i did it and was hoping you would post your code so i could see another way of doing it lol

Thanks! I have just finished Lab 13

And it was quite hard.

As my C language programming skills were basic I had to learn fast to cope with it. So I did it and now you can read my review and watch my videos above, do you like them? Well the music is not Hi-Fi nor a good composition but I think it’s a good proff of concept :wink:

yes i enjoy following your

yes i enjoy following your write up on the labs … delighted to see you passed lab13 …

me i having a bit of a disaster … had  a user profile failed logon on my laptop and could not access my laptop … had to logon through my wifes profile and create a new user and try a transfer my data from old profile to new profile …

lost access to my eamil account which i used for the course and lost access to the course … had to reregister for the course so lost all my marks for all the labs i completed so that was a bit of a disaster.

nearly back up and running again just have to download keil programmer again as i messed it up in the transfer from my old profile to my new profile …

so with everthing happening lately struggling with lab13 … main part is i cant figure out how to make the sine waves for the notes … will have to post on the forum looking for help on this … really want  to get lab13 and 14 done before the course finishes so its going to be tough going as i busy off my laptop at the moment … Daughters Communion is on Saturday and im busy around the house trying to get ready for it and trying to get laptop back to normal and move all important data like pictures and videos on to a spare external hard disc that i got a lend of … 

other than that all fine still have the files for the course with the code i wrote so thats great be a bit annoyed if i had lost them lol

go go ! running fast to reach the end of the course!

Sorry that you had to start again.

Depening on the operative system there are workarounds to gain access to your hard drive, did you check it?

Meanwhile maybe I can help you with the sine wave thing… which part did you cover already on Lab 13? I mean, did you prepare already the I/O ports?

And the Systick service?

What about the sinewave routine?

Please tell me so maybe I can help you.

Kind regards and have double access to your online accounts :wink:

help creating the sine wave

help creating the sine wave would be great … we have to create 4 notes and im not sure how to go about it … saw the excel spread sheet in the lab13 program file but not sure what note the sine wave was for … or what changes do i make to create a sine wave for a different note … i would be happy if i could understand this as im pretty sure i could work out the rest of the lab … but also i want to go over lab14 before course ends in case i have questions on that lab… so if i could get creating a sine wave for each note out of the way i would go look at lab14 and then come back and finish lab13 … this way i could post my problems for both labs before the course finishes. 

thanks for the help

some tips for sinewave and Lab 13.

I found very useful the notes to develop this Lab 13 that are in it’s Lab guide:

https://courses.edx.org/courses/UTAustinX/UT.6.01x/1T2014/courseware/ad2c597b260840e79bb7dd50d7eb2d07/ac6c65657f1e478bac73c71d9c8b8fba/

 

First I developed the DAC.c file with its routines.

I tested them as lecturers explain them in “Part c)” explanation

As a tip for sine wave generation, you have the basic routine in Chapter 13.4:

https://courses.edx.org/courses/UTAustinX/UT.6.01x/1T2014/courseware/ad2c597b260840e79bb7dd50d7eb2d07/6cce55d09ac0473797892e6c08d3c7de/

 

Then I developed the piano (Piano.c) detection and checked in debugger. Later I did the Sound.c routines (Init and Play), and finally all bring together with the main routine, that 

1st check for any input, if not Sound off

2nd if input != 0 then put the right note/period to the variable period

3th call the sound routine that calls to the DAC one with Systick working and voilá you have a digital piano working. Did you like my song in the video attached to my article? :wink:

well done Franciscodr on

well done Franciscodr on completing lab14 … will go through all your info … and thanks for the tips for lab13 … unfortunately im stuck again dam laptop … new profile i created has also crashed for the failed logon problem so lost keil programmer so going to have to reinstall grrrrrrrrrr … and things being very busy offline so not having any time at the moment … my Daughter made her communion at the weekend which was great but had kept me very getting things ready for it so no time to sort out my laptop problems … hopefully this week ill get a chance to sort things out and try and get a bit more done before the course finishes.

thanks and keep going!

Hi Photolong,

Thanks! It was not as hard as other Labs, but a bit tricky in some things as you can read in my article :wink:

Ok, so your issues with the computer are getting long. Don’t quit and keep doing! And tell me how things are going.

Nowadays I’m upgrading Lab 14: including a small software filter in order to avoid the “dancing figures” that occurs in the last digits of the measure displayed. And it works very good!

Yesterday I calibrated the whole system to adjust both offset and slope in the potentiometer. Now it’s calibrated and works perfect!

Next days I will create a new library for the ultrasonic sensor HC-SR04 I bought in ebay very cheap and good. It will serve as sensor for the next robot I’ll develop…

Hi Franciscodr … well

Hi Franciscodr … well done on completing all the labs … am now looking forward to seeing what you now do with your board and all you have learned … so keep us informed.

as for me got laptop sorted … had a few issues with lab files being mixed up between new profile and old profile but got them sorted … still havent worked on lab13 focus still not right … so spent most of my time helping others on the forum sort out there problems … i have become quite good a debug code others have problems with lol … being one of my favourite things being able to step through the code see how it works and if it dosent being able to fix it.

will work on lab13 and 14 as i plan to get them done as i dont want to miss out on learning anything … will then either try lab15 or go back to start of course and go through every thing again as im sure there is a lot i can pick up the second time around that i didnt understand the first time.

also going to make my own programm from scratch … as was shown at the end of lab15 … this will be very handy as i like using keil …

other than that i am extremely pleased with doing the course and got far more out of it than i ever expected to do … and im allready waiting to do it again next year with a board this time and get the cert.

i also have signed up for two other courses on eDx … computor programming part 1 and part 2 as i want to learn more about code these start in July … and i will continue to look through eDx to see if i fancy any othe courses that come along