Ir ao conteúdo
  • Cadastre-se
Luan Borges

Outro Como começar a programar o STM8l152

Recommended Posts

Olá,

Pelo que pesquisei, para desenvolver o programa, pode usar essa IDE, ST Visual Desktop, link abaixo:

Link página ST Visual Desktop

 

e para gravar o programa no chip, pode usar um ST Link V2 (...genérico), acredito que dá certo. Pelo que me lembro esse gravador/debugador serve para STM32 e STM8, confirme.

 

Att,

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
10 horas atrás, Luan Borges disse:

como Funciona ou programa esse microcontrolador?

Amigo, pra esta façanha não vai ter como escapar de um boa leitura no datasheet e aplications notes deste mc.

 

10 horas atrás, Luan Borges disse:

to com um e não sei nem por onde começar 

Poizé... é bom começar pelo início do princípio. Defina seu propósito e não queime a etapa do pisca led.

Esta família de mc é muito boa e barata. Obviamente melhor que pic e melhor que avr. E mais barata que os 2. Chatinho de programar e entender os registros, mas depois que pega as mânha, já era.

Olha p.ex. só a inicialização do clock de 1 deles:

void setup_clock(void)
{
//setup clock
//STM8S003
CLK_ICKR = 0;                       //  Reset the Internal Clock Register.
CLK_ICKR_HSIEN = 1;                 //  Enable the HSI.
CLK_ECKR = 0;                       //  Disable the external clock.
CLK_CKDIVR=0;   //freq máxima
while (CLK_ICKR_HSIRDY == 0);       //  Wait for the HSI to be ready for use.
CLK_PCKENR1 = 0xff;                 //  Enable all peripheral clocks.
CLK_PCKENR2 = 0xff;                 //  Ditto.
CLK_HSITRIMR = 0;                   //  Turn off any HSIU trimming.
CLK_SWIMCCR = 0;                    //  Set SWIM to run at clock / 2.
CLK_SWR = 0xe1;                     //  Use HSI as the clock source.<--OK
CLK_SWCR = 0;                       //  Reset the clock switch control register.
CLK_SWCR_SWEN = 1;                  //  Enable switching.
while (CLK_SWCR_SWBSY != 0);        //  Pause while the clock switch is busy.

//PCKEN=0xff;
//CLK_CKDIVR = 0;                     //  Ensure the clocks are running at full speed.
//CLK_PCKENR = 0xff;                 //  Enable all peripheral clocks.
//CLK_CCOR = 0;                       //  Turn off CCO.
}  

e só pros ports tem váarios registros p.ex. PORTD tem:

PD_ODR = saída

PD_IDR = entrada

PD_DDR = direção

PD_CR1, PD_CR2 = controla pullup, pushpull, interrupt, etc

 

Difícil mas nao impossível. Faça um pisca led com ele e domine o mundo!

Dica: use e estude algum exemplo que vem com o compilador. Se bem que quando fui fazer isso, o exemplo era complicadin com muitos desvios. Desisti e fui de d.s. mesmo kk. Mas confere lá...

abç

  • Haha 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×