• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Pessanha24

Projectos usando Microcontroladores

8 mensagens neste tópico

Este tópico tem como objectivo ser um tópico em que se possam "postar" projectos desenvolvidos na área dos microcontroladores. (PIC, Arduino entre outros)

Para possibilitar a futuros "visitantes" alguns exemplos de código e documentação que achem relevante. É verdade que existem milhares de tutoriais disponíveis online, mas se o "mais importante" for "postado" aqui pode ajudar muitos futuros "Visitantes".

Bons posts            :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não tenho propriamente projecto, mas tenho alguns exemplos de codigo que podem servir de acessorios a alguns projectos, dentro em breve postarei :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas.

Em breve vou por aqui uma lib para atmega32 a 16 mhz toda escrita em asembly, mas escrita de forma a poder aceder a partir de C as suas funções.

Já tem funções para uart, spi , i2c mais uma função para os delay.

Irei deixar tambem alguns drivers escrito em C, ja tenho feito: lcd siemens m55 em spi mode, MMC driver em spi mode, 24cxx eeprom em i2c mode.

Tambem irei por os respectivos links de onde aprendi tudo.

Para fazer no futuro:  adicionar A/D-converter mais PWM á lib, criar driver para ide, criar driver para ENC28J60 e quando tiver tempo quero por a correr duas tasks no atmega32(apenas duas por causa da pouca memoria ram 2kb) e mais algumas coisas que me irei lembrar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Nunca trabalhei directamente em assembly com um Atmega apenas com PIC, mas já ando a ver umas coisinhas e vai ser concerteza importante o teu contributo.

Fico à espera.....

:P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas.

Em breve vou por aqui uma lib para atmega32 a 16 mhz toda escrita em asembly, mas escrita de forma a poder aceder a partir de C as suas funções.

Já tem funções para uart, spi , i2c mais uma função para os delay.

Irei deixar tambem alguns drivers escrito em C, ja tenho feito: lcd siemens m55 em spi mode, MMC driver em spi mode, 24cxx eeprom em i2c mode.

Tambem irei por os respectivos links de onde aprendi tudo.

Para fazer no futuro:  adicionar A/D-converter mais PWM á lib, criar driver para ide, criar driver para ENC28J60 e quando tiver tempo quero por a correr duas tasks no atmega32(apenas duas por causa da pouca memoria ram 2kb) e mais algumas coisas que me irei lembrar.

Gostava que colocasses a Lib..........para poder aprender......... :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desculpa, foi muito tempo.

Neste link está a lib, depois meto o driver para o lcd do siemens m55 que tambem foi escrito

em assembly, só falta fazer as fontes (letras).

Neste site em UK pode se comprar o lcd custa 16,15 euros sem portes e demora menos de uma semana a vir : http://www.mytrendyphone.com/shop/original-siemens-a60-1782p.html

lib para atemega32 a 16MHz : http://code.google.com/p/libatmega32/downloads/list

A unica parte da lib que está dependente dos 16MHz é a uart.s e whait.s .

Para compilar esta lib necessita de se ter o avr-as.

Para usar esta lib em C tem de se usar o compilador avr-gcc.

led_teste.c : pisca o led ligado a PORTB pino 0.

#include "lib32/AT32.h"




void main(void){

unsigned char i=0;
  

SET_BIT(DDRB, 0);

while(i==0){


       SET_BIT(PORTB, 0);
       sleep(1);
       CLEAR_BIT(PORTB, 0);
       sleep(1);

}

}

O make file.

GCC = avr-gcc
OBJCOPY = avr-objcopy
OBJFLAGS = -j .text -j .data -O ihex
CFLAGS = -mmcu=atmega32 -I.lib32 
LFLAGS = libatmega32.a
AVRDUDE = avrdude avrdude -p m32 -P /dev/parport0 -c dapa -b 115000 -F -u -U flash:w:led_teste.hex

led_teste.hex :: led_teste.elf
$(OBJCOPY) $(OBJFLAGS)  $^ $@

led_teste.elf :: led_teste.c
$(GCC) $(CFLAGS) $^ $(LFLAGS) -o $@ 


clean ::
$(RM) led_teste.hex *.o *~ 

install ::
$(AVRDUDE)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora