Например TDA7294

Форум РадиоКот • Просмотр темы - STM8L0151+USART не работает
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 16, 2024 12:37:28

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: STM8L0151+USART не работает
СообщениеДобавлено: Вт апр 03, 2018 20:15:14 
Встал на лапы

Зарегистрирован: Сб янв 11, 2014 21:25:55
Сообщений: 113
Рейтинг сообщения: 0
Доброго времени суток! Пытаюсь запустить USART на STM8L151, код пишу в IAR.
1) Ремап сделал на А2,А3.
2) Выход настроил.
3) USART1 включил.
3) Делитель установил.
4) Передачу разрешил.

Но на выходе ничего нет.

Зисис мой код:

Код:
#include "iostm8l151f3.h"

void clock_init(){
  CLK_CKDIVR = 1;
  CLK_ICKCR |= (1<<0);
  while(!(CLK_ICKCR&(1<<1)));
}

void mcu_usart_init(unsigned int divider){
  SYSCFG_RMPCR1 |= (1<<4); //Remap to PA2, PA3
 
  PA_DDR_bit.DDR2 = 1; // Output
  PA_CR1_bit.C12  = 1; // Push-pull
 
  CLK_PCKENR1_bit.PCKEN10 = 1; //USART1 On
   
  (void) USART1_SR;
  (void) USART1_DR;

  USART1_BRR2 = (unsigned char) (((divider >> 8) & 0xF0) | (divider & 0x0F));
  USART1_BRR1 = (unsigned char) (divider >> 4);
 
  USART1_CR2_bit.REN=1;
  USART1_CR2_bit.TEN=1;
   
}

int main( void ){
  clock_init();
  mcu_usart_init(208); //Divider for 8MHz to 34800
 
  PC_DDR_bit.DDR4 = 1; // Output
  PC_CR1_bit.C14  = 1; // Push-pull
  PC_CR2_bit.C24  = 0; // 2MHz output speed
 
 
 
  while(1){
   
    while(!(USART1_SR_bit.TXE));
    USART1_DR = 0xAA;
   
    PC_ODR ^= (1<<4);
    for(unsigned long i=0; i<200000; i++);
 
  }
}



Где я неправ или что ещё нужно сделать?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM8L0151+USART не работает
СообщениеДобавлено: Сб дек 29, 2018 00:31:03 
Родился

Зарегистрирован: Сб дек 29, 2018 00:27:10
Сообщений: 7
Рейтинг сообщения: 0
Доброго времени суток! Пытаюсь запустить USART на STM8L151, код пишу в IAR.

Зисис мой код:

Код:
  CLK_PCKENR1_bit.PCKEN10 = 1; //USART1 On


Где я неправ или что ещё нужно сделать?


По моему тут должно быть: CLK_PCKENR1_bit.PCKEN15 = 1


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: Юрий48 и гости: 15


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y