Tags:
view all tags
---+ Exercises 4: The Raspberry Pi ---++ Goal: The Raspberry Pi in contrast to the PC uses and ARM processor and peripherals are not included in the system but are connected externally through dedicated connectors. In addition to the Display, keyboard and mouse external devices can be connected through GPIO (General Purpose I/O) pins and through buses (!I2C, SPI etc). The Raspberry Pi we use has no hard disk but a 32 GByte micro SD card replacing it. Just like the PC it runs a Linux operating system. This system however is an ARM variant as compared to the PC system which uses Intel processors. These exercises are supposed to show you similarities and differences between the two systems. ---++ Exercise 1: Linux on the Raspberry Pi First try to access your Raspberry Pi through the secure shell: _ssh cscgrp1@rpi-xx_ where xx is the number of your PC. The password is the same as the one on the PC.<br />Try to start emacs on the Pi. Does it work? Does it look the same as on the PC? Then exit the secure shell with the _exit_ command and re-try ssh with the -XC options. Re-do what you did before. Did emacs change? Poke through the Linux file system on the Raspberry Pi and try to find differences to the PC. Run the commands you tried on the PC during the very first lab session. Finally exit ssh again and start the remote desktop client Remmina. There is this button on the task-bar. <img alt="reminna.png" height="51" src="%ATTACHURL%/reminna.png" title="reminna.png" width="52" /> A connection should be predefined for you. Of course your connection will be named corresponding to the Pi you are connection to. <img alt="remmina.png" height="319" src="%ATTACHURL%/remmina.png" title="remmina.png" width="448" /> Double click on the connection and with a little bit of luck you should be connected to the desktop of your Pi. ---++ Exercise 2: Compile for ARM Create a file system structure for the exercises similar to the one on the PC with ~/exercises, problems, solutions, doc etc. in them, also on the Raspberry Pi. Copy the C programs from the codeExamples written for the PC over to the Pi using the _scp_ command. In which directory do you place them? Use the Raspberry Pi gcc compiler to compile these C files and try to run them on the Pi. I expect that you have written Makefile for each of the C programs you have written so far. If you did not, then this is your last chance to do so! Do your programs run the same way as on the PC? Cross compile the programs you wrote in the exercise on C programming on the PC to run them on the Raspberry Pi, which uses the ARM processor. The cross compiler is named _arm-linux-gnueabihf-gcc._ With the<i> file</i> command find out for which machine the program has been compiled. Does the cross compiled program run on the PC and why? Does it run on the Pi? Can you write a Makefile which uses the cross compiler instead of the native compiler? Copy the cross compiled programs to the Raspberry Pi using scp and try to run them there. At the end of the exercises session all programs you had on the PC should be available and running on the Pi. -- %USERSIG{UliRaich - 2017-08-13}% ---++ Comments %COMMENT%
Attachments
Attachments
Topic attachments
I
Attachment
History
Action
Size
Date
Who
Comment
png
reminna.png
r1
manage
3.9 K
2017-10-12 - 08:11
UnknownUser
png
remmina.png
r1
manage
27.4 K
2017-10-12 - 08:11
UnknownUser
Edit
|
Attach
|
Watch
|
P
rint version
|
H
istory
:
r5
<
r4
<
r3
<
r2
<
r1
|
B
acklinks
|
V
iew topic
|
Raw edit
|
More topic actions...
Topic revision: r4 - 2017-10-12
-
uli
Home
Site map
AFNOG web
Embedded_Systems web
IoT_Course_English web
IoT_Course_French web
Main web
Sandbox web
TWiki web
Embedded_Systems Web
Create New Topic
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
P
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
Register User
Edit
Attach
Copyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback