9363

Разработка цифрового измерителя температуры

Лабораторная работа

Коммуникация, связь, радиоэлектроника и цифровые приборы

ТЕМА: Разработка цифрового измерителя температуры В качестве цифрового датчика температуры в схеме стенда используется цифровой датчик DS18B20 фирмы DallasSemiconductor (D1), который с помощью однопроводного интерфейса подключен к разряду 7 по...

Русский

2013-03-04

178.5 KB

50 чел.

ТЕМА: Разработка цифрового измерителя температуры

В качестве цифрового датчика температуры в схеме стенда используется цифровой датчик DS18B20 фирмы Dallas Semiconductor (D1), который с помощью однопроводного интерфейса подключен к разряду 7 порта P0.

ЗАДАНИЕ К РАБОТЕ.

1. Разработать программу, измеряющую температуру в лаборатории с удаленным доступом и выводящую значение температуры на цифровой индикатор.

2. С помощью среды программирования Keil  создать двухмодульный прект, состоящий из модулей main.c  и dallas.c.

3. Определить реальную температуру в лаборатории.

4. Скопировать изображение стенды с результатами измерений в отчет.

СОДЕРЖАНИЕ ОТЧЕТА

Исходный текст программы (Main.c).

#include "ADuC842.h" // подключение заголовочного файла ADuC842.h

#include "dallas.h"    // подключение заголовочного файла  dallas.h

///////////////////////////////////////////////////////////////////////////////////////////////

// ввод массива шестнадцатиричных кодов для 7- сегментного индикатора: //отображаются {0, 1, 2... E, F}

unsigned char digit[16] = {0x77, 0x11, 0x6d, 0x5D,

          0x1b, 0x5e, 0x7e, 0x15,

          0x7f, 0x5f, 0x3f, 0x7a,

          0x66, 0x79, 0x6e, 0x2e};

void main() {

 char t;    //объявление байтовой переменной t

 P0 = P2 = 0;   // запись 0 в порты P0 и  P2

 while (1) {    // бесконечный цикл

   t = GetTemp();  // измерение температуры

   P0 = digit[t/10];  // запись в P0 элемента массива digit с номером, равным числу

                                              //десятков градусов

   P2 = digit[t%10];  // запись в P2 элемента массива digit с номером, равным числу

                                              //единиц градусов

 }

}

Файл листинга.

C51 COMPILER V6.22  LAB5                                                                   04/12/2010 21:20:05 PAGE 1  

 

C51 COMPILER V6.22, COMPILATION OF MODULE LAB5

OBJECT MODULE PLACED IN lab5.OBJ

COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE lab5.c DEBUG OBJECTEXTEND

stmt level    source

  1          #include "ADuC842.h"

  2          #include "dallas.h"     

  3          ///////////////////////////////////////////////////////////////////////////////////////////////

  4          unsigned char digit[16] = {0x77, 0x11, 0x6d, 0x5D,

  5                                          0x1b, 0x5e, 0x7e, 0x15,

  6                                          0x7f, 0x5f, 0x3f, 0x7a,

  7                                          0x66, 0x79, 0x6e, 0x2e};        

  8          void main() {

  9   1        char t;                       

 10   1        P0 = P2 = 0;          

 11   1        while (1) {           

 12   2          t = GetTemp();      

 13   2          P0 = digit[t/10];   

 14   2          P2 = digit[t%10];   

 15   2      }

 16   1      }

MODULE INFORMATION:   STATIC OVERLAYABLE

  CODE SIZE        =     39    ----

  CONSTANT SIZE    =   ----    ----

  XDATA SIZE       =   ----    ----

  PDATA SIZE       =   ----    ----

  DATA SIZE        =     16    ----

  IDATA SIZE       =   ----    ----

  BIT SIZE         =   ----    ----

END OF MODULE INFORMATION.

C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

Содержание *.hex файла

:10098200E4FDFCC3ED9FEE6480F8EC6480985007B0

:070992000DBD00010C80EC1B

:01099900223B

:10096500C2877F1D7E00120982D2877F031209820A

:0C097500A287E433FB7F19120982AF0354

:010981002253

:0F09BE00C287D287E4FF0FBF03FCA287E433FF99

:0109CD002207

:1009AD00C287BF0102D2877F057E00120982D287DE

:0109BD002217

:1008FC00E4FBFA1209BEEF600D7401A80208800235

:10090C00C333D8FC42037F067E001209820ABA0860

:03091C00E2AF0344

:01091F0022B5

:02092000A90725

:10092200E4FBE9A803088003A2E713D8FBFA530209

:1009320001AF021209AD0BBB08E87F057E00020978

:010942008232

:10088C001209657FCC1209207F441209207F057E56

:10089C00001209823087FD1209657FCC1209207F76

:1008AC00BE1209209000001208FCAE8274182EF8BB

:1008BC00A607A3E5826409458370ECE519C454F0DE

:0808CC00FFE518C4540F4FFFB3

:0108D4002201

:10099A00100877116D5D1B5E7E157F5F3F7A667961

:0209AA006E2EAF

:1008D500E4F5A0F58012088CEF75F00A120943249F

:1008E50008F8E6F580EF75F00A120943AEF07408D2

:0708F5002EF8E6F5A080DEFD

:03000000020800F3

:0C080000787FE4F6D8FD758121020847DE

:10094300C2D530F707B2D563F0FF05F030E70CB23C

:10095300D5F4048463F0FF05F080018430D502F4FC

:0209630004226C

:10080C000208D5E493A3F8E493A34003F68001F225

:10081C0008DFF48029E493A3F85407240CC8C333ED

:10082C00C4540F4420C8834004F456800146F6DFBC

:10083C00E4800B010204081020408090099AE47EA9

:10084C00019360BCA3FF543F30E509541FFEE493B1

:10085C00A360010ECF54C025E060A840B8E493A378

:10086C00FAE493A3F8E493A3C8C582C8CAC583CAA3

:10087C00F0A3C8C582C8CAC583CADFE9DEE780BE5B

:0109AC00004A

:00000001FF

Рисунок 1. Копия  изображения стенда с измеренной температурой.

Измерение температуры проводилось 12.04.2010 г. в 21 ч 30 мин. 

Вывод:

   В ходе выполнения данной лабораторной работы было изучены

особенности построения цифрового измерителя температуры , а так же вывод данных на сегментные индикаторы.


 

А также другие работы, которые могут Вас заинтересовать

14224. Бах. «Гольдберг вариации» 24 KB
  Лекция седьмая. Тема: Бах. Гольдберг вариации. Цикл из 30ти вариаций. Ария тема для вариаций существует в качестве Сарабанды переписанной рукой Анны Магдалены в Клавирной книжечке 1725 года. Ария существовала по крайней мере за десять лет до того как Бах во...
14225. Старинное (куплетное) рондо 24.5 KB
  Лекция восьмая. Тема: Старинное куплетное рондо. Определение. Куплетное рондо это форма где устойчивая часть по французской традиции rondeau/рондо проводится неоднократно 2 3 5 7 9 11 и более раз в главной тональности и по преимуществу неизменно а перемежающиеся...
14226. Старинная сонатная форма 14.23 KB
  Лекция десятая девятой не было. Тема: старинная сонатная форма. Определение. Классификация. Старинной сонатной называется форма с установившимся сонатным тональным планом по принципу: тоника не тоника в экспозиционной части не тоника тоника в развивающезаверш...
14227. Концертная форма эпохи барокко 28.5 KB
  Лекция одиннадцатая. Тема: концертная форма эпохи барокко. Занимает центральное место в эпохе. Концертная форма встречается в крайних частях. Барокко эпоха концертирующего стиля т.е. идея чередования тутти и соло. Эта идея встречается и в других формах. Статья: Х
14228. Бах. Бранденбургский концерт №4 24 KB
  Лекция двенадцатая. Тема: Бах. Бранденбургский концерт №4. Первая часть. Скрипка и две флейты оркестр традиционный струнный с чембало. Ядро 6 тактов. Первый каденционный участок в начале 23 такта. 57 такт проведение в Соль мажоре. 83 такт завершение темы соло ...
14229. Бах. Бранденбургский концерт № 3 23 KB
  Лекция пятнадцатая. Тема: Бах. Бранденбургский концерт № 3. Третья часть Двухчастная форма TD первая часть DT вторая часть Ядро двутактовое и развертывание Ядро в G 17 такт ядро в e 20 такт ядро в h 37 такт ядро в С потом в G As и h II ХТ...
14230. Александр Сергеевич Даргомыжский (1813-1869) 15.1 KB
  Александр Сергеевич Даргомыжский 1813-1869 Его творчество новый этап в развитии музыки. Продолжатель дела Глинки; новатор; открыватель новых путей неохваченных Глинкой. Был критическим реалистом и главной темой были представители низших сословий и их жизнь. В 1835 год...
14231. Музыкальная ритмика 21.05 KB
  Музыкальная ритмика представлена в качестве приема работы по формированию и коррекции произносительной стороны речи слабослышащих детей. Цели которые определяют основные направления в занятиях по музыкальной ритмике заключаются в том чтобы: соединить работу
14232. Музыкальное искусство средневековья 23.73 KB
  Музыкальное искусство средневековья. Урсу Полина ДВЭ2 Средневековье большая эпоха человеческой истории время господства феодального строя. Периодизация культуры: Раннее Средневековье V X вв. Зрелое Средневековье XI XIV вв. В 395 г. Римская империя расп