deluca wrote:@franco
puoi iniziare con il più classico degli esempi "Blink Led" tanto per testare se l'hw è configurato correttamente.
- Code: Select all
#include <avr/io.h>
#include <util/delay.h>
int main(void)
{
DDRB=0xFF; //PORT B (LEDs) output
while(1)
{
PORTB=0x00; //LEDs ON
_delay_ms(1000); //delay
PORTB=0xFF; //LEDs OFF
_delay_ms(1000); //delay
}
}
legacy wrote:non ho criticato l'hw ma la sua ISA, perche' la trovo brutta, contorta, poco documentata al lato compiler module, tant'e' che di fatto per la documentazione dello stesso compiler module bisogna rifarsi ai sorgenti del compilatore, nel caso specifico per quanto c'e' in di giro di pubblico bisogna rifarsi ai sorgenti di avr-gcc (il che e' tutto un programma): Mcrochip ha tonnellate di documentazione in PDF al riguardo, e non solo, ha pure molto + support, sia come librerie che come codice pubblico, il tutto con una qualita' superiore. Lo stesso avr-gcc e' perennemente pieno di buchi e che le librerie lo sono altrettanto. Per esempio sono passati ben due anni da quando in avr-gcc e' saltato fuori il problema di memory layout dei mega e ancora se ne parla, poi il prog mem, poi il famoso bit di indirizzamento, insomma … c'e' sempre qualche cosa che non va e tocca ogni volta impazzire nelle loro bislacche patch. La linea Xmega e' ancora peggio, ci sono pure bachi hw. Poi e' chiaro, uno si compra il tool professionale che mette a posto i vari problemi, e ci gioca ed e' pure felice, pero' un povero hobbista che non ha quelle cifre io lo indirizzerei bene e meglio verso Microchip: almeno si toglie dalle scatole quei problemi e al costo di un solo programmatore (del costo ridicolo) si porta a casa MPU molto + amichevoli, molto meglio documentate, con una ISA molto + interessante (sopratutto la isa dei PIC32 e' MIPS32 aka direttamente supportata nei corsi di architetture elaborative), e soprattutto con un ambiente di sviluppo gratuito che e' a prova di utonti; ed aggiungiamoci pure che, mentre la roba Microchip gira su WIndows, MacOSX e linux scenza alcun problema, la roba gratuita di Atmel o gira solo su Windows o e' gestita con i piedi per quanto riguarda linux (provare per credere), il che significa che poi ci si trova nettamente in difficoltà ad ogni aggiornamento: altro motivo per preferire Microchip.
metti qui il tuo codice
#include <avr/io.h>
#include <util/delay.h>
int main(void)
{
DDRB=0xFF; //PORT B (LEDs) output
while(1)
{
PORTB=0x00; //LEDs ON
_delay_ms(1000); //delay
PORTB=0xFF; //LEDs OFF
_delay_ms(1000); //delay
}
}
Return to Microcontrollori e microprocessori
Users browsing this forum: No registered users and 22 guests