Автор: Пользователь скрыл имя, 05 Апреля 2012 в 23:23, курсовая работа
Данная работа посвящена разработке цифрового генератора ТВ диапазона на базе ТВ ресивере с управлением от ПЭВМ.
Целью данной работы является изучение, исследование принципа работы схемы и разработка её программного обеспечения.
1. ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНА¬ЧЕНИЙ, ЕДИНИЦ И ТЕРМИНОВ___3
2. ВВЕДЕНИЕ____________________________________________________4
3. ТЕХНИЧЕСКОЕ ЗАДАНИЕ ______________________________________5
3.1 Структурная схема ____________________________________________6
3.2 Принципиальная схема ________________________________________7
3.3 Текст программы в Delphi ______________________________________8
3.4 Алгоритмическая схема _______________________________________15
3.5 Примечание _________________________________________________16
4. ЗАКЛЮЧЕНИЕ _______________________________________________17
5. СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ___________________18
2
Содержание
1. ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ, ЕДИНИЦ И ТЕРМИНОВ___3
2. ВВЕДЕНИЕ______________________
3. ТЕХНИЧЕСКОЕ ЗАДАНИЕ ______________________________
3.1 Структурная схема ______________________________
3.2 Принципиальная схема ______________________________
3.3 Текст программы в Delphi ______________________________
3.4 Алгоритмическая схема ______________________________
3.5 Примечание ______________________________
4. ЗАКЛЮЧЕНИЕ ______________________________
5. СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ___________________
1. ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ, ЕДИНИЦ И ТЕРМИНОВ
LPT – порт. Общие сведения.
IEEE 1284 (порт принтера, параллельный порт, англ. Line Print Terminal, LPT) — международный стандарт параллельного интерфейса для подключения периферийных устройств персонального компьютера.
В основном используется для подключения к компьютеру принтера, сканера и других внешних устройств (часто использовался для подключения внешних устройств хранения данных), однако может применяться и для других целей (организация связи между двумя компьютерами, подключение каких-либо механизмов телесигнализации и телеуправления).
В основе данного стандарта лежит интерфейс Centronics и его расширенные версии (ECP, EPP).
Название «LPT» образовано от наименования стандартного устройства принтера «LPT1» (Line Printer Terminal или Line PrinTer) в операционных системах семейства MS-DOS.
Delphi
Delphi является средой разработки, используемой прежде всего для поддержки и разработки приложений, предназначенных как для отдельных рабочих станций, так и для серверов.
Delphi может функционировать под управлением операционной системы Windows 95, 98, NT, XP. Отличительными чертами рабочей среды Delphi являются: - большинство созданных с помощью Delphi приложений будут направлены главным образом на решение задач, связанных с производством и бизнесом; это значит, что обеспечение функционирования баз данных и создание отчетов будут наиболее часто решаемыми задачами; - совместимость приложений становится все более важной. Помимо всего прочего, это обусловлено еще и бурным развитием аппаратного обеспечения (Hardware), в частности:
а) широким распространением мобильных компьютеров;
б) дальнейшим развитием технических средств, предназначенных для приема, воспроизведения и передачи информации следующих типов: цифровой, текстовой, изображения и звука.
PLL
PLL - сокращение от Phase-Locked Loop - электронная схема, позволяющая при небольших схемотехнических затратах получить умножение (деление) некоторой опорной частоты сигнала в заданное число раз, при этом множитель (делитель) может быть не целым (дробным) числом.
Наиболее широко применяется в синтезаторах частоты радиоаппаратуры и во встроенных генераторах частоты микроконтроллеров.
ВВЕДЕНИЕ
Данная работа посвящена разработке цифрового генератора ТВ диапазона на базе ТВ ресивере с управлением от ПЭВМ.
Актуальность данной темы состоит в том, что данная разработка позволяет обеспечивать настройку как цифровых приемников, так и других цифровых устройств. Также в ней задействовано управление генератором через LPT порт при помощи написанной программы в Delphi, что позволяет специалистам расширить свой кругозор знаний в настройках такого рода аппаратуры и, возможно, повысить свои навыки в программировании.
Целью данной работы является изучение, исследование принципа работы схемы и разработка её программного обеспечения.
Министерство Обороны Украины
Академия Военно-Морских Сил им.П.С.Нахимова
Кафедра радиотехнических систем
Утверждаю
Руководитель проекта
к.т.н., доцент
ТЕХНИЧЕСКОЕ ЗАДАНИЕ
Разработка узла цифрового генератора ТВ диапазона на базе ТВ - ресивере с управлением от ПЭВМ через LPT – порт
Севастополь 2011
3.1 Структурная схема цифрового генератора
3.2 Принципиальная схема цифрового генератора
3.3. Текст программы
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls;
function Inp32(PortAdr: word): byte; stdcall; external 'inpout32.dll';
function Out32(PortAdr: word; Data: byte): byte; stdcall; external 'inpout32.dll';
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
TrackBar1: TTrackBar;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Label10: TLabel;
Timer1: TTimer;
procedure TrackBar1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
tuner_step,tuner_if,tuner_vco,
port,data,tmp: integer;
buster: integer;
implementation
{$R *.dfm}
Function st(tmp:byte):byte;
begin
st:=255;
if tmp=0 then st:=1; if tmp=1 then st:=2; if tmp=2 then st:=4;
if tmp=3 then st:=8; if tmp=4 then st:=16; if tmp=5 then st:=32;
if tmp=6 then st:=64; if tmp=7 then st:=128; end;
Function i2c_del:boolean;
var tc: integer;
begin
tc:=0; while tc<10000 do begin inc(tc); end;
i2c_del:=true; end;
Function i2c_start:byte;
begin
// Out32(port+2, $00);
Out32(Port+2,$01); i2c_del;
Out32(port, $00); i2c_del;
// Out32(Port, $00);
i2c_start:=0;
end;
Function i2c_stop:byte;
begin
Out32(Port, $08); i2c_del;
Out32(port+2,$00); i2c_del;
// Out32(Port+2,$00);
i2c_stop:=0;
end;
Function i2c_byte:byte;
var
i: integer;
begin
for i:=0 to 7 do begin
tmp:=i;
if (data and st(7-i))=st(7-i) then begin
Out32(Port+2, $00); i2c_del;
Out32(Port, $08); i2c_del;
Out32(Port, $00); i2c_del;
Out32(port+2,$01); i2c_del;
end
else
begin
Out32(Port+2, $01); i2c_del;
Out32(Port, $08); i2c_del;
Out32(Port, $00); i2c_del;
Out32(port+2,$01); i2c_del;
end;
end;
i2c_del;
Out32(Port, $08); i2c_del;
Out32(Port, $00); i2c_del;
i2c_del; i2c_del; i2c_del; i2c_del;
i2c_byte:=0;
end;
function tuner_i2c:boolean;
begin
i2c_start;
data:=$0c0; i2c_byte;
data:=tuner_hi; i2c_byte;
data:=tuner_lo; i2c_byte;
data:=$0c8; i2c_byte;
data:=Tuner_band; i2c_byte;
i2c_stop;
tuner_i2c:=true;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
port:=$378;
tuner_step:=50000;
tuner_if:=36000000;
Out32(port,0); buster:=-1; tuner_band:=$01;
end;
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
tuner_vco:=tuner_step*(Form1.
Tuner_band:=$02;
If tuner_vco-Tuner_if>155000000 then tuner_band:=$04;
If tuner_vco-Tuner_if>440000000 then tuner_band:=$01;
tuner_hi:=Trunc(tuner_vco/
tuner_lo:=Trunc(Tuner_Vco/
Form1.Label1.Caption:='кГц '+FloatToStr(tuner_vco/1000);
Form1.Label2.Caption:='кГц '+FloatToStr(tuner_if/1000);
Form1.Label3.Caption:='кГц '+FloatToStr((tuner_vco-tuner_
Form1.Label4.Caption:='BAND='+
Form1.Label8.Caption:='Hi byte:='+IntToHex(tuner_hi,2);
Form1.Label9.Caption:='Lo byte:='+IntToHex(tuner_lo,2);
tuner_i2c;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
tuner_vco:=145500000+tuner_if;
Form1.TrackBar1.Position:=
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
tuner_vco:=435500000+tuner_if;
Form1.TrackBar1.Position:=
end;
procedure TForm1.Button3Click(Sender: TObject); // у 132 функции этой нет
begin
buster:=-buster; tuner_i2c;
if buster=1 then form1.Label10.Caption:='IF-1(
if buster=-1 then form1.Label10.Caption:='IF-1(
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
{
i2c_start;
data:=$0c2; i2c_byte;
data:=tuner_hi; i2c_byte;
data:=tuner_lo; i2c_byte;
data:=$0c8; i2c_byte;
data:=Tuner_band; i2c_byte;
i2c_stop
// tuner_i2c:=true;
}
end;
end.
3.5 Алгоритмическая схема программы
3.6 Примечание
tuner_vco:=tuner_step*(positio
tuner_hi:= Trunc( tuner_vco/tuner_step/1/256)
tuner_lo:=Trunc(tuner_vco/tune
Trunc- целая часть числа с плавающей запятой.
I2c_del – задержка
I2c_start – стартовый бит
I2c_stop – стоповый бит
I2c_byte - передача одного байта по шине I2C
tuner_step - шаг установки частоты тюнера в гц
tuner_if - частота используемой ПЧ в гц
tuner_band - байт управления диапазоном
tuner_vco – текущее положение частоты с шагом установки
tuner_hi - старший байт делителя
tuner_lo - младший байт делителя
tuner_i2c – подпрограмма передачи данных в тюнер по шине i2c
ЗАКЛЮЧЕНИЕ
В данной курсовой работе показана разработка узла цифрового генератора ТВ диапазона на базе ТВ- ресивера с управлением от ПЭВМ через LPT порт при помощи программы Delphi.
Написанное программное обеспечение дает возможность устанавливать промежуточную частоту, управлять выходными частотами цифрового генератора, настраивать цифровые приемники.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. В.В.Сташин, А.В.Урусов, О.Ф.Мологонцева. Проектирование цифровых устройств на однокристальных микроконтроллерах. -М.: Энергоатомиздат, 1990. -224 с.
2. А.В.Боборыкин, Г.П.Липовецкий, Г.В.Литвинский и др. Однокристальные микроЭВМ. Справочник.-М.: Микап, 1994. -400 с.
Министерство Обороны Украины
Академия Военно-Морских Сил имени П.С. Нахимова
Кафедра радиотехнических систем
Разработка узла цифрового генератора ТВ диапазона на базе ТВ – ресивере с управлением от ПЭВМ через LPT порт
ОТЧЕТ ПО КУРСОВОМУ ПРОЕКТУ ПО ДИСЦИПЛИНЕ
"МИКРОПРОЦЕССОРЫЕ В СИСТЕМАХ И УСТРОЙСТВАХ"
Выполнил: студент 536 группы
Магда И. О.
Руководитель: доцент
Байздренко А. А.
Севастополь 2011