avr-chat
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-chat] Need help with simple inline assembly code


From: Ned Konz
Subject: Re: [avr-chat] Need help with simple inline assembly code
Date: Tue, 5 Jul 2005 17:57:03 -0700
User-agent: KMail/1.7.2

On Tuesday 05 July 2005 3:54 pm, Reza Naima wrote:
> I'm trying to generate a very fast (10mhz-ish) bit train from an avr
> running at ~15mhz.  The only way i can think of doing it is using inline
> assembly.  I've been trying to compile something like tihs, but I'm
> getting no love.  Any suggestions?

How about putting the parentheses in the right places, for a start?

>
> int main(void) {
>         while(1) {
>                 asm volatile("out %0, %1":: "I"
> (_SFR_IO_ADDR(PORTD))),"M" (254);
>                 asm volatile("nop"::);
>                 asm volatile("out %0, %1":: "I"
> (_SFR_IO_ADDR(PORTD))),"L" (0);
>                 asm volatile("nop"::);
>                 asm volatile("out %0, %1":: "I"
> (_SFR_IO_ADDR(PORTD))),"L" (0);
>                 asm volatile("nop"::);
>                 asm volatile("out %0, %1":: "I"
> (_SFR_IO_ADDR(PORTD))),"M" (254);
>                 asm volatile("nop"::);
>                 asm volatile("out %0, %1":: "I"
> (_SFR_IO_ADDR(PORTD))),"L" (0);
>                 asm volatile("nop"::);
>         }
>         return 0;
> }

int main(void) {
        while(1) {
                asm volatile("out %0, %1":: "I" (_SFR_IO_ADDR(PORTD)),"M" 
(254));
                asm volatile("nop"::);
                asm volatile("out %0, %1":: "I" (_SFR_IO_ADDR(PORTD)),"L" (0));
                asm volatile("nop"::);
                asm volatile("out %0, %1":: "I" (_SFR_IO_ADDR(PORTD)),"L" (0));
                asm volatile("nop"::);
                asm volatile("out %0, %1":: "I" (_SFR_IO_ADDR(PORTD)),"M" 
(254));
                asm volatile("nop"::);
                asm volatile("out %0, %1":: "I" (_SFR_IO_ADDR(PORTD)),"L" (0));
                asm volatile("nop"::);
        }
        return 0;
}

-- 
Ned Konz
http://bike-nomad.com





reply via email to

[Prev in Thread] Current Thread [Next in Thread]