Raspberry Pi is a small single board computer (in the size of a credit card) that gives high processing power, and it’s possible to install Windows or Linux OS on newer versions.
What to do with raspberry Pi?
We don’t want to explain every details such as setting a pin to output or controlling a LED, which are simple software issues, because there are many tutorials and projects available on the internet teaching how to install OS or how to work with Linux or etc.
As a matter of fact, I want you to get familiar with a new word in which electronic engineers don’t use software patterns in their projects. I believe that Raspberry Pi is a strong processor, able to run complex software like OS, but originally this is a daily-used ARM processor.
In these articles I want to teach how to use Raspberry Pi without OS or any software interface, and convert it to a high speed ARM processor just using Assembly and C language.
Why Raspberry Pi is savage?
Many say and emphasize that Raspberry Pi is an educational project and It doesn’t have the capability to use it in semi-industrial and industrial projects with acceptable reasons. The most important of these reasons are the following:
- High power consumption and high heat production.
- Unstable available operating systems(OS).
- Unable to lock written programs.
- Linux isn’t a real time OS.
The above cases are correct by using operating systems like Linux and Windows.
The first reason is acceptable till cpu works with its maximum processing power so the results are high power consumption and high heat production, and unstable OS like Linux isn’t true but it might be reset in result of unpredictable situations because the problem is porting it on the board.
During resetting we can’t be sure about pins’ situation and its function. Until you write your program using Linux or any other OS, it couldn’t be protected and might be copied.
But if we delete Linux OS or any other similarities, we have a hardware that designed so good with powerful processor, high RAM and other resources.
How many Raspberry Pi models we have?
When you want to install Linux it makes no difference which type of Raspberry Pi you are using because the differences are covered by Linux and all you have to is to copy files to SD card.
When we want to write a program for a hardware core (not an OS) lots of things are important such as type of processor, operating frequency, amount of memory, memory address, different hardwares’ connection to the processor and etc.; and it’s possible if you have knowledge of hardware details.
So first of all we introduce types of available Raspberry Pi boards.
Referred to the CPU of Raspberry Pi boards, there is three different classes:
A, B1 and B1+ use ARM1176JZ-F processor. All mentioned boards use BCM2835 chipset made by Broadcom company with process-rate of 700 MHz.
Only board uses this processor is B2 which uses 4 cores Cortex-A7. These 4 cores are in BCM2836 chipset made by Broadcom company with process-rate of 900MHz.
The last Raspberry Pi product, at the time of writing this article, is B3 with 4 processing cores named Cortex-A53, 64-bit, with process-rate of 1200MHz.
In the next article we are going to discuss boot routine and also run the first educational program on Raspberry Pi board.