Курсовая

Курсовая Проектирование вычислительных модулей

Работа добавлена на сайт bukvasha.ru: 2015-10-25

Московский Авиационный Институт

(Государственный Технический Университет)

Курсовая работа

тема: Проектирование вычислительных модулей

Сдала:

студентка группы 04-425

Кудрявцева О.И.

Проверил:

преподаватель 402 каф.

Сухарев Д.А.

2010 год


Задание

Проектирование вычислительного модуля, состоящего из 2 датчиков давления,4 датчиков температуры: 2 датчика до +125°, 2 датчика до +400°.

1.                 Схема подключения датчиков;

2.                 Программы для работы с датчиками.


Схема подключения датчиков


Программы для работы с датчиками

Программа для работы с DS18B20




К линии P1.0(90h) контроллера MCU4-X подключены два термодатчика new 0 dim $(5),7 :SA=0AE06h ;ЖКИ подключен к MCU4-X 1 ADDR=90h :AT0=loc($(0)):AT1=loc($(1)) :AT2=loc($(2)) 2 xreg(36h)=81h ;конфигурация PIC-контроллера ;Используем операцию поиска для определения идентификационных кодов ;1-й датчик 20 lan Z(90h,120),T#0F0h,S(AT0,22) ;2-й датчик 21 lan Z,T#0F0h,S 22 clear S ;обнулить стек ; запуск обоих датчиков на преобразование 50 lan Z(ADDR,120),T#0CCh,T#44h ; задержка 1 сек 51 time=0 :do :while time<1 ; запрос 1, чтение блокнота, проверка CRC8 52 lan Z,C#0,T#55h,T(AT1,7),C,C#0,T#0BEh,R(AT0,8),C(100) 53 T1=rot8(memw(AT0)) ;меняем расположение байт 54 SN=T1.and.8000h:if SN=0 then goto 56 ;значение измеренной температуры представлено в дополнительном коде ;т.е. знак температуры - минус ;преобразуем в прямой код со знаком 55 T1=T1.and.0FFFEh :T1=T1-65536 ;расчет значения температуры по установленному по умолчанию ;разрешению в 0.0625 градуса Цельсия 56 T1=T1*0.0625:? "T1= ",using(###.##),T1 ; запрос 2, чтение блокнота, проверка CRC8 60 lan Z,T#55h,T(AT2,7),C,C#0,T#0BEh,R(AT0,8),C(110) 61 T2=rot8(memw(AT0)) ;меняем расположение байт 62 SN=T2.and.8000h:if SN=0 then goto 64 ;значение измеренной температуры представлено в дополнительном коде ;т.е. знак температуры - минус ;преобразуем в прямой код со знаком 63 T2=T2.and.0FFFEh :T2=T2-65536 ;расчет значения температуры по установленному по умолчанию ;разрешению в 0.0625 градуса Цельсия 64 T2=T2*0.0625 :? "T2= ",using(###.##),T2 ; вывод значения на индикатор 65print#SA,chr(18h),using(###.##),"T1=",T1,chr(1bh),chr(0c0h),"T2=",T2 67 goto 50 ;бесконечный цикл измерения температуры 100 T1=0:SB=SB+1:goto 65 ;Т1-счетчик сбоев обмена 110 T2=0:SB=SB+1:goto 65 ;Т2-счетчик сбоев обмена ; 120 clear S:print#SA,chr(18h),"Нет подключенных",chr(1bh),chr(0c2h) 121 print#SA,chr(1bh),chr(0c2h),"датчиков" 122 ? "Нет подкюченных датчиков"

Программа для работы с АЦП DS2450




new ; Демонстрационная программа для работы с АЦП DS2450 ; (только для версий Fractal-BASIC не младше 1.8) ; Аппаратура: ; -модуль вычислителя MCU42-3 ; ;======================================================= ; Линия данных АЦП подключена к входу/выходу P3.2 (0B2h) ;======================================================= ; ; Вид со стороны вилки: ; ; D B +5v +5v ; | | | | ; 19 17 15 13 11 09 07 05 03 01 ; 20 18 16 14 12 10 08 06 04 02 ; | | | | | ; | | C A | ; | Data Общий ; Общий ; ; ; ; на управление выходами ;0 goto 100 ; ;------------------------------------------------------- ; определение номера ROM ; Номер будет занесен в $(0) и выведен на терминал ; ; адрес входа, адрес размещения 10 AD=0B2h :ADR=loc($(0)) ; команда "Read ROM", 7 байт помещаются в $(0) ; ; |команда"чтение ROM" ; | |CRC8:=0 ; |сброс | | |чтение 7 байтов ; | | | | 11 lan Z(AD,18),T#33h,C#0,R(ADR,7) ; печать 7 байтов 12 print "ROM= ", :for I=0 to 6 :phb mem(ADR+I)," ", :next I ; печать байта CRC (вычисленное значение) 13 phb " CRC8=",mem(213h) :print ; проверка CRC 14 lan C(19) :goto 20 15 stop :goto 10 18 print "Нет устройств MicroLAN" :goto 15 19 phw "Не совпал CRC8" :goto 15 ; ;-------------------------------------------------------- ; ; Измерение напряжения ; -------------------- ; 20 CLC=4000h :CB=CLC+2 ; начальное значение генератора CRC16 21 memw(23Bh)=0 ; ; ; Установка режимов работы каналов: ; - все каналы включены; ; - диапазон измерения =2.55В; ; - 16 разрядов. ; ; |CRC16:=0 ; ропуск ROM| | |запись в RAM ; сброс| | | | |адрес=0008h ; | | | | | 22 lan Z(AD,69),T#0CCh,X#0,T#55h,T##8 ; ; ; ; |мл. байт режима ; | |проверка CRC16 ; | | |контр. чтение ; | | | |нач.знач.CRC16:=<текущий адрес> ; | | | | |ст. байт режима ; | | | | | |проверка CRC16 ; | | | | | | |контр. чтение ; | | | | | | | |нач.знач.CRC16 23 lan T#00h,X(70),R(CB,1),X#09h,T#0,X(70),R(CB,1),X#0Ah ;канал A 24 lan T#00h,X(70),R(CB,1),X#0Bh,T#0,X(70),R(CB,1),X#0Ch ;канал B 25 lan T#00h,X(70),R(CB,1),X#0Dh,T#0,X(70),R(CB,1),X#0Eh ;канал C 26 lan T#00h,X(70),R(CB,1),X#0Fh,T#0,X(70),R(CB,1) ;канал D ; ; Запуск преобразования: ; ; CRC16:=0| |команда-"пуск АЦП" ; пропуск ROM| | | |включить каналы A,B,C,D ; сброс| | | | | |предустановказначений в "0" ; | | | | | | |проверка CRC16 (Пуск АЦП) 30 lan Z(AD,69),T#0CCh,X#0,T#3Ch,T#0Fh,T#55h,X(70) ; ; нужно ждать не менее 80*16*4=5120 мкС 33 time=0 :do :while time<0.01 ; ; ;команда "чтение RAM" |Адрес=0000h ; CRC16:=0| | | |чтение в память ;пропуск ROM | | | |данных с АЦП (8 байт) ; сброс| | | | | | ; | | | | | | |проверка CRC16 35 lan Z,T#0CCh,X#0,T#0AAh,T##0,R(ADR+3,8),X(70) ; ; ; разберем по каналам и переставим местами байты 40 A=rot8(memw(ADR+3)) 41 B=rot8(memw(ADR+5)) 42 C=rot8(memw(ADR+7)) 43 D=rot8(memw(ADR+9)) ; ; печатаем HEX значения 44 phw A," ",B," ",C," ",D," ", ; ; Пересчитаем в вольты (Uоп=2.55В) 50 A=2.55*A/65536 51 B=2.55*B/65536 52 C=2.55*C/65536 53 D=2.55*D/65536 ; ; Сгладим апериодически значение (канал А) 54 E=0.1*A+0.9*E ; |Сглаженное ; Печатаем значения в(В) |значение (канал A) 55 print using(#.#####),A,B,C,D," |",E ; 59 goto 20 ; 69 print "Нет импульса присутствия" :stop 70 phw "CRC16=",memw(23Dh): goto 30 ; ;-------------------------------------------------------- ; ; Управление выходами ; ------------------- ; ; ; ; 100 AD=90h :CB=4000 ; ; - все каналы выключены (разомкнуты); ; ; CRC16:=0| ; пропуск ROM| | |запись в RAM ; сброс| | | | |адрес=0008h ; | | | | | 122 lan Z(AD,69),T#0CCh,X#0,T#55h,T##8 ; ; |мл. байт режима ; | |проверка CRC16 ; | | |контр. чтение ; | | | |нач.знач.CRC16:=<текущий адрес> ; | | | | |ст. байт режима ; | | | | | |проверка CRC16 ; | | | | | | |контр. чтение ; | | | | | | | |нач.знач.CRC16 123 lan T#0C0h,X(70),R(CB,1),X#09h,T#0,X(70),R(CB,1),X#0Ah ;канал A 124 lan T#0C0h,X(70),R(CB,1),X#0Bh,T#0,X(70),R(CB,1),X#0Ch ;канал B 125 lan T#0C0h,X(70),R(CB,1),X#0Dh,T#0,X(70),R(CB,1),X#0Eh ;канал C 126 lan T#0C0h,X(70),R(CB,1),X#0Fh,T#0,X(70),R(CB,1) ;канал D ; ; - все каналы включены (замкнуты); ; 132 lan Z,T#0CCh,X#0,T#55h,T##8 ; 133 lan T#080h,X(70),R(CB,1),X#09h,T#0,X(70),R(CB,1),X#0Ah ;канал A 134 lan T#080h,X(70),R(CB,1),X#0Bh,T#0,X(70),R(CB,1),X#0Ch ;канал B 135 lan T#080h,X(70),R(CB,1),X#0Dh,T#0,X(70),R(CB,1),X#0Eh ;канал C 136 lan T#080h,X(70),R(CB,1),X#0Fh,T#0,X(70),R(CB,1) ;канал D ; 140 goto 122
Программа для работы с
MPX
2010




Список используемой литературы
1.       http://www.fractal.com.ru/index.php?p=index&sp=fb&PHPSESSID=af..

2.       http://www.fractal.com.ru/index.php?p=index&sp=p_bas&ssp=ex24&PHPSESSID=b65a10f3746ef15ebe567243b2d51473

3.       http://www.fractal.com.ru/index.php?p=index&sp=p_bas&ssp=ex6

4.       http://www.kit-e.ru/articles/sensor/2006_7_102.php

1. Реферат на тему Pop Culture
2. Реферат Стенбок, Магнус
3. Реферат Кредитная политика 2
4. Реферат Определение скорости распространения звука в воздухе
5. Курсовая Вертикальная интеграция НГХК в РТ и РФ
6. Контрольная работа на тему Эконометрика 2
7. Контрольная работа Денежные средства учреждения. Порядок их учёта
8. Сочинение на тему Пласты лексики
9. Курсовая на тему Проектирование локальной вычислительной сети
10. Реферат на тему Конституция РФ ее реализация проблемы реализации