d7d1cd 0 6 февраля, 2014 Опубликовано 6 февраля, 2014 (изменено) · Жалоба Я думаю что вы заметили что в старшем разряде проскакивает единица. Пока мне непонятно почему. Сделай точку остановки в отладчике именно в том месте, где происходит вывод 1 в старшем разряде. Или напиши такое условие. Потом крути-верти резистор. Когда будет выводиться 1 в старшем разряде, отладчик остановится. Посмотри значения переменных. Может так найдешь причину. В функции show_number лучше использовать оператор switch, чем кучу if. Можно и if, но тогда все if кроме первого должны быть заменены на else if. Зачем нужна "маленькая пауза"? Она у тебя не маленькая, она очееееееень маленькая. Изменено 6 февраля, 2014 пользователем d7d1cd Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
niketa 0 6 февраля, 2014 Опубликовано 6 февраля, 2014 · Жалоба Сделай точку остановки в отладчике именно в том месте, где происходит вывод 1 в старшем разряде. Или напиши такое условие. Потом крути-верти резистор. Когда будет выводиться 1 в старшем разряде, отладчик остановится. Посмотри значения переменных. Может так найдешь причину. Ошибку в коде нашел. Предыдущий пост исправил. Я там забыл скобки две поставить. Зачем нужна "маленькая пауза"? Она у тебя не маленькая, она очееееееень маленькая. Паузу уберу нафиг,она ненужна. В функции show_number лучше использовать оператор switch, чем кучу if. Можно и if, но тогда все if кроме первого должны быть заменены на else if. Спасибо.Исправлю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
miheyk 0 6 февраля, 2014 Опубликовано 6 февраля, 2014 (изменено) · Жалоба Для конструкций вида if (number == 0) { P1OUT &=~(BIT1+BIT2+BIT3+BIT5); P2OUT &=~(BIT0+BIT2); } if (number == 1) { P1OUT &=~BIT3+BIT5; } ...... лучше использовать switch(number ) case 0: case 1: .... Пардон, повторился, d7d1cd уже указал. Изменено 6 февраля, 2014 пользователем Mihey_K Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CatDog34 0 20 февраля, 2014 Опубликовано 20 февраля, 2014 · Жалоба Для большого напряжения нужно с начала проверить компоненты на которых оно гасится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
igorle 0 7 июля, 2014 Опубликовано 7 июля, 2014 · Жалоба Случайно наткнулся на эту тему. Если еще актуально - год назад мне потребовалось сотворить пульт управления домашней печкой с двухсимвольным семисегментным индикатором. Для проотипа просто взял MSP430G2553 в корпусе DIP и воткнул его в бредборд. Сверху насадил индикатор. Так что каждая ножка индикатора идет напрямую к своей ножке MSP. Таким образом в каждую единицу времени можно зажечь один сегмент. Ярковато, даже учитывая, что каждый элемент горит только 1/16 времени. Но для макетирования сгодилось. Потом, когда паял конечное устройство - в цепи анодов добавил резисторы (две штуки - по одному на каждый анод) Схему не рисовал, там и так понятно. А на код могу ссылку дать. Если интересно - пишите в личку. (я форум крайне не регулярно просматриваю, так что не увижу, если здесь кто напишет.) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться