Difference between revisions of "H3 IoT og Embedded"

From Teknologisk videncenter
Jump to: navigation, search
m (Torsdag opgave)
m
Line 17: Line 17:
 
Initialiser og få RTC_A til at køre og vis tiden på linje 10 hvert sekund.
 
Initialiser og få RTC_A til at køre og vis tiden på linje 10 hvert sekund.
 
*Se side 565 i [https://mars.merhot.dk/data/MSP430/slau208.pdf Family manual]
 
*Se side 565 i [https://mars.merhot.dk/data/MSP430/slau208.pdf Family manual]
*Source kode eksempel på epoch2time [[Using_the_RTC_Real_Time_Clock]]
+
*Source kode eksempel på epoch2time [[STM32F107VC/Using the RTC Real Time Clock]]
 
<source lang=c>
 
<source lang=c>
 
#include <msp430.h>
 
#include <msp430.h>

Revision as of 11:31, 2 June 2022

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