Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
Como instalar compilador SMT8 no linux
#1
Para instalar o compilador SMT8 no linux 

descarregue o software baixado de 

https://sourceforge.net/projects/sdcc/fi...x86/3.6.0/ em seu computador.

Descompacte o arquivo em um diretório temporário.

entre no diretório extraído.

digite 

sudo cp -r * /usr/local

coloque sua senha e espere o procedimento terminar.

para testar digite

sdcc -v

O programa deve retornar algo parecido com;

 SDCC : mcs51/z80/z180/r2k/r3ka/gbz80/tlcs90/ds390/pic16/pic14/TININative/ds400/hc08/s08/stm8 3.6.0 #9615 (Linux)

published under GNU General Public License (GPL)

+----------------------------------------------------------------------------------------------+
| Alternativo você pode usar se sua distribuição disponibilizar                  |
sudo apt-get install sdcc                                                                           |                     
|                                                                                                                   |
|  Note: Nem sempre será a versão mais atual.                                         |
+-----------------------------------------------------------------------------------------------+


Para instalar o SMT8Flash

git clone https://github.com/vdudouyt/stm8flash.git

cd stm8flash

make

sudo make install

Compilar

Para compilar, por exemplo, imaginaremos que você tenha um programa blink.c

pode executar

sdcc -lstm8 -mstm8 --out-fmt-ihx blinky.c

Pronto Smile

Exemplo funcional

crie seu arquivo usando o editor a gosto, por ex o nano

nano main.c
Para o código a seguir você precisa da biblioteca stm8l.h no mesmo diretório que salvar seu main.c para compilar.
Você encontra a biblioteca aqui

https://github.com/vdudouyt/sdcc-example...er/stm8l.h

Código:
#include "stm8l.h"
int main() 
{
   int d,c;
   // Configure pins
   PD_DDR = 0x01;
   PD_CR1 = 0x01;
   // Loop
   do {
        PD_ODR ^= 0x01;
        for(d = 0; d<19000; d++) 
        { 
           for(c = 0; c<5; c++) ;
        }
      } while(1);
}

para compilar
sdcc -lstm8 -mstm8 --out-fmt-ihx main.c

Se tudo correr bem, o prompt vai retornar sem mensagens de erro.

Caso você esqueça de por a biblioteca um erro assim retornaria

main.c:1:19: fatal error: stm8l.h: No such file or directory

compilation terminated.


Para enviar o programa para a placa use por exemplo;

stm8flash -c stlink -p stm8s105?6 -w main.ihx

Mudando sua gravadora e modelo de placa (destacado em negrito) para adequar suas necessidades.
Responder


Saltar Fórum:


usuários a ver este tópico: 1 Visitante(s)