Здравствуйте, друзья, я нашел этот форум, где это способствует ответы на многие знающих специалистов в схемы программирования PIC. Позвольте мне спросить вас о помощи с русской программой термостата. Я не говорю по русскому хорошо, так что простите любые ошибки в грамматике. Я хотел бы заменить этом проектe дисплей с общим катодом, в дисплей с общим анодoм, просто изменить программу без помощи других схем. Как необходимо в программе индикации про инвертировать вывод данных в порт и инверсия управления разрядами и в программе опроса клавиатуры изменить настройку портов в aссемблерном файле?
Спасибо за вашу помощь
термостат
-
pert
- Нашел транзистор. Понюхал.
- Сообщения: 190
- Зарегистрирован: Пт дек 17, 2010 23:19:40
- Откуда: Чешская Республика
термостат
- Вложения
-
- rusky.asm
- (182.56 КБ) 299 скачиваний
-
- TERMOSTAT POKUS.pdf
- (11.37 КБ) 217 скачиваний
- Реклама
Re: термостат
Для этого нужно инвертировать все линии, что идут к индикаторам, тоесть
инвертировать все бинарные! значения тут:
и тут:
а также все bcf TOCHKA1 заменить на bsf TOCHKA1 и наоборот, включая TOCHKA2 и TOCHKA3
Подпрограмма обработки клавиатуры не нуждается в изминении.
инвертировать все бинарные! значения тут:
Код: Выделить всё
deshif addwf PCL,f ; дешифратор цифр
retlw b'01111110' ; 0-0
retlw b'00001100' ; 1-1
retlw b'10110110' ; 2-2
retlw b'10011110' ; 3-3
retlw b'11001100' ; 4-4
retlw b'11011010' ; 5-5
retlw b'11111010' ; 6-6
retlw b'00001110' ; 7-7
retlw b'11111110' ; 8-8
retlw b'11011110' ; 9-9
retlw b'00000000' ; 10-"пусто"
retlw b'10000000' ; 11-"минус" Код: Выделить всё
text_1 addwf PCL,f ; тип устройства (счет строк с 0)
retlw .12 ; количество команд - retlw в подпрограмме
retlw b'01110010' ; "C"
retlw b'11101100' ; "H"
retlw b'10000000' ; "-"
retlw b'10110110' ; 2-2
retlw b'11001100' ; 4-4
retlw b'11011110' ; 9-9
retlw b'01111110' ; 0-0
retlw b'10000000' ; "-"
retlw b'00001100' ; 1-1
retlw b'00001100' ; 1-1
retlw b'11101100' ; H
; .12 ошибки датчика
retlw .12 ; количество команд - retlw в подпрограмме
retlw b'11110010' ; "E"
retlw b'10100000' ; "r"
retlw b'10100000' ; "r"
retlw b'10111000' ; "o"
retlw b'10100000' ; "r"
retlw b'00000000' ; " "
retlw b'10111100' ; "d"
retlw b'11101110' ; "a"
retlw b'11110000' ; "t"
retlw b'10110000' ; "c"
retlw b'11101001' ; "h."
; .24 телефон изготовителя
retlw .16 ; количество команд - retlw в подпрограмме
retlw b'11111110' ; "8"
retlw b'10000000' ; "-"
retlw b'01111110' ; "0"
retlw b'11011010' ; "5"
retlw b'11111010' ; "6"
retlw b'10000000' ; "-"
retlw b'10011110' ; 3-3
retlw b'00001110' ; 7-7
retlw b'11001100' ; 4-4
retlw b'10000000' ; "-"
retlw b'01111110' ; "0"
retlw b'11001100' ; 4-4
retlw b'10000000' ; "-"
retlw b'01111110' ; "0"
retlw b'11011010' ; "5"
; .40 авария данных
retlw .10 ; количество команд - retlw в подпрограмме
retlw b'11101110' ; "A"
retlw b'01110000' ; "L"
retlw b'11101110' ; "A"
retlw b'10100001' ; "r."
retlw b'00000000' ; " "
retlw b'10111100' ; "d"
retlw b'11101110' ; "A"
retlw b'11110000' ; "t"
retlw b'11101110' ; "A"
; .50 регулятор отключен
retlw .4 ; количество команд - retlw в подпрограмме
retlw b'10111000' ; "o"
retlw b'11100010' ; "F"
retlw b'11100010' ; "F"
; .54 регулятор включен
retlw .3 ; количество команд - retlw в подпрограмме
retlw b'10111000' ; "o"
retlw b'10101000' ; "n"
; .57 холодно
retlw .5 ; количество команд - retlw в подпрограмме
retlw b'01110010' ; "С"
retlw b'10111000' ; "o"
retlw b'01110000' ; "L"
retlw b'10111100' ; "d"
; .62 горячо
retlw .6 ; количество команд - retlw в подпрограмме
retlw b'11101100' ; "H"
retlw b'10111000' ; "o"
retlw b'11110000' ; "t"
retlw b'01110000' ; "L"
retlw b'00111100' ; "y"
; .68 уст
retlw .4 ; количество символов +1
retlw b'11011100' ; "У"
retlw b'01110010' ; "С"
retlw b'11110000' ; "t"
; .72 tuc
retlw .4 ; количество символов +1
retlw b'11110000' ; "t"
retlw b'00111000' ; "u"
retlw b'10110000' ; "c"
; .76 qic
retlw .4 ; количество символов +1
retlw b'11001110' ; "q"
retlw b'00001000' ; "i"
retlw b'10110000' ; "c"
; .80 dot
retlw .4 ; количество символов +1
retlw b'10111100' ; "d"
retlw b'10111000' ; "o"
retlw b'11110000' ; "t"
; .84 Uut
retlw .4 ; количество символов +1
retlw b'01111100' ; "U"
retlw b'00111000' ; "u"
retlw b'11110000' ; "t"
; .88 Tel
retlw .4 ; количество символов +1
retlw b'11110000' ; "t"
retlw b'11110010' ; "E"
retlw b'01110000' ; "L"
; .92 Вкл/Выкл
retlw .4 ; количество символов +1
retlw b'10100000' ; "r"
retlw b'11110010' ; "E"
retlw b'11001110' ; "q"
; .96 нет выхода на режим
retlw .9 ; количество команд - retlw в подпрограмме
retlw b'10101000' ; "n"
retlw b'10111000' ; "o"
retlw b'00000000' ; " "
retlw b'10101000' ; "m"
retlw b'10001000' ; "m"
retlw b'10111000' ; "o"
retlw b'10111100' ; "d"
retlw b'11110010' ; "E"Подпрограмма обработки клавиатуры не нуждается в изминении.
-
pert
- Нашел транзистор. Понюхал.
- Сообщения: 190
- Зарегистрирован: Пт дек 17, 2010 23:19:40
- Откуда: Чешская Республика
Re: термостат
Так я пробовал, но он не работает правильно.. Вот исправленный файл.
- Вложения
-
- pokus5.asm
- (91.55 КБ) 278 скачиваний
Re: термостат
Вам нужно дополнительно проинвертировать аноды , гашение и точку.
-
pert
- Нашел транзистор. Понюхал.
- Сообщения: 190
- Зарегистрирован: Пт дек 17, 2010 23:19:40
- Откуда: Чешская Республика
Re: термостат
где это в файлe изменить ?
- Реклама
Re: термостат
Индикация и точка будут. Гашение и кнопки не делал.
-
pert
- Нашел транзистор. Понюхал.
- Сообщения: 190
- Зарегистрирован: Пт дек 17, 2010 23:19:40
- Откуда: Чешская Республика
Re: термостат
Дисплей ужe работает, кнопки не функциональное.
- К@тенок
- Нашел транзистор. Понюхал.
- Сообщения: 161
- Зарегистрирован: Пн дек 20, 2010 19:10:47
- Откуда: Курганская обл,п.Варгаши.
Re: термостат
А можете пожалуйста прошивку для мк дописать кто нить????

[url=http://easyelectronics.ru/][img]http://easyelectronics.ru/img/bn/ub_ee_01.gif[/img][/url]
[url=http://nick-name.ru/sertificates/464289/][img]http://nick-name.ru/forum/%CC%FF%F1%EE%F0%F3%E1.gif[/img][/url]
[url=http://nick-name.ru/sertificates/464289/][img]http://nick-name.ru/forum/%CC%FF%F1%EE%F0%F3%E1.gif[/img][/url]


