- 2,802
- 605
I'm thinking about learning ARM programming with C\C++(I think C is a better choice though). But I don't know what tools I can use on linux(ubuntu). I prefer to use open source software. Is there any suggestion?
Thanks
Thanks
The discussion revolves around learning ARM programming using C/C++ on Ubuntu, focusing on tools, platforms, and approaches for both embedded and general programming. Participants explore options for software development environments, hardware platforms, and the nature of embedded systems.
Participants express differing views on the nature of embedded systems and the relevance of operating systems in their programming. While some agree on the similarities between ARM and Intel programming in a Linux context, others highlight the unique aspects of embedded programming that complicate this comparison. The discussion remains unresolved regarding the definitions and characteristics of embedded systems.
There are assumptions made about the OP's goals and the nature of embedded systems that may not be universally accepted. The discussion includes varying definitions of embedded systems and the resources available for programming them.
Is there any simulator so that I can test my codes without having any hardware at least at the beginning?nsaspook said:You can start from the Raspberry Pi or other similar product. I use NetBeans to code on a x86 Linux/Windows PC and then remote compile on the Raspberry Pi target.
https://netbeans.org/kb/docs/cnd/remotedev-tutorial.html
http://www.raspberry-projects.com/p...ns-for-c-remote-development-on-a-raspberry-pi
Shayan.J said:Is there any simulator so that I can test my codes without having any hardware at least at the beginning?
One of my friends works in a lab and designs and makes circuits for using on sensors. I got the idea from him. I have such little devices in mindrbelli1 said:What kind of applications are you thinking of? Arm processors range from tiny 8 pin devices with a few K of code space all the way up to mainframe level servers.
As far as I know, those IDEs that let you write code for an embedded system use cross compilers to compile the code for a target platform. So you're not developing software for the machine you're using to develop the software.rbelli1 said:You are doing LINUX programming. The CPU is only relevant as far as the compiler switches are concerned.
rbelli1 said:My point was that writing a program for a LINUX computer that happens to be an INTEL CPU or writing for one that happens to be an ARM CPU is not really different. The RPi will have some different drivers for the embedded parts but everything else will be the same. You could actually write software for a LINUX PC on the RPi just as easily as the other way around.
We are all making assumptions about what the OP wants. We can't really be any more helpful until Shayan.J clarifies.
BoB
Shayan.J said:I'm Shayan.J, I'm the OP!
Anyway, what you say is correct, but only if we're using a linux systim running on an intel CPU to develop software for a linux system running on an ARM microprocessor(can I call this a CPU too?). But embedded systems are systems with limited resources that have no operating system installed on them. That's the thing that breaks the symmetry!