diff options
author | Julian T <julian@jtle.dk> | 2020-02-05 21:06:10 +0100 |
---|---|---|
committer | Julian T <julian@jtle.dk> | 2020-02-05 21:06:10 +0100 |
commit | a362090c5a5c13f422385d69ce7f64fa13c09b9f (patch) | |
tree | 48554d5af6fdec2ed115b67c46a822dcbdde51c1 /sem4 | |
parent | 41773c52a88ca186df6031248a63dda3c9c29e05 (diff) |
Added some exercise solutions
Diffstat (limited to 'sem4')
-rw-r--r-- | sem4/embedded/m1/int/int.ino | 47 | ||||
-rw-r--r-- | sem4/hpp/m1/opgaver.md | 78 |
2 files changed, 125 insertions, 0 deletions
diff --git a/sem4/embedded/m1/int/int.ino b/sem4/embedded/m1/int/int.ino new file mode 100644 index 0000000..8978be7 --- /dev/null +++ b/sem4/embedded/m1/int/int.ino @@ -0,0 +1,47 @@ +#define LEDPIN 13 +#define BUTTONPIN 2 + +#define DEBOUNCE 1 + +ISR(INT0_vect) { + static bool state = 0; + + // Toggle LEDPIN + digitalWrite(LEDPIN, state); + state = !state; + + /* + for(long i = 0; i < 1000; i++) { + Serial.print("Hej "); + Serial.println(i); + + } + */ +} + +void setup() { + + // We need to talk + Serial.begin(9600); + + // Setup pinmodes + pinMode(LEDPIN, OUTPUT); + pinMode(BUTTONPIN, INPUT_PULLUP); + + // Attach a interrupt on the button + //attachInterrupt(digitalPinToInterrupt(BUTTONPIN), testy, RISING); + + // Enable interrupt 0 + EIMSK |= 1 << INT0; + // Eable on rising edge + EICRA |= (1 << ISC01) | (1 << ISC00); + +} + +void loop() { + static int i = 0; + + //Serial.print("Cool stuff happening now "); + //Serial.println(i++); + +} diff --git a/sem4/hpp/m1/opgaver.md b/sem4/hpp/m1/opgaver.md new file mode 100644 index 0000000..959eb97 --- /dev/null +++ b/sem4/hpp/m1/opgaver.md @@ -0,0 +1,78 @@ +# Opgave 1.3.1 + +## Del. 2 + +Ud fra matrix vektor muliplication kan man sige at der ganges N^2 gange. + +Også vil man i hver række plus N-1 gang. +Så der plus'ses `(N-1)*N` gange. + +Derfor er der + +`2N^2 - N` + +Floating point operationer. + +## Del. 2 + +Her vil man bruge output buffer som intermediate variabler. + +Derfor vil der være + +``` +A x y +N^2*s + N*s + N*s = (N^2 + 2N) * s +``` + +# Opgave 1.3.3 + +``` +1. + +1 3 5 +2 4 6 + +2. + +1 2 +3 4 +5 6 + +3. + +1 4 +2 5 +3 6 + +4. + +1 2 3 +4 5 6 +``` + +# Opgave 1.3.4 + +## Del 1. + +m er row count B + +A * B = C + +``` +for column c in B index i: + for row r in A index j: + i = c' * r // ' means transponere + C[j,c] = sum(i) + end +end +``` + +# Del 2. + +A bliver addresset via kolonner, så det er bedst at bruge column major. + +B bliver via rows så det er bedst at bruge row major. + +# Del 3. +Yes because we multiply vektors together. + |