LCD+PIC16F84A+DS18B20

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

Совсем недавно стал заниматься контроллерами и вот возникли такие вопросы.
1) Есть ли пример программы, в которой описано как именно работать с DS18B20, и если можно, то с комментариями, и без всяких макросов и библиотек, хочу понять, как работать с ними на базовом уровне.
2) Такой же пример нужен для работы с Mt16S2D
3) На отладочной плате поставлен mt16s2d, а в протеусе есть только lm016l, но контроллер у них один и тот же. Значит ли это, что программу под MT можно смело использовать на LM и ничего менять не надо будет?
Реклама
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

как именно работать с DS18B20, и если можно, то с комментариями, и без всяких макросов и библиотек
На каком языке?
mt16s2d, а в протеусе есть только lm016l, но контроллер у них один и тот же.
Что мешает проверить совместимость в Протеусе? Боишся Протеус сжеч?
Реклама
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Странно... Имеется отладочная плата, а думают о каком то протеусе :facepalm:
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

Аlex писал(а):Странно... Имеется отладочная плата, а думают о каком то протеусе :facepalm:
Извините, платы нет, пока приходится так, мне для начала бы азы программирования постичь
Реклама
Эиком - электронные компоненты и радиодетали
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

otest писал(а):
как именно работать с DS18B20, и если можно, то с комментариями, и без всяких макросов и библиотек
На каком языке?
mt16s2d, а в протеусе есть только lm016l, но контроллер у них один и тот же.
Что мешает проверить совместимость в Протеусе? Боишся Протеус сжеч?
Да в принципе, хоть на асме, хоть на си, если что в си сам переброшу. Проверил их совместимость, такое ощущение, что MT использует свой знакогенератор, а LM ASCII таблицу, ибо коды от MT на LM не пошли
Реклама
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

И кто может подсказать, что я сделал не так, ибо данные на индикаторе упорно не появляются, но на выходе порта они есть. В чем трабла может быть?

Код: Выделить всё

#include p16f84a.inc
		__config 0x3FF2

#define E PORTA,2
#define RS PORTA,0
#define RW PORTA,1
  CBLOCK 0x20      ;Начальный адрес блока констант
		to_out
		Reg_1
		Reg_2
		Reg_3
		ENDC
		
;---------Контроллер--------------------------

Start
		bsf STATUS,RP0
		CLRF TRISB ; Портб на выход
		CLRF TRISA ; Порта на выход
		bcf STATUS,RP0 
		CLRF PORTA
		CLRF PORTB
;---------ЖКИ----------------------------------

		movlw b'00110000' ; первая команда
		movwf to_out ; в байт сообщения
		call to_port ; запись в порт
	    call zapis 
		call pause5
;----------------------------------------------
		movlw b'00110000' ; вторая команда
		movwf to_out ; в байт сообщения
		call to_port 
		call zapis
		call pause100
;----------------------------------------------
 		
		movlw b'00110000' ; вторая команда
		movwf to_out ; в байт сообщения
		call to_port 
		call zapis
		call pause100
		call pause100
;----------------------------------------------
		movlw b'00110100' ; 8-битный интерфейс, 1 строка, символы 8*10
		movwf to_out
		call to_port
		call zapis
		call pause100
		call pause100
;----------------------------------------------

		movlw b'00001110' ; дисплей включен, курсор включен, мерцание выключено
		movwf to_out
		call to_port
		call zapis
		call pause100
		call pause100
;----------------------------------------------

		movlw b'00000110' ; инкремент позиции курсора, сдвиг дисплея выключен
		movwf to_out
		call to_port
		call zapis
		call pause100
		call pause100

;---------- завершена-------------
;---------- информации--------------------

		movlw .131 ; установка первого адреса 1 строки
		movwf to_out 
		call to_port
		call pause50
		call zapis
		call pause255
		

;---------- символа-----------------------
		bsf RS
		movlw 0x34
		movwf to_out
		call to_port
		call pause50
		
		call zapis
		nop 
		nop 
		goto $-1

;------------Подпрограмма записи в LCD------------
zapis 
		bsf PORTA,2 ; E=1 write
		nop
		nop
		bcf PORTA,2 ; E=0 turn off write
		return
		
;---------- записи сообщения в защелки портов---------------
to_port 
	movf to_out,w
	movwf PORTB
 	return	

;---------- в 100 мкс-------------------------------------------
pause100       movlw       .33
            movwf       Reg_1
wr          decfsz      Reg_1, F
            goto        wr
			return

;---------- в 50 мкс--------------------------------------------
pause50       movlw       .16
            movwf       Reg_1
wr1          decfsz      Reg_1, F
            goto        wr1
            nop
			return

;---------Пауза в 255 мкс--------------------------------------------

pause255      movlw       .84
            movwf       Reg_1
wr2          decfsz      Reg_1, F
            goto        wr2
            nop
            nop
			return
;--------Пауза в 5 мс------------------------------------------------
pause5      movlw       .125
            movwf       Reg_1
            movlw       .7
            movwf       Reg_2
wr3         decfsz      Reg_1, F
            goto        wr3
            decfsz      Reg_2, F
            goto        wr3
		return
		
		END
Вложения
test1.rar
(10.75 КБ) 404 скачивания
Последний раз редактировалось Reaper666 Ср ноя 07, 2012 16:45:44, всего редактировалось 1 раз.
Реклама
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

1) Есть ли пример программы, в которой описано как именно работать с DS18B20...
Пример работы с 1-Wire. Исходник открыт, разбирайтесь...
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

И кто может подсказать,
А где проект в Протеусе ?
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

otest писал(а):
И кто может подсказать,
А где проект в Протеусе ?
Уой, забыл про него. Вот, залил.
Вложения
test1.rar
(10.75 КБ) 369 скачиваний
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Вот, залил.
Это не проект , это схема.
Открыл глаза
Аватара пользователя
Сообщения: 43
Зарегистрирован: Вт сен 20, 2011 08:29:03

Сообщение школьник »

проверил, схема рабочая
Изображение
Вложения
Reaper666.rar
(1.59 КБ) 405 скачиваний
Безымянный.GIF
(21.39 КБ) 2393 скачивания
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

школьник писал(а):проверил, схема рабочая
Проверил, точно работает, просто есть кракозябры вот такие, но это ладно. Можно сам код программы, где я не так что сотворил?
Вложения
Снимок.JPG
(48.08 КБ) 798 скачиваний
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Код так сотворил. Проект не так сотворил и не показываеш.
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

otest писал(а):Код так сотворил. Проект не так сотворил и не показываеш.

Чегооо? Моя вас не понимать. Серьезно, что у меня там не так. Сама схема верна, ну для протеуса верна, значит проблема в коде, и я хочу знать, где именно она может быть.
Открыл глаза
Аватара пользователя
Сообщения: 43
Зарегистрирован: Вт сен 20, 2011 08:29:03

Сообщение школьник »

Поставьте руссификатор для индикаторов на HD44780 и аналогичных в Протеусе
http://labkit.ru/userfiles/file/soft/ID ... DALPHA.rar
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Моя вас не понимать.
Мой вас тоже нихт фирштейн. Проект Протеус состоит из схемы, исходного кода , файла "нех". Всё в одной папке. Где всё это?
Открыл глаза
Аватара пользователя
Сообщения: 43
Зарегистрирован: Вт сен 20, 2011 08:29:03

Сообщение школьник »

otest писал(а):
Моя вас не понимать.
Мой вас тоже нихт фирштейн. Проект Протеус состоит из схемы, исходного кода , файла "нех". Всё в одной папке. Где всё это?
otest - вы не правы. У меня проект Протеуса запускается без исходного кода.
Достаточно указать в схеме Протеуса (для микроконтроллера) местонахождение прошивки (файла "нех").
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

школьник писал(а):Поставьте руссификатор для индикаторов на HD44780 и аналогичных в Протеусе
http://labkit.ru/userfiles/file/soft/ID ... DALPHA.rar
За русификатор спасибо, а с LCD вопрос решен, переписал на СИ и все отлично работает. Теперь надо разбираться с термодатчиком.
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

otest - вы не правы.
Я не к Вам обращался. Я собрать проект умею. А вот проект Т.С. мы так и не увидели.
Открыл глаза
Сообщения: 50
Зарегистрирован: Пн ноя 05, 2012 03:40:39

Сообщение Reaper666 »

otest писал(а):
otest - вы не правы.
Я не к Вам обращался. Я собрать проект умею. А вот проект Т.С. мы так и не увидели.

Да я понял, что вы хотели, уж извините, про hex-файл не подумал, да это уже и значения не имеет.
Ответить

Вернуться в «PIC»