Разработка автоматизированного рабочего места оператора обработки информации радиотехнических систем

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



----------------------------------------------------------

// Глобальные функции

//------------------------------------------------------------------------------void LCDD_Fill(void *pBuffer, unsigned int color);void LCDD_DrawPixel(*pBuffer,int x,int y,int c);unsigned int LCDD_ReadPixel(*pBuffer,int x,int y);void LCDD_DrawRectangle(*pBuffer,int x,int y,int width,int height,int color);void LCDD_DrawString(*pBuffer,int x,int y,char *pString,int color);void LCDD_DrawStringEx(*pBuffer,int x,int y,char *pString,int color,int dir);void LCDD_DrawStringWithBGColor(*pBuffer,int x,int y,char *pString,int fontColor,int bgColor);void LCDD_DrawStringWithBGColorEx(*pBuffer,int x,int y,char *pString,int fontColor,int bgColor,int dir);void LCDD_GetStringSize(char *pString,int *pWidth,int *pHeight);

#endif //#ifndef DRAW_H

#ifndef DMA_H

#define DMA_H

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

// Определения

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

#define DMA_CHANNEL_0 0

#define DMA_CHANNEL_1 1

#define DMA_CHANNEL_2 2

#define DMA_CHANNEL_3 3

#define DMA_CHANNEL_4 4

#define DMA_CHANNEL_5 5

#define DMA_CHANNEL_6 6

#define DMA_CHANNEL_7 7

#if defined(CHIP_DMA_CHANNEL_NUM)

#define DMA_CHANNEL_NUM CHIP_DMA_CHANNEL_NUM

#endif

#define DMA_TRANSFER_SINGLE 0

#define DMA_TRANSFER_LLI 1

#define DMA_TRANSFER_RELOAD 2

#define DMA_TRANSFER_CONTIGUOUS 3

#define DMA_ENA (1 << 0)

#define DMA_DIS (1 << 0)

#define DMA_SUSP (1 << 8)

#define DMA_KEEPON (1 << 24)

#define DMA_BTC (1 << 0)

#define DMA_CBTC (1 << 8)

#define DMA_ERR (1 << 16)

#ifdef AT91C_HDMA_SRC_DSCR

#define AT91C_SRC_DSCR AT91C_HDMA_SRC_DSCR

#define AT91C_DST_DSCR AT91C_HDMA_DST_DSCR

#define AT91C_SRC_INCR AT91C_HDMA_SRC_ADDRESS_MODE

#define AT91C_DST_INCR AT91C_HDMA_DST_ADDRESS_MODE

#define AT91C_SRC_PER AT91C_HDMA_SRC_PER

#define AT91C_DST_PER AT91C_HDMA_DST_PER

#if defined(AT91C_HDMA_SRC_REP)

#define AT91C_SRC_REP AT91C_HDMA_SRC_REP

#endif

#if defined(AT91C_HDMA_DST_REP)

#define AT91C_DST_REP AT91C_HDMA_DST_REP

#endif

#if defined(AT91C_HDMA_SRC_PIP)

#define AT91C_SRC_PIP AT91C_HDMA_SRC_PIP

#endif

#if defined(AT91C_HDMA_DST_PIP)

#define AT91C_DST_PIP AT91C_HDMA_DST_PIP

#endif

#define AT91C_FC AT91C_HDMA_FC

#define AT91C_BTC (0xFF << 0)

#define AT91C_CBTC (0xFF << 8)

#define AT91C_ERR (0xFF << 16)

#endif

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

// Экспортируемые функции

//------------------------------------------------------------------------------void DMA_Config(unsigned int flag);void DMA_Enable(void);void DMA_Disable(void);void DMA_EnableChannel(unsigned int channel);void DMA_EnableChannels(unsigned int bmChannels);void DMA_DisableChannel(unsigned int channel);void DMA_DisableChannels(unsigned int bmChannels);void DMA_KeeponChannel(unsigned int channel);void DMA_ClearAutoMode(unsigned int channel);unsigned int DMA_GetChannelStatus(void);unsigned int DMA_GetStatus(void);unsigned int DMA_GetInterruptMask(void);unsigned int DMA_GetMaskedStatus(void);void DMA_EnableIt (unsigned int flag);void DMA_DisableIt (unsigned int flag);void DMA_SetSourceAddr(unsigned char channel, unsigned int address);void DMA_SetDestinationAddr(unsigned char channel, unsigned int address);void DMA_SetDescriptorAddr(unsigned char channel, unsigned int address);void DMA_SetSourceBufferSize(unsigned char channel,int size,char sourceWidth,char desDMAdth,char done);void DMA_SetSourceBufferMode(unsigned char channel,char transferMode,char addressingType);void DMA_SetDestBufferMode(unsigned char channel,char transferMode,char addressingType);void DMA_SetConfiguration(unsigned char channel, unsigned int value);

#if defined(AT91C_SRC_PIP)void DMA_SPIPconfiguration(unsigned char channel,int pipHole, unsigned int pipBoundary);

#endif

#if defined(AT91C_DST_PIP)void DMA_DPIPconfiguration(unsigned char channel,int pipHole, unsigned int pipBoundary);

#endifvoid DMA_SetFlowControl(unsigned char channel,int flow);

#endif //#ifndef DMA_H

#ifndef RTT_H

#define RTT_H

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

// Определения

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

#ifndef AT91C_BASE_RTTC

#define AT91C_BASE_RTTC AT91C_BASE_RTTC0

#endif

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

// Экспортируемые функции

//------------------------------------------------------------------------------void RTT_SetPrescaler(AT91S_RTTC *rtt, unsigned short prescaler);unsigned int RTT_GetTime(AT91S_RTTC *rtt);void RTT_EnableIT(AT91S_RTTC *rtt, unsigned int sources);unsigned int RTT_GetStatus(AT91S_RTTC *rtt);void RTT_SetAlarm(AT91S_RTTC *pRtt, unsigned int time);

#endif //#ifndef RTT_H

#ifndef BMP_H

#define BMP_H

#define BMP_TYPE 0x4D42

/// headerSize must be set to 40

#define BITMAPINFOHEADER 40

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

// Экспорт типов

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

#ifdef __ICCARM__ // IAR

#pragma pack(1) // IAR

#define __attribute__(...) // IAR

#endif // IAR

// BMP (Windows) Header FormatBMPHeader {short type;

/// размер графического файла в байтах.

unsigned int fileSize;short reserved1; short reserved2;

/// смещение начала данных изображения в байтах

unsigned int offset;

/// size of BITMAPINFOHEADER structure, must be 40int headerSize;

/// ширина файла в пикселяхint width;

/// высота файла в пикселяхint height;short planes;

/// количество бтов на пиксель (1, 4, 8, 16, 24, 32)

unsigned short bits;

/// Тип сжатия (0=none, 1=RLE-8, 2=RLE-4)int compression;

/// размер изображения в байтахint imageSize;

/// горизонтальное разрешение в пикселях на метр

unsigned int xresolution;

/// вертикальное разрешение в пикселях на метр

unsigned int yresolution;

/// количество цветов в изображении или ноль

unsigned int ncolours;

/// количество важных цветов или ноль

unsigned int importantcolours;

} __attribute__ ((packed)); // GCC

#ifdef __ICCARM__ // IAR

#pragma pack() // IAR

#endif // IAR

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

// Экспортируемые функцииunsigned char BMP_IsValid(void *file);unsigned int BMP_GetFileSize(void *file);unsigned char BMP_Decode(*file,char *buffer,int width,int height,char bpp);void WriteBMPheader(unsigned int* pAddressHeader,int bmpHSize,int bmpVSize,char bmpRgb,char nbByte_Pixels);void BMP_displayHeader(unsigned int* pAddressHeader);void RGB565toBGR555(char *fileSource,char *fileDestination,int width,int height,char bpp);

#endif //#ifndef BMP_H