PDA

View Full Version : How/where to learn Assembly?



HankMcSpank
- 7th August 2011, 17:07
Just wondering of those who have gone through the pain of coding in assembly....how you learnt? (course, online, books, a buddy etc)

What's the best avenue, cos I'm finding this all hard going.

All I want to be able to get a PIC running in a very tight/fast loop towards generating sine waves, just like this guy has done...

http://www.min.at/prinz/oe1rib/DDS/SineDDS.htm#Software

He has even posted the related assembly code (which I can't really make much of!)...

http://www.min.at/prinz/oe1rib/DDS/SineDDS.asm ( I think I'd prefer to use PWM and a filter just for space constraints)

...when I see that assembly code, I realise just how long this is gonna take me to get to grips with!

I'm figuring my needs are modest, the program will be embarrassingly small, but at this point in the proceeedings, it feels like I've tasked myself with coding the navigation system for the hubble space telescope!!

cncmachineguy
- 7th August 2011, 18:12
Hi Hank. I will chime in and say I have no idea where to learn it formally. I learned from reading the datasheet. I started out on stamps, first a BS1, then right away went to a BS2. at the time I think they were $99 for a BS2. Well I almost rightawat burned an output and couldn't bear the thought of another $100 for a $2 chip. So that lead me to PIC's. internet was plain ole telephone for me at the time, so getting the DS for a 16F676 was a chore. I printed the entire thing and off I went. I remember I made 1 phone call to uChip support (yes they answered my question over the phone)

ASM is not that hard, it is just a pain at times since there is not really any powerful instructions.

I for one am more then happy to help if you want it, maybe in the off topic section? Just like any PBP program, you need to know what you want to do and you can get there. I am certain there are others here that can and prolly will help, so start asking questions and you will get there.

ScaleRobotics
- 7th August 2011, 18:41
I have gone Bert's route as well. Also looked a lot at other people's assembly to get some ideas.

Here are some tutorials, that I thought were pretty good, and some more assembly info:
http://www.picbasic.co.uk/forum/showthread.php?t=222

Darrel often says the best way to learn is by looking at the *.lib files, like pbppic18.lib. The assembly is pretty well documented there. More info in his post here: http://www.picbasic.co.uk/forum/showthread.php?t=6363&p=38604#post38604 (http://www.picbasic.co.uk/forum/showthread.php?t=6363)

mister_e
- 7th August 2011, 23:58
http://www.gooligum.com.au/tutorials.html

http://www.winpicprog.co.uk/pic_tutorial.htm

Look the example in various Microchip appnote and tutorials included in PICKIT 2/3.

All Books from Square 1.

Join Microchip forum and try to help the other member. Amazing how fast you'll learn this way :P

I'm a self taught guy.

HankMcSpank
- 9th August 2011, 13:00
Thanks for your input guys...I'll plod on a bit longer using some of the suggestions.

Thanks for the offer (as ever) of help Bert....this one may well end up as a thread in the off topic section!

redmobiusv
- 9th August 2011, 17:07
I wouldn't say I know enough about assembly to offer suggestions however,

I bought "PIC'n up the pace" from Square1 before I knew there was even more then one programming language for PIC's. The books seems like a excellent book for learning assy. I hardly know anything about programming micro's and I could almost understand some of the syntax that are taught.

http://www.sq-1.com/

I imagine the prerequisite for this book "Easy PIC'n" would have been a better choice for me, but I found this one at a half priced book store so I couldn't really pass it up.
I look forward to the day I can move onto learning assembly though.

Good luck!!

mister_e
- 9th August 2011, 17:40
Thanks for your input guys...I'll plod on a bit longer using some of the suggestions.
Word of the day... plod:
v.intr.

To move or walk heavily or laboriously; trudge: "donkeys that plodded wearily in a circle round a gin" (D.H. Lawrence).
To work or act perseveringly or monotonously; drudge: plodding through a mountain of paperwork.


I learnt my one thing for today, I can die now :D