Easyelectronics.ru

Электроника для всех
Текущее время: 22 окт 2018, 21:43

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



    • JLCPCB - Прототипы 10 PCBs всего за 2$ (100*100mm, 2-layer)
    • Как мы делаем платы, смотрите на YouTube
    • Крупнейшая китайская фабрика прототипов. 300000+ заказчиков и 10000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин комплектующих.

Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Непонятки с состоянием регистра.
СообщениеДобавлено: 01 апр 2018, 00:59 
Только пришел

Зарегистрирован: 21 ноя 2014, 15:13
Сообщения: 7
Привет. Нужно чтобы при удержании кнопки МК просто болтался в цикле.
Все кнопки подтянуты к + питания. Почему то не выходит из цикла, даже когда отпущены все кнопки, по юарту смотрю что регистр = 0x00. Так же и входит в цикл даже когда регистр = 0. В чем может быть проблема? Спасибо.

Код:
while(~GPIO_ReadInputData(GPIOB) != 0){
   while (UART1_GetFlagStatus(UART1_FLAG_TC) == RESET){}  //Отправка по UART
   UART1_SendData8(~GPIO_ReadInputData(GPIOB));
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятки с состоянием регистра.
СообщениеДобавлено: 01 апр 2018, 01:24 
Старожил

Зарегистрирован: 10 окт 2014, 00:48
Сообщения: 5014
Напишите как-то так:

volatile uint8_t test;

test=~GPIO_ReadInputData(GPIOB);
while(test != 0){
test=~GPIO_ReadInputData(GPIOB);
while (UART1_GetFlagStatus(UART1_FLAG_TC) == RESET){} //Отправка по UART
UART1_SendData8(test);
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятки с состоянием регистра.
СообщениеДобавлено: 08 апр 2018, 23:31 
Только пришел

Зарегистрирован: 21 ноя 2014, 15:13
Сообщения: 7
u37 писал(а):
Напишите как-то так:

volatile uint8_t test;

test=~GPIO_ReadInputData(GPIOB);
while(test != 0){
test=~GPIO_ReadInputData(GPIOB);
while (UART1_GetFlagStatus(UART1_FLAG_TC) == RESET){} //Отправка по UART
UART1_SendData8(test);
}


Спасибо. Попробовал - не помогло. Решил переписать, теперь у меня в цикле по очереди опрашиваются кнопки. Но появилась другая проблема - все кнопки подключенные к порту B правильно работают, а кнопка, подключенная к PB0 - не срабатывает. Но в то же время, если запускать через отладчик - всё работает как надо. Никто с таким не сталкивался?
Если что - МК STM8S003K3 на борту отладочной платы stm8svldiscovery.


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

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


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB