Cours:InfoS2 tdOutput corrige : Différence entre versions
Ligne 26 : | Ligne 26 : | ||
if (chenillard==1) sens=1; | if (chenillard==1) sens=1; | ||
} | } | ||
+ | PORTA=(chenillard>> 0)&0x00FF; | ||
+ | PORTJ=(chenillard>> 8)&0x00FF; | ||
+ | PORTC=(chenillard>>16)&0x00FF; | ||
+ | PORTD=(chenillard>>24)&0x00FF; | ||
+ | _delay_ms(30); | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | <source lang=cpp> | ||
+ | #define F_CPU 16000000UL | ||
+ | #include <avr/io.h> | ||
+ | #include <util/delay.h> | ||
+ | uint32_t chenillard=0; | ||
+ | uint32_t chenillard1=0; | ||
+ | uint32_t chenillard2=0; | ||
+ | int main() | ||
+ | { | ||
+ | DDRA = 0xFF; | ||
+ | DDRJ = 0xFF; | ||
+ | DDRC = 0xFF; | ||
+ | DDRD = 0xFF; | ||
+ | while(1) | ||
+ | { | ||
+ | chenillard1 <<=1; | ||
+ | chenillard2 >>=1; | ||
+ | if (chenillard1==0) chenillard1=1; | ||
+ | if (chenillard2==0) chenillard2=0x80000000; | ||
+ | chenillard = chenillard1 | chenillard2; | ||
PORTA=(chenillard>> 0)&0x00FF; | PORTA=(chenillard>> 0)&0x00FF; | ||
PORTJ=(chenillard>> 8)&0x00FF; | PORTJ=(chenillard>> 8)&0x00FF; |
Version du 31 janvier 2023 à 17:01
Il s’agit d’une page protégée.
Chenillard
#define F_CPU 16000000UL
#include <avr/io.h>
#include <util/delay.h>
uint32_t chenillard=1;
int8_t sens=1;
int main()
{
DDRA = 0xFF;
DDRJ = 0xFF;
DDRC = 0xFF;
DDRD = 0xFF;
while(1)
{
if (sens==1)
{
chenillard <<=1;
if (chenillard==0x80000000) sens=-1;
}
else
{
chenillard >>=1;
if (chenillard==1) sens=1;
}
PORTA=(chenillard>> 0)&0x00FF;
PORTJ=(chenillard>> 8)&0x00FF;
PORTC=(chenillard>>16)&0x00FF;
PORTD=(chenillard>>24)&0x00FF;
_delay_ms(30);
}
}
#define F_CPU 16000000UL
#include <avr/io.h>
#include <util/delay.h>
uint32_t chenillard=0;
uint32_t chenillard1=0;
uint32_t chenillard2=0;
int main()
{
DDRA = 0xFF;
DDRJ = 0xFF;
DDRC = 0xFF;
DDRD = 0xFF;
while(1)
{
chenillard1 <<=1;
chenillard2 >>=1;
if (chenillard1==0) chenillard1=1;
if (chenillard2==0) chenillard2=0x80000000;
chenillard = chenillard1 | chenillard2;
PORTA=(chenillard>> 0)&0x00FF;
PORTJ=(chenillard>> 8)&0x00FF;
PORTC=(chenillard>>16)&0x00FF;
PORTD=(chenillard>>24)&0x00FF;
_delay_ms(30);
}
}