A A A A Автор Тема: Программа для PIC16F887. Помогите, плз.  (Прочитано 536 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Andr_BАвтор темы

  • *****
  • Сообщений: 609
  • Благодарностей: 26
  • Андрей Богданов
    • Сообщения от Andr_B
Коллеги, не дайте умом повредиться. Второй день туплю и не вижу очевидного. Программа хрестоматийная. Микропроцессор PIC16F887. Два порта RA0 и RA3 - аналоговые входы. К ним подсоединены сенсоры. Их заменяют два потенциометра. Результаты выводятся на LCD дисплей.
При опросе одного из сенсоров, все прекрасно, при опросе двух  - возникает проблема.
При включении, в результат измерения первого сенсора на экран выводится сакральное число 867. Откуда оно берется я так и не понял, возможно это просто содержимое регистров. Затем выводится истинное значение показание Сенсора1, но оно выводится уже во вторую строку, куда должно выводиться значение Сенсора2. А значение Сенсора2 выводится в строку первую на место значения Сенсора1.
Меняются они местами, короче говоря.
Да, я понимаю, что одно из решений задачи лежит на поверхности: просто поменять местами подписи "сенсор1" и "сенсор2". Но... как-то неправильно это. Должен быть цивилизованный путь, а найти не могу. Поможите, кто умеете .
Во вложенном файле исходник на С и файлы Протеуса.
SW 150/750. EQ3-2. HEQ5Pro. QHY5. Canon 1000D.  Зенит-Е.

Онлайн Андрей Y

  • *****
  • Сообщений: 1 142
  • Благодарностей: 49
  • Чаще смотрите на звезды.
    • Сообщения от Андрей Y
Re: Программа для PIC16F887. Помогите, плз.
« Ответ #1 : 06 Июн 2015 [00:00:06] »
Вы запускаете процесс аналогово-цифрового преобразования ADCON0.GO=1 и тут же , без паузы, читаете ADRESH,ADRESL. Естественно там ещё результат предыдущего преобразования.
« Последнее редактирование: 06 Июн 2015 [00:18:36] от Андрей Y »
Кому и очковое стекло - объектив.

Оффлайн Andr_BАвтор темы

  • *****
  • Сообщений: 609
  • Благодарностей: 26
  • Андрей Богданов
    • Сообщения от Andr_B
Re: Программа для PIC16F887. Помогите, плз.
« Ответ #2 : 06 Июн 2015 [00:40:25] »
Вот оно!!! Лежало перед носом, а вот туда задержку поставить не сообразил!
Снимаю шляпу! Премного благодарен! Ваш свежий взгляд спас мой разум. Ведь что только не делал.
Проверил. Работает. Большое спасибо!
SW 150/750. EQ3-2. HEQ5Pro. QHY5. Canon 1000D.  Зенит-Е.