Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3834

.pdf
Скачиваний:
4
Добавлен:
15.11.2022
Размер:
25.75 Mб
Скачать

соответствующее 0, то регистр CNT_B начинает счет импульсов, иначе, если счетчик достигает своего максимальное значения 32767, то этот счетчик обнуляется, иначе, если регистр cnt3B достигает своего максимальное значения 3, то счетчику импульсов опорной синхронизации присваивается значение регистра временного хранения TEMP.

…… ……

62always@(posedge clk_B or posedge reset)

63begin

64if (reset)

65begin

66CNT_B<=15'b0;

67end

68else if (CNT_B==32767)

69begin

70CNT_B<=15'b0;end

71else if (cnt3B==2'b10)

72begin

73CNT_B<=TEMP;

74end

75else if (perCNT_B==0)

76begin

77CNT_B<=CNT_B+1'b1;

78end

79end

…… ……

Рис. 6. Verilog-описание счетчика импульсов CNT_B

Пятый блок always (рис. 7) предназначен для описания принципа функционирования регистра счета секунд S. При каждом положительном фронте тактового сигнала clk_B и сигнала сброса reset происходит действие, заключенное в конструкции begin – end, а именно: если подается сигнал сброса reset, то счетчик S обнуляется, иначе, если регистр CNT_B достигает своего максимальное значения 32767, то регистр S начинает счет секунд, иначе, если счетчик S достигает своего максимальное значения 59 и если регистр CNT_B достигает своего максимальное значения 32767, то регистр счета

21

секунд S обнуляется.

…… ……

82always@(posedge clk_B or posedge reset)

83begin

84if (reset)

85S<=15'b0;

86else if (S==59)

87begin

88if (CNT_B==32767)

89S<=1'b0;

90end

91else if (CNT_B==32767)

92S<=S+1'b1;

93end

…… ……

Рис. 7. Verilog-описание счетчика секунд S

Шестой блок always (рис. 8) предназначен для описания принципа функционирования регистра разрешения счета минут dM. При каждом положительном фронте тактового сигнала clk_B и сигнала сброса reset происходит действие, заключенное в конструкции begin – end, а именно: если подается сигнал сброса reset, то регистр dM обнуляется, иначе, если регистр CNT_B достигает своего максимальное значения 32767 и если счетчик S достигает своего максимальное значения 59, то регистр разрешения счета минут dM принимает значение 1, в противном случае принимает значение 0.

22

….…..

96always@(posedge clk_B or posedge reset)

97begin

98if (reset)

99dM<=1'b0;

100else if (CNT_B==32767)

101begin

102if (S==59)

103dM<=1'b1;

104else

105dM<=1'b0;

106end

107end

….. …..

Рис. 8. Verilog-описание регистра разрешения счета минут dM

Седьмой блок always (рис. 9) предназначен для описания принципа функционирования регистра счета минут M. В данном блоке событие, заключенное в конструкции begin – end чувствительно к значению регистра S и сигналу сброса reset. Если подается сигнал сброса reset, то регистр M обнуляется, иначе, если регистр dM принимает значение 1, то регистр M начинает счет минут, иначе, если регистр dM принимает значение «1» и если счетчик минут M достигает свое максимальное значение 59, то регистр M обнуляется.

Восьмой блок always (рис. 10) предназначен для описания принципа функционирования регистра разрешения счета часов dH. При каждом положительном фронте тактового сигнала clk_B и сигнала сброса reset происходит действие, заключенное в конструкции begin – end, а именно: если подается сигнал сброса reset, то регистр dH обнуляется, иначе, если регистр CNT_B достигает свое максимальное значения 32767 и если счетчики S и M достигаетю своих максимальных значений 59, то регистр разрешения счета часов dH принимает значение 1, в противном случае принимает значение 0.

23

110always@(S or reset)

111begin

112if (reset)

113M<=15'b0;

114else if (M==59)

115begin

116if (dM==1)

117M<=1'b0;

118end

119else if (dM==1)

121begin

122M<=M+1'b1;

123end

124end

…… ……

Рис. 9. Verilog-описание регистра счета минут M

……. ……

126always@(posedge clk_B or posedge reset)

127begin

128if (reset)

129dH<=1'b0;

130else if (CNT_B==32767)

131begin

132if (S==59)

133begin

134if (M==59)

135dH<=1'b1;

136else

137dH<=1'b0;

138end

139end

140end

……. …….

Рис. 10. Verilog-описание регистра разрешения счета часов dH

24

Девятый блок always (рис. 11) предназначен для описания функционирования регистра счета часов H. В данном блоке событие, заключенное в конструкции begin – end чувствительно к значению регистра M и сигналу сброса reset. Если подается сигнал сброса reset, то регистр H обнуляется, иначе, если регистры dM и dH принимают значения 1, то регистр H начинает счет часов, иначе, если значение регистра H достигает свое максимальное значение 23 и если регистр разрешения счета минут dM принимает значение 1, регистр счета часов обнуляется.

142always@(M or reset)

143begin

144if (reset)

145H<=15'b0;

146else if (H==23)

147begin

148if (dH==1)

149H<=1'b0;

150end

151else if (dM==1)

152begin

153if (dH==1)

154H<=H+1'b1;

155end

156end

Рис. 11. Verilog-описание регистра счета часов H

После создания RTL-модели блока счетчика реального времени для проверки пригодности полученного кода было создано тестовое окружение и проведено имитационное моделирование, которое подтвердило правильность созданной модели (рис. 12).

25

Рис. 12. Векторная диаграмма, иллюстрирующая работу блока счетчика реального времени для микроконтроллера

Литература

1.Евстифеев, А.В. Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL [Текст]: руководство пользователя / А.В. Евстифеев. - 5-е изд., стер. – М.: Издательский дом «Додэка-XXI», 2008. – 560 с.

2.Поляков, А.К. Языки VHDL и Verilog в проектировании цифровой аппаратуры [Текст] / А. К. Поляков. – М.: СОЛОН-Пресс, 2003. – 320 с.

3.Стиль программирования на языке Verilog [Текст]: Verilog style and coding guidelines, SUN Microsystems / Г. Дайкема, П.

Монше, Д. Нельсен и др.; пер с англ. О.А. Ефремова.: 2002. – 30 с.

Воронежский государственный технический университет

26

УДК 621.9

Е.И. Новикова, И.В. Панченко

РАЗРАБОТКА ИНФОРМАЦИОННО-ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДИАГНОСТИКИ

ОСТРОГО ПАНКРЕАТИТА

Статья посвящена

созданию информационно-программного

обеспечения для диагностики острого панкреатита.

В процессе разработки

программного продукта была использована среда

программирования IDE

BorlandDelphi7

 

 

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

Постановка диагноза осуществляется на основе клинических

признаков,

результатов

лабораторных

и

ультразвукового

исследования.

Разработанное

программное

обеспечение

диагностики острого панкреатита удобно в использовании, позволяет добиться повышения эффективности процесса диагностики заболевания острый панкреатит.

Взаимодействие функциональных блоков программы изображено на рис. 1. Структурная схема, созданной программы с использованием Delphi 7, представленная на рис. 2.

Рассмотрим более детально взаимодействие функциональных блоков системы.

Блок UAbout – это модуль «О программе», который представляет пользователю данные о создателях и версии программы.

Модуль UBD содержит методы и особенности управления работы с базой данных.

UChoose – модуль, который и позволяет пользователю выбирать метод получения информации о пациентах: извлечь из базы данных, либо путем введения нового пациента в базу.

UMain – это модуль основной формы, в котором указываются данные пациента, клинические, лабораторные признаки и данные УЗИ. При нажатии на соответствующую кнопку происходит расчет с помощью нейронных сетей и вынесение результатов.

27

Модуль UClient позволяет вводить данные о новых пациентах на новой форме.

UData – модуль, который содержит информацию о классах, константах, массивах определенных данных, типах данных, использованных в приложении. Также в этом модуле описаны методы работы нейронных сетей и получение результатов.

Ufirst – это модуль приветствующей формы.

UResult – модуль, при помощи которого выводятся данные о пациенте, клинических и лабораторных признаков, данных УЗИ.

Разработанная программа диагностирования острого панкреатита проста и удобна в использовании.

При запуске программы открывается главное окно, изображенное на рис. 3, которое содержит стандартное главное меню с пунктами «О программе», «Перейти к диагностике», «Закрыть».

Рис. 1. Схема взаимодействия функциональных блоков

28

Рис. 2. Структурная схема системы диагностики острого панкреатита

29

Рис. 3. Главное окно программы

При нажатии кнопки «О программе» появляется окно,изобаженное на рис. 4 , с информацией о разработчиках

.

Рис. 4. Окно «О программе»

При выборе кнопки «Перейти к диагностики» появляется

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]