Mit Studio 6 Assembler in c-code einbinden

little

Neues Mitglied
25. Okt. 2012
1
0
0
Sprachen
Hi

bin gerade am testen von Studio 6 und würde gerne wissen wie ich Assambler code(als datei) in eine c datei ein binden kann
irgendwie klappt das nicht so wie ich mir das Vorstelle das Programm hängt sich bei F7 auf und lässt sich dann nur noch mit strg alt entf schließen
ich habe den atmega164p und mache folgendes:

1.datei erster_test.c

Code:
#define F_CPU 16000000UL

#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include "Assembly1.h"


//global variable
volatile uint8_t rytmus;
volatile uint8_t zeit;

extern void Test(void);


int main(void)
{
	DDRA = 0x01<<DDA3;
	
	while (1) 
	{
		Test();						//assambler test aufrufen
		if (rytmus==10)
		{
			_delay_ms(500);			//zeit einsetzen 
			PORTA ^= (1 << PA3);		//auf PortA3 blinken
		}
		else
		{
			
		}			
		
		
	
	}    
}

2.datei
Code:
#include <avr/io.h>
#include "Assembly1.h"


.global Test

Test:
			push	r24
			lds		r24,rytmus		;lade variable rytmus in r24 
			inc		r24
endmark:	sts		rytmus, r24		;speiche den rytmus ab
			pop		r24
			ret

und die 3. datei

Code:
#include <avr/io.h>
#include "Assembly1.s"
#include "erster test.c"

#ifndef INCFILE1_H_
#define INCFILE1_H_



void Test (void);


#endif /* INCFILE1_H_ */

ich weiß der Code ist nicht sehr orginell und in c besser zu schreiben es geht hier auch nur um einen ersten Test
um rauszukriegen wie das geht.
bitte auch keine Inline lösung das hilft mir nicht weiter weil das später ein längerer Assamblerteil wird

hoffe jemand hat erfahrung
bitte einfach erklären ich mache zum ersten mal ein C Programm assambler kann ich schon
vielen lieben Dank
little
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)