Difference between revisions of "H3 IoT og Embedded"
From Teknologisk videncenter
m |
m |
||
Line 14: | Line 14: | ||
** SMCLK er på 1.000.000 Hz og ACLK er på 32.768 Hz - kan fem sekundes interval lade sig gøre med en 16 bits timer. | ** SMCLK er på 1.000.000 Hz og ACLK er på 32.768 Hz - kan fem sekundes interval lade sig gøre med en 16 bits timer. | ||
** Det er muligt at dividere med 8 to gange | ** Det er muligt at dividere med 8 to gange | ||
+ | =Torsdag opgave= | ||
+ | Initialiser og få RTC_A til at køre og vis tiden på linje 10 hvert sekund. | ||
+ | <source lang=c> | ||
+ | #include <msp430.h> | ||
+ | |||
+ | #define HOLDRTC 0x40 // 0=Running ; 1=Stopped | ||
+ | #define MODERTC 0x20 // 0=counter ; 1=calender mode | ||
+ | void RTC_A_init(void) { | ||
+ | if ( (RTCCTL1 & HOLDRTC) == 0) { | ||
+ | return; | ||
+ | } | ||
+ | RCTCTL1 &= ~HOLDRTC; | ||
+ | RCTCTL1 |= MODERTC; | ||
+ | } | ||
+ | </source> | ||
==Scheduler/Event handler metode== | ==Scheduler/Event handler metode== | ||
*[http://mars.tekkom.dk/data/MSP430/H3_IoT/ht_cirbuf.zip ht_cirbuf2.zip] | *[http://mars.tekkom.dk/data/MSP430/H3_IoT/ht_cirbuf.zip ht_cirbuf2.zip] |
Revision as of 09:33, 2 June 2022
Contents
Opgave onsdag
At vise temperaturen fra I2C Temperatur sensor hvert femte sekund på skærmen.
Fælles
Udgangspunkt er projektet ht_cirbuf2.zip. alle downloader og unzipper i projektfolder samt starter projektet i IAR Workbench.
- Afprøv projektet at det fungerer
Vi vil i fællesskab implementere (stjæle) I2C i projektet fra i2c.zip
Individual opgave
På linje 6 på skærmen skal der hvert femte sekund vises temperatur fra sensoren. Hvordan det skal implementeres er op til jer.
Hint:
- Der er en timer mere som hedder ta1 som er magen til ta0.
- Beskrevet på side 460 i MSP430xF manualen
- SMCLK er på 1.000.000 Hz og ACLK er på 32.768 Hz - kan fem sekundes interval lade sig gøre med en 16 bits timer.
- Det er muligt at dividere med 8 to gange
Torsdag opgave
Initialiser og få RTC_A til at køre og vis tiden på linje 10 hvert sekund.
#include <msp430.h>
#define HOLDRTC 0x40 // 0=Running ; 1=Stopped
#define MODERTC 0x20 // 0=counter ; 1=calender mode
void RTC_A_init(void) {
if ( (RTCCTL1 & HOLDRTC) == 0) {
return;
}
RCTCTL1 &= ~HOLDRTC;
RCTCTL1 |= MODERTC;
}
Scheduler/Event handler metode
I2C og RS485 eksempel
NOTE: Linie 99 og 100 i main skal kommenteres for at anvende I2C