Создание редактора входных воздействий цифровых сигналов для САПР OrCad 9.1, страница 3

Приложение. «Формат файлов входных воздействий САПР OrCad 9.1»

(все коды - шестнадцатеричные)

Сигнатура файла внешних воздействий:

Кодирование сигналов:

Кодирование переключений

1)  Базовых сигналов


2)  Шинных сигналов

3)  Периодических сигналов

Описание программы (ГОСТ 19.402-78)

1. Общие сведения.

Наименование программы – “Stm Ed”.

Разработана в среде Borland C++ Builder 5.0

Оформление: MS Word XP.

2.Функциональное назначение.

Работа с файлами внешних воздействий в среде OrCad 9.1

3. Описание логической структуры.

Описание логической структуры приведено пояснительной записке.

4. Используемые технические средства.

Платформа разработчика: iCeleron 466Mhz, 128Mb RAM

5. Вызов и загрузка.

Запуск исполняемого файла stmed.exe, выбор пунка меню SIMULATE в среде OrCad 9.1 при условии, что программа проинсталлирована нужным образом.

6. Входные данные.

Мышь, клавиатура, ранее созданные файлы внешних воздействий

7. Выходные данные.

Список сигналов на дисплее и (или) файл с информацией о внешних воздействиях, записанный в формате OrCad 9.1

Выводы по задаче.

Тестирование показало, что поставленные задачи выполнены, требуемые методы реализованы, что позволяет говорить о соотвитствии исходного алгоритма конечному продукту.

Заключение.

В результате выполнения данной работы был получен опыт в написании объектно-ориентированных программ и оценка за курсовую работу по дисциплине “Моделирование ”.

Был изучен формат файлов внешних воздействий (в приложении), получены навыки по интеграции собственных программных модулей в САПР OrCad.

При оформлении данной работы были получены навыки оформления программной документации в соответствии с Единой Системой Программной Документации.

Литература.

1.  Справочная система Borland C++ Builder 5.0.

2.  «C / C++», Ален Голуб

Приложение 1.

Текст исходных модулей.

Stmed.cpp

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

USERES("stmed.res");

USEFORM("main.cpp", StmForm);

USEFORM("newsig.cpp", NewStimForm);

USEFORM("newbasic.cpp", NewBasicForm);

USEFORM("newbus.cpp", NewBusform);

USEFORM("newclock.cpp", NewClockForm);

USEFORM("about.cpp", AboutForm);

USEFORM("prop.cpp", PropForm);

USEFORM("start.cpp", StartForm);

//---------------------------------------------------------------------------

WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)

{

        try

        {

                 Application->Initialize();

                 Application->CreateForm(__classid(TStartForm), &StartForm);

                 Application->CreateForm(__classid(TStmForm), &StmForm);

                 Application->CreateForm(__classid(TNewStimForm), &NewStimForm);

                 Application->CreateForm(__classid(TNewBasicForm), &NewBasicForm);

                 Application->CreateForm(__classid(TNewBusform), &NewBusform);

                 Application->CreateForm(__classid(TNewClockForm), &NewClockForm);

                 Application->CreateForm(__classid(TAboutForm), &AboutForm);

                 Application->CreateForm(__classid(TPropForm), &PropForm);

                 Application->Run();

        }

        catch (Exception &exception)

        {

                 Application->ShowException(&exception);

        }

        return 0;

}

//---------------------------------------------------------------------------

Main.h

//---------------------------------------------------------------------------

#ifndef mainH

#define mainH

//---------------------------------------------------------------------------

#include <Classes.hpp>

#include <Controls.hpp>

#include <StdCtrls.hpp>

#include <Forms.hpp>

#include <Menus.hpp>

#include <Dialogs.hpp>

#include <stdio.h>

#include <ExtCtrls.hpp>

#include <jpeg.hpp>

#include <ComCtrls.hpp>

#include <ToolWin.hpp>

#include <Buttons.hpp>

//---------------------------------------------------------------------------

class TStmForm : public TForm

{

__published:  // IDE-managed Components

        TMainMenu *MainMenu1;

        TMenuItem *OpenFileMenu;

        TOpenDialog *OpDlg;

        TMenuItem *ExitMenu;

        TMenuItem *DrawMnu;

        TStatusBar *SBar;

        TToolBar *ToolBar1;

        TSpeedButton *ZoomInBtn;

        TSpeedButton *ZoomOutBtn;

        TSpeedButton *BackBtn;

        TSpeedButton *StraightBtn;

        TSpeedButton *SaveBtn;

        TMenuItem *FileMnu;

        TMenuItem *N1;

        TMenuItem *HelpMnu;

        TMenuItem *GetHelpMnu;

        TMenuItem *N2;

        TMenuItem *AboutMnu;

        TSpeedButton *AboutBtn;

        TMenuItem *StimMnu;

        TMenuItem *NewStimMnu;

        TMenuItem *N3;

        TSpeedButton *OpenBtn;

        TSpeedButton *NewBtn;

        TSpeedButton *UpBtn;

        TSpeedButton *DownBtn;

        TPopupMenu *PMnu;

        TMenuItem *DelSigPMnu;

        TMenuItem *NewStimPMnu;

        TMenuItem *N4;

        TMenuItem *SaveAsMnu;

        TSaveDialog *SaveDlg;

        TMenuItem *SigProp;

        void __fastcall OpenFileMenuClick(TObject *Sender);

        void __fastcall ExitMenuClick(TObject *Sender);

        void __fastcall DrawMnuClick(TObject *Sender);

        void __fastcall ZoomInBtnClick(TObject *Sender);

        void __fastcall ZoomOutBtnClick(TObject *Sender);

        void __fastcall BackBtnClick(TObject *Sender);

        void __fastcall StraightBtnClick(TObject *Sender);

        void __fastcall FormMouseMove(TObject *Sender, TShiftState Shift,

          int X, int Y);

        void __fastcall NewStimMnuClick(TObject *Sender);

        void __fastcall AboutMnuClick(TObject *Sender);

        void __fastcall DownBtnClick(TObject *Sender);

        void __fastcall UpBtnClick(TObject *Sender);

        void __fastcall DelSigPMnuClick(TObject *Sender);

        void __fastcall FormMouseUp(TObject *Sender, TMouseButton Button,

          TShiftState Shift, int X, int Y);

        void __fastcall FormKeyDown(TObject *Sender, WORD &Key,