kamhagh
Posts: 104
Joined: Sun Feb 09, 2014 3:30 pm

Can i learn ARM (assembly) without a board?

Wed Aug 27, 2014 4:12 pm

to learn ARM ASM, do i need a arm device to learn it? or i can do it without one!?

if i need one i would get raspberry, i guess ! but it would be good to learn ARM,(i kinda love arm, dont know why ! i thought its good to know,)

oh and i see that raspberry is slow long boots and ect. (no complain:P its cheap) i dont really need the GUI, can i just use linux without GUI? or even just make it run plain ASM code? like the products that use ARM MPU? like AR.Drone!

User avatar
DougieLawson
Posts: 38883
Joined: Sun Jun 16, 2013 11:19 pm
Location: A small cave in deepest darkest Basingstoke, UK
Contact: Website Twitter

Re: Can i learn ARM (assembly) without a board?

Wed Aug 27, 2014 4:16 pm

1. The Raspberry Pi is $35 you can't get a cheaper more versatile ARM6 processor for that money.
2. Linux is an OS, Xwindows/LXDE is a optional GUI that runs under Linux. You can run the former without the latter.
3. Nothing slow about my Raspberry Pis, they perform well for a 700MHz processor with 512MB of RAM, in terms of MIPS per square centimetre you'd struggle to get better.

http://www.raspberrypi.org/forums/viewforum.php?f=72
Note: Any requirement to use a crystal ball or mind reading will result in me ignoring your question.

Criticising any questions is banned on this forum.

Any DMs sent on Twitter will be answered next month.
All non-medical doctors are on my foes list.

User avatar
Laurens-wuyts
Posts: 716
Joined: Wed Aug 21, 2013 7:35 pm
Location: Belgium
Contact: Website

Re: Can i learn ARM (assembly) without a board?

Wed Aug 27, 2014 4:17 pm

I think your looking for this. ;)
http://www.cl.cam.ac.uk/projects/raspbe ... orials/os/
P.S. when you make your own OS it's really fast. :D

Laurens

User avatar
AndrewS
Posts: 3625
Joined: Sun Apr 22, 2012 4:50 pm
Location: Cambridge, UK
Contact: Website

Re: Can i learn ARM (assembly) without a board?

Wed Aug 27, 2014 4:22 pm

It's probably theoretically possible to learn ARM assembly without a board, but I'd expect it to be very difficult without a board that you can practise writing programs for. And without a board to write programs for, what would even be the point of learning ARM assembly?! :?

Yes, Linux can be run without a GUI - by default Raspbian boots to a command line (but that's easily changed) and ArchLinux doesn't even include a GUI in the base install.

Have a look at http://www.cl.cam.ac.uk/projects/raspbe ... orials/os/ and http://www.raspberrypi.org/forums/viewforum.php?f=72

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6228
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: Can i learn ARM (assembly) without a board?

Wed Aug 27, 2014 4:28 pm

Short answer is yes, but it's not really the best approach.

Are you interested in developing linux or bare metal programs? It's failry easy to fire up qemu and write linux programs in qemu using assembler. To some extent, you can do bare metal development as well, but if you're just interested in learning the ARM instruction set, you don't get anything out of ditching Linux. If you want to learn how to interact with hardware and all that fun stuff, you're better off getting a board and keeping in mind that the different ARM platforms are very different in that regard.

For a cheap board you can learn all the low level magic on, I recommend looking at an STM32F series boards. STM32F4 is excellent for this sort of thing. You will learn a lot, but that knowledge is not directly transefrable to other ARM boards.

kamhagh
Posts: 104
Joined: Sun Feb 09, 2014 3:30 pm

Re: Can i learn ARM (assembly) without a board?

Wed Aug 27, 2014 5:26 pm

thanks, i guess im getting a pi! but my main purpose isn't for graphics, i would perfer to use c for graphics,

and example of a device that needs a ARM is too make a , lets say a smart thermostat like the one that google just bought the compnay, i can't remember the name or,,, the ar.drone something that a AVR mcu can't do :) or needs power !

and a little question is a device (mpu) able to run code without an os?

kamhagh
Posts: 104
Joined: Sun Feb 09, 2014 3:30 pm

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 1:10 pm

you mean if i want to programm arm, i only learn 1 MPU and requires me too learn whole thing again for other MPUs? like in avr other MCUs are diffrent but doesn't need anything new to be learned, its just diffrent registers pins and ect ! a quick look at data sheet is all you need !

and the thermostat i was talking about was nest !

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6228
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 1:17 pm

kamhagh wrote:you mean if i want to programm arm, i only learn 1 MPU and requires me too learn whole thing again for other MPUs? like in avr other MCUs are diffrent but doesn't need anything new to be learned, its just diffrent registers pins and ect ! a quick look at data sheet is all you need !

and the thermostat i was talking about was nest !
As far as the ARM side of things goes, there's not much learning to do to transition from different ARM versions, but if you want to actually 'do stuff', there's a lot of platform specific things to worry about. For example, the way you talk to GPIO, get graphics on the screen, play sound and do all that fun stuff is going to be different. Take a look at the peripherals manual under the documentation.

This mostly applies to bare metal programs (without an OS running underneath). Linux does most of the work to provide a common interface to do all of these things.

kamhagh
Posts: 104
Joined: Sun Feb 09, 2014 3:30 pm

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 1:32 pm

now a little question, with linux i can write c or any language i want?

also, does products like nest thermostat or... use linux?!

and so if i want to make something that avr is not capable of handling it and need ARM, i can just make it on pie, and after its done make a board with ram it needs and than using the exact same ARM mpu make the board and program the apu and it works ? or not ! im really confused! lets say i want to make an garage door that opens/closes through net ! and i need avr, after i made it on pi i can just make a board and make it an official product? i know i can't make it at home but just wondering,

because if you're a company and want to make a product that uses arm you can't include a raspberry board inside it!

sorry im just really confused!

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6228
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 1:37 pm

kamhagh wrote:now a little question, with linux i can write c or any language i want?
All of the commonly used languages are supported, yes.
kamhagh wrote:also, does products like nest thermostat or... use linux?!
Sorry. I don't understand the question.
kamhagh wrote:and so if i want to make something that avr is not capable of handling it and need ARM, i can just make it on pie, and after its done make a board with ram it needs and than using the exact same ARM mpu make the board and program the apu and it works ? or not ! im really confused! lets say i want to make an garage door that opens/closes through net ! and i need avr, after i made it on pi i can just make a board and make it an official product? i know i can't make it at home but just wondering,
You generally need to decide what platform you're going to use and get a dev kit for that specific platform. Since you're just getting started, you're jumping a little too far ahead. Get familiar with Linux and ARM first and the questions will answer themselves.
kamhagh wrote:because if you're a company and want to make a product that uses arm you can't include a raspberry board inside it!
Why not?
https://www.kickstarter.com/projects/fi ... r-and-more

kamhagh
Posts: 104
Joined: Sun Feb 09, 2014 3:30 pm

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 2:02 pm

raspberry is huge in size compared to making a board your self, i ment like making a custom pc, after you ran your project on pi, can you move your project on a board with the ram and the same Cortex CPU,

see nest thermostat it uses too cortex, i want to make a product like that (for example) its better to make your own board for cost and other stuff!

i see that ar.drone uses linux what about Nest self learning thermostat, it has linux installed !

lets say i work for a company and we're making a device or something, we want to use arm! i can install linux the the board we've designed and program it on c or any language (like ar.drone) , sorry if my questions are annoying !

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6228
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 2:13 pm

The answer to all of that is 'depends'.

kamhagh
Posts: 104
Joined: Sun Feb 09, 2014 3:30 pm

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 2:31 pm

well, depends on what :o

i heard on some review that i takes 2mins to boot and also 20sec to load the browser ! but anyway, im not gonna use it as a everyday computer :)

my main concern is i dont want to only make stuff for hobby, i want this to help me future for my job !! if i want to work somewhere and we work a project , a device that uses ARM cortex ! lets say A8 ! i can use c or c++ as i understood,

but now, i can't make a board myself, so i thought for now i can use pi !

the slice you showed me, lets say that but i wan't to make it with my own custom board ! i was looking to only try and make it on pi and when its final move it to a another board !

kamhagh
Posts: 104
Joined: Sun Feb 09, 2014 3:30 pm

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 3:38 pm

sorry for my stupid questions i hope i dont bother you, but i still don't understand,
if i can't do that there's no reason for me to buy a raspberry pi !

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6228
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 4:43 pm

The questions aren't stupid or frustrating, you're just jumping too far ahead. Get to grips with electronics, arm and linux, then decide on which platform is right for you. But note that the compute module was designed specifically to be embedded in other projects (like the slice).

First, come up with rough specs. Make a list of suitable platforms, pick the best one, get the dev board, develop a prototype on the dev board and then make your own board based on the prototype.

User avatar
Burngate
Posts: 6290
Joined: Thu Sep 29, 2011 4:34 pm
Location: Berkshire UK Tralfamadore
Contact: Website

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 4:45 pm

You're not stupid, and I'm not bothered (can't speak for the rest of 'em) ;)

So you have an Idea.
Start with a Pi, using Linux as the OS, and Python (or C if you're comfortable)
When you discover some things don't go quickly enough, move some things to assembly.
To really speed things up, if you need to, go to bare-metal (though writing your own OS, which that effectively is, can be a lot of work)

When you're happy with that, try it on the compute module

Only if necessary, use a bare SoC on your own board.
By the time you've got that far, you'll know what you need, what you don't need, and whether a different SoC would be better.

Crawl first, then walk then run. By the time you've reached that stage, you can work out the size of engine you'll need in your F1 car to win the Epsom Derby

kamhagh
Posts: 104
Joined: Sun Feb 09, 2014 3:30 pm

Re: Can i learn ARM (assembly) without a board?

Thu Aug 28, 2014 5:11 pm

Thanks a lot;)
I will order the B+ Saturday!
Tomorrow is holiday:)

Let another journey begin;)

Btw i rather write in c or c++(i feel more comfortable, its my first and main language! ) , also assembly would be a good practice :P

Return to “Beginners”