- #1
- 2,810
- 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
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!
ARM programming is a type of programming that involves writing code specifically for ARM (Advanced RISC Machine) processors. These processors are commonly used in mobile devices, such as smartphones and tablets. ARM programming is different from other types of programming because it utilizes a different instruction set architecture and requires a thorough understanding of the ARM processor's architecture and features.
Yes, you can use C or C++ to program for ARM in Ubuntu. In fact, C and C++ are the most commonly used languages for ARM programming. Ubuntu also has a wide range of tools and libraries available for ARM development, making it a popular choice for ARM programmers.
Yes, there are several compilers and IDEs available for ARM programming in Ubuntu. Some popular options include GNU Compiler Collection (GCC), ARM Development Studio (DS-5), and Eclipse with the GNU ARM Eclipse plugin. It is recommended to research and choose the best option based on your specific needs and preferences.
One potential challenge when programming for ARM in Ubuntu is the need for cross-compilation. This means that the code must be compiled on a different platform than the one it will run on. Additionally, some libraries and tools may not be fully compatible with ARM in Ubuntu, so it is important to ensure compatibility before starting a project.
Yes, there are many resources and tutorials available for learning ARM programming in Ubuntu with C/C++. Some recommended resources include online tutorials, books, forums, and community groups dedicated to ARM development. It is also helpful to practice and experiment with sample code and projects to gain hands-on experience.