Category: Embedded Development

Programmable PSU

I need to address one more electronic designs – I need a 15A PSU for my robot. I did a vero board design earlier using 4 x DC/DC converters due to their low cost. This delivers 12A in peak which is what I need with 12 x servo’s to allow them all to operate simultaneously.…

Read the full article

The fun of electronics

Just realised that I have produced 15 different electronic designs of which 14 contain a MCU the last 6-8 months. I have several other designs in the planned pipeline, but I am holding back a little because I am getting a huge backlog of designs I need to finish coding for. The challenge is that…

Read the full article

Plain Assembly – parameters

Developers of C/C++ will probably be a little confused over the lack of pointers. I use syntax like: Func MyFunc(MyObject ob) What is “ob”? Am I sending the full object, a reference or a pointer? Func MyFunc(MyObject ob, uint32 i)             ob.myParameter = 1             i=2 End MyObject foo uint32 var Call MyFunc(foo, var)  In…

Read the full article

Plain Assembly – Event triggers

I need to evolve my Event trigger mechanism. Lets assume we want to control a robot with 2 electric motors – one left and one right. We are currently running forward with 1000 RPM and want to reverse with 10RPM. Assign leftMotor.direction = reverse Assign rightMotor.direction = reverse Assign leftMotor.speed = 10 Assign rightMotor.speed=10 The…

Read the full article

Plain Assembly – End

I just realized that I probably can optimize the assembly a little by introducing “End” as a single entry instruction. The reason is because we now use goto that are 2 entries. I can avoid the 2. entry by using the stack. for x=1 to 10              nop end As “for” is an instruction it…

Read the full article

Plain Assembly examples

I used a bit of space on If, so I will just quickly draft the rest of the instructions in High Level Assembly syntax and Low Level Assembly syntax assuing I need both – we can discuss the draft and possible changes later. For loop for A=1 to 10 step 1             nop end Low Level Assembly:…

Read the full article

Plain Assembly example – IF

The list of instructions will need to be extended With low level stuff as I mature the VM and implement it, but lets start writing some code and assemble it into actual instruction. I need to do this for every instruction and Assembly trick we use – lets start with IF..ElseIf..Else..End! Ifeg, ifneq, ifgt, ifls, ifgte and…

Read the full article