Glyn R32C/111 Starterkit, Blink-Programm fehlt

Gast #1224311
Hi alle,

ich habe bei Elektor ein Glyn R32C/111 Starterkit gekauft, wie in der 
April-Ausgabe beschrieben (EVBR32C111-Carrier-USB). Leider fehlt auf der 
mitgelieferten CD das Elektor-Programm, um die LED auf dem Demo-Board 
blinken zu lassen:

LED_Blink.x30

Weiß vielleicht einer von euch wo man das finden kann?

Ansonsten schöne Ostern, wenn's soweit ist ;-)
Gast
Schau mal auf den Fenster-Titel im Bild auf Seite 21 unten.
Auf der CD ist das unter

\Samples\R32C_Interrupt_Toggle\R32C_Interrupt_Toggle\Debug\R32C_Interrup 
t_Toggle.x30

Das blinkt hier gerade munter vor sich hin ...

(Das andere Beispiel unter R32C_Elektor_OLED_1 funktionierte nicht.)


Jürgen
Gast
Hallo Ihr,
habe mir ein R32C/111 Startekit Carrier USB Board gekauft.
Hatte anfangs relativ gute Erfolge mit mit den ersten Programmversuchen 
gehabt.
Habe jedoch im  Moment ein Problem mit dem Timer 0 Interrupt.
Ich komme im Moment nicht weiter da dar KD100 seinen Dienst versagt wenn 
ich das Programm starte. Ich bin im Moment etwas ratlos.Wo habe ich noch 
etwas vergessen oder falsch gemacht???
Der Interrupt wird nicht aufgerufen.
Eventuell kann mir jemand weiterhelfen. Vielen Dank im voraus.
In sect100.inc  habe ich an den entsprechenden Stellen die 
Interruptdefinitionen eingetragen.
  .glb _Timer0_Int
  .lword  _Timer0_Int  ; TIMER A0          (software int 12)
Die Auszüge aus meinem Programm habe ich unten angehängt.
Haufpmodul
#include "Test.h"
void main(void)
{

Init_timerA0();
while(1){  // Hauptprogramm schleife
  Start_T0(1000);
  while(T1_end_flag);
  p3_0= ~p3_0;
}
}
// Interruptroutinen
#include "Test.h"
// Interrupt declaration
#pragma INTERRUPT Timer0_Int

void Init_timerA0(void)
{
  asm(" FCLR I");  // Disable all interrupts
  ta0mr=0x40;  // TA0 Timer mode // count div f8
  ta0=0x0619;  // Teilerfaktor
  ta0ic=0x04;   // set interrupt level to 4
  ta0s=1;     // Start timer A0
  asm("FSET I"); // enable all interrupts
}


// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++ Interrupt +++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

// Starten einer Ablaufzeit in Abhängigkeit des Timer Interrupts
// von Timer A1
void Start_T0(int Wert){
T1MAX=Wert;
T1=0;
T1_end_flag = 1;
}
// Starten einer Ablaufzeit in Abhängigkeit des Timer Interrupts
// von Timer A1 Ablaufzeit 1mS

void Start_T2(int Wert){
T2MAX=Wert;
T2=0;
T2_end_flag = 1;
}




void Timer0_Int(void)
{
p3_0= ~p3_0;
  if (T1_end_flag){
    T1++;
    if(T1 >= T1MAX){
      T1_end_flag=0;
//      p3_0= ~p3_0;
    }

  }

  if (T2_end_flag){
    T2++;
    if(T2 >= T2MAX){
      T2_end_flag=0;
      p3_0= ~p3_0;
    }

  }
  return;
}

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.