COMP22712 Microcontrollers
Saturday, May 13th 2023
3:02 pm
So I just finished submitting my last coursework submission for this module yesterday. This is a 100% coursework module, which involved 9 exercises, 4 of them are coursework submissions. Each of them are worth 20 marks.
Last week, I submitted exercise 5, exercise 7 and exercise 9. All in a week.
Yes, it was an interesting week, I’ve been waking up early, around 5:00am each day. Which is very doable at this time of the year since the sun is up at like 4:30am. I woke up mainly because I can’t sleep when it’s bright anyway, make myself food, and work on the 3 submissions. I would not have been in this position if I didn’t skip most of the labs for this module tbh.
Earlier this semester, I was having so much fun in this module. I really love it, that’s why I’ve taken it. There’s only around 50 people taking this module, and out of those, who are girls, I think it was just 8 people, me included. But point being, I took it because I was very interested(I still am) in hardware stuff.
Technically this is not really a hardware module, we worked with an FPGA, wrote ARM assembly code on it. Learned stuff like SVCs, IRQs and basic ARM assembly stuff. The closest we get to hardware is in exercise 8, where we have to design an IO driver with Cadence to use a buzzer, which is already on the board.
But back to my main point, I was having a lot of fun, but what happened? Why did I stop going to labs? After submitting the last exercise yesterday, I went home feeling very happy and proud. This week, despite being very hectic because of the workload, I find myself not as stressed as I should be(for someone who has a week to catch up with 50% of the module’s workload). I really do enjoy coding in assembly and working with low level stuff.
The thing that is stopping me from going to labs is, really, myself. Cliche ik. But fr, this can’t go on much longer. Basically what happened was, I had a very bad week of PMS around the middle of the semester, when exercise 5 was supposedly due(we had flexible deadlines for this module, which I suspect is one of the reasons this happened). My mood was at an all time low for the whole week. I basically didn’t go to uni at all because I just can’t.
But I should be able to get back to work after the PMS phase passed. Because I was fine for every other module. But not Microcontrollers. I could not bring myself to go the labs. I was stuck in exercise 5, where we had to interface with a timer, and I felt like everyone else was ahead of me. It wasn’t even that hard now that I think about it. But yea, I find myself not wanting to ask for help. And I felt ashamed of being stuck on something.
I don’t mind being stuck on something sometimes, it is fun to solve problems. That is why I love coding. The bliss you feel when you fixed some bug, or make something work, is just wonderful. But what I don’t like is asking for help. I really struggle with that. A friend of mine, Asma K pointed that out to me in first semester. We were in a sub-team for our Software Engineering II module. We were stuck, and I was very reluctant to ask for help. That was when I first learned of this ’trait’ I have. And I still struggle with it.
I think, I really don’t like asking for help because, it makes me feel small, weak. I don’t like that feeling. But, last week, I asked for help. I found myself having to give myself peptalks before I go up to someone and ask for help. I asked Sarah, one of the girls who takes the module on how to scan the keyboard they gave us, because the documentation for it was very poor, and I could not understand it even after reading it MULTIPLE times. I was very hesitant. Because that was the first time I needed help for last week’s coursework catching up session. I think I wasted about 30 minutes pondering if I should go up to her and ask the question. When I did finally ask her, she explained it to me nicely and simply, and I was unstuck, I knew what to do at that point. Let me tell you, it felt like an achievement!
And then, I was stuck a couple more times, but each time I had to ask something, I take less time pondering if I should ask. It was like ‘Just Go And ASK!’ and I asked more stuff. I think I really take pride in not asking for too much help. So the fact that I asked and she responded very kindly really made me happy and made me so very grateful. That was with exercise 7.
Exercise 8, we had to use Cadence. See, I’ve worked with Cadence before in first semester, so I thought, I must be able to do it in a day right? No. When I asked Dan, if it is anything like first semester and he said no, my heart dropped. I missed the lab where they taught us how to use it and it was entirely my fault. But Dan offered to help, without me even asking, :sob: I was crying internally by then because I don’t have to muster up more energy and courage to ask for help. I am so very grateful to Dan, to Sarah, to everyone who helped me, and willingly at that.
Dan helped me lots with exercise 8, but despite that I was still stuck with something. So, I was hoping that I can seek help from the TAs the next day, since I have a lab on that day. And alhamdulillah it was resolved, I REALLY wish there’s better documentation for softwares such as Cadence because how would I know that I need to edit the name of the GND to have a <7:0> at the end to change it from a 1-bit ground to an 8-bit ground? But yea, should’ve gone to the lab right?
But all my issues were resolved by then, and I was happily coding my final project(exercise 9), learning about PWM and having some very nice insightful conversations with the lecturers and TAs there. And at the end of the day, I submitted exercise 9 at 6:03pm Friday and I am very proud of it. I might go to my lab next Monday, and see if Jim has marked my exercise 7, and get feedback so that I can fix any issues and refactor my code. There’s a lot more to improve obviously, more comments to add, and I should use the classic ARM calling conventions, but that takes time and I am not sure if I want to invest my time in that because I have a System Architecture exam next Wednesday.
TLDR
A conclusion to all this, was that I learned a lot of lessons. Never skip labs just because you don’t want to go, or because you felt overwhelmed, or because you felt intimidated. And ask for help when you need it, it’s okay to ask for help, it’s okay to not know everything. These things, for me especially, are easier said than done, but I’m learning to overcome it. Slowly, but surely.