Skip to content

Commit 2170074

Browse files
committed
Revise L07
1 parent 5c45a72 commit 2170074

File tree

6 files changed

+48
-53
lines changed

6 files changed

+48
-53
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
.vscode/
2+
a.out

07_PythonGrundlagen.md

+19-50
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
33
author: Sebastian Zug & André Dietrich & Galina Rudolf & Florian Richter
44
5-
version: 1.0.7
5+
version: 1.0.8
66
language: de
77
narrator: Deutsch Female
88
@@ -57,24 +57,24 @@ import: https://github.com/liascript/CodeRunner
5757
style="width: 100%; min-width: 620px; max-width: 920px;"
5858
-->
5959
```ascii
60-
Datenlogger
60+
Datenlogger / Mikrocontroller
6161
+------------------------------------------------+
6262
| Arbeitsspeicher |
6363
+ | +-----------+ +--------------+ |
64-
Umgebung- |\ | Sensor- | Controll- | | ... |\ |
65-
phänomene | +--|-------->| Software |--+-->| 12:30 Temp 12+-+ |
64+
Umgebung- |\ | Sensor- | Messsoft- | | ... |\ |
65+
phänomene | +--|-------->| ware |--+-->| 12:30 Temp 12+-+ |
6666
|/ | signale | | | 12:40 Temp 13 | |
6767
+ | +-----------+ +----------------+ |
68-
| | |
68+
| | |
6969
| +---------------------+ |
70-
| | .----. | +-> Serielle Schnittstelle
71-
| v | | täglich, | | max min
72-
| +-----------+ | wöchtentlich, | | 1.3. 10.5 -3.5
73-
| | Min/Max |<--. monatlich | | 2.3. 11.0 -3.8
74-
| | Algo- | | | ...
75-
| | rithmus |--------------------------|--+ KW 9 9.2 1.3
76-
| +-----------+ | ...
77-
+------------------------------------------------+ März 12.3 2.7
70+
| | +---|----- "min/ max Werte pro Tag"
71+
| v | |
72+
| +-----------+ h/d/m/y | |
73+
| | Min/Max |<---------------------+ | +-> Serielle Schnittstelle
74+
| | Algo- | | | max min
75+
| | rithmus |--------------------------|--+ 1.3. 10.5 -3.5
76+
| +-----------+ | 2.3. 11.0 -3.8
77+
+------------------------------------------------+ ...
7878
```
7979

8080
> __Frage__: Welche Nachteile sehen Sie in dem Vorgehen?
@@ -249,20 +249,20 @@ Anaconda nutzt als Standard-Editor **Spyder** (**S**cientific **PY**thon **D**ev
249249

250250
> Demo: Notebooks
251251
252+
## Sprachelemente
252253

253254

254-
## Sprachelemente
255255

256256
### Zuweisungen und Datentypen
257257
> Python nutzt eine dynamische Typisierung, d.h. eine Variable wird erst zur Laufzeit mit Typ des zugewiesenen Werts assoziiert. Sie kann auch mit einem beliebigen neuen Datentypen überschrieben werden.
258258
259259
```python Zuweisungen_1.py
260260
a = 1
261261
a += 3
262-
type(a)
262+
print(type(a))
263263

264264
a = "hello"
265-
type(a)
265+
print(type(a))
266266
```
267267
@LIA.eval(`["main.py"]`, `none`, `python3 main.py`)
268268

@@ -573,7 +573,7 @@ while <bedingung>:
573573
Beispiel: Fibonacci-Zahlen < 100
574574
================================
575575

576-
```python
576+
```python fibunacci.py
577577
a, b = 0, 1
578578
while a < 100:
579579
print(a, end='|')
@@ -762,7 +762,7 @@ while True:
762762

763763
Bislang haben wir uns mit dem "einfachen" `print` Mechanismus für einzelne Ausgabe zufrieden gegeben. Um aber gut lesbaren Code zu schreiben genügt dies nicht.
764764

765-
Wir erinnern uns an die von uns verwendenten C++ und Arduino-bezogenen Ausgabeformate ...
765+
Wir erinnern uns an die von uns verwendenten C++ bezogenen Ausgabeformate ...
766766

767767
```cpp c++output.cpp
768768
#include <iostream>
@@ -778,38 +778,7 @@ int main(){
778778
```
779779
@LIA.eval(`["main.cpp"]`, `g++ -Wall main.cpp -o a.out`, `./a.out`)
780780

781-
782-
```cpp ArduinoSerial.cpp
783-
void setup() {
784-
Serial.begin(9600);
785-
786-
// Variante 1: print / println Methoden von Serial
787-
Serial.println("Das ist ein Test");
788-
789-
float gleitkommaZahl = 3.123456;
790-
Serial.print(gleitkommaZahl, 4); //liefert 3.1234
791-
Serial.print(" ");
792-
Serial.println(gleitkommaZahl, 6); //liefert 3.123456
793-
794-
Serial.print(15, BIN); //liefert den Wert 1111
795-
Serial.print(" ");
796-
Serial.print(15, HEX); //liefert den Wert f
797-
Serial.print(" ");
798-
Serial.println(15, OCT); //liefert den Wert 17
799-
800-
// Variante 2: sprintf Formatierte Ausgabe
801-
int zahl = 65;
802-
char buffer[100];
803-
sprintf(buffer, "Dezimal %05i Dezimal %5i Hexadezimal %x Character %c", zahl, zahl , zahl, zahl);
804-
Serial.println(buffer);
805-
}
806-
807-
void loop() {
808-
}
809-
```
810-
@AVR8js.sketch
811-
812-
> Die für den Arduino gezeigte Variante mit `sprintf` oder ``printf` funktioniert natürlich auch unter C++ generell. Aus didaktischen Gründen wurde aber die `cout` Variante vorrangig genutzt.
781+
> Die für C Varianten mit `sprintf` oder ``printf` funktioniert auch unter C++. Aus didaktischen Gründen wurde aber die `cout` Variante vorrangig genutzt.
813782
814783
****************************************************************************************
815784

examples/07_PythonGrundlagen/main.ipynb examples/07_PythonGrundlagen/PythonVsCpp/main.ipynb

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
],
2828
"metadata": {
2929
"kernelspec": {
30-
"display_name": "Python 3",
30+
"display_name": "usr",
3131
"language": "python",
3232
"name": "python3"
3333
},
@@ -41,7 +41,7 @@
4141
"name": "python",
4242
"nbconvert_exporter": "python",
4343
"pygments_lexer": "ipython3",
44-
"version": "3.10.12"
44+
"version": "3.12.3"
4545
}
4646
},
4747
"nbformat": 4,

examples/07_PythonGrundlagen/main.py examples/07_PythonGrundlagen/PythonVsCpp/main.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Hello world python program
2-
# run: python main.py
2+
# run: python3 main.py
33

44
print("Hello World!")
55
name = input("Bitte geben Sie Ihren Namen ein: ")
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
2+
#include <Arduino_HS300x.h>
3+
4+
void setup() {
5+
Serial.begin(9600);
6+
while (!Serial);
7+
8+
if (!HS300x.begin()) {
9+
Serial.println("Failed to initialize humidity temperature sensor!");
10+
while (1);
11+
}
12+
}
13+
14+
void loop() {
15+
// read all the sensor values
16+
float temperature = HS300x.readTemperature();
17+
float humidity = HS300x.readHumidity();
18+
19+
// print each of the sensor values
20+
Serial.print(temperature);
21+
Serial.print(",");
22+
Serial.print(humidity);
23+
Serial.println();
24+
delay(100);
25+
}

0 commit comments

Comments
 (0)