📄 videoin.h
字号:
/*
* videoin.h
*
*/
#ifndef __VIDEOIN_H
#define __VIDEOIN_H
#include <io.h>
#include "system.h"
typedef struct {
int xClipS;
int xClipE;
int yClipS;
int yClipE;
int clipWidth;
int clipHeight;
int xScale;
int yScale;
int xFactor;
int yFactor;
int scaledWidth;
int scaledHeight;
} VIDEOIN;
void videoinIsr (void* context, alt_u32 id);
void videoInDisable(void);
void videoInEnable(void);
void videoInClip(int xClipStart, int xClipEnd, int yClipStart, int yClipEnd);
int videoInScale(int xScale, int yScale);
int videoInScale2(int width);
// Overall status and control
#define IORD_VIDEOIN_SR IORD(VIDEOIN_0_BASE, 0)
#define IOWR_VIDEOIN_CR(data) IOWR(VIDEOIN_0_BASE, 0, data)
#define IORD_VIDEOIN_CAMXLEN IORD(VIDEOIN_0_BASE, (0x10>>2))
#define IOWR_VIDEOIN_CAMXLEN(data) IOWR(VIDEOIN_0_BASE, (0x10>>2), data)
// X and Y clipping
#define IORD_VIDEOIN_XCLIPS IORD(VIDEOIN_0_BASE, (0x20>>2))
#define IORD_VIDEOIN_XCLIPE IORD(VIDEOIN_0_BASE, (0x24>>2))
#define IORD_VIDEOIN_YCLIPS IORD(VIDEOIN_0_BASE, (0x28>>2))
#define IORD_VIDEOIN_YCLIPE IORD(VIDEOIN_0_BASE, (0x2c>>2))
#define IOWR_VIDEOIN_XCLIPS(data) IOWR(VIDEOIN_0_BASE, (0x20>>2), data)
#define IOWR_VIDEOIN_XCLIPE(data) IOWR(VIDEOIN_0_BASE, (0x24>>2), data)
#define IOWR_VIDEOIN_YCLIPS(data) IOWR(VIDEOIN_0_BASE, (0x28>>2), data)
#define IOWR_VIDEOIN_YCLIPE(data) IOWR(VIDEOIN_0_BASE, (0x2c>>2), data)
// X and Y scaling
#define IORD_VIDEOIN_XSCALE IORD(VIDEOIN_0_BASE, (0x30>>2))
#define IORD_VIDEOIN_XLEN IORD(VIDEOIN_0_BASE, (0x34>>2))
#define IORD_VIDEOIN_YSCALE IORD(VIDEOIN_0_BASE, (0x38>>2))
#define IORD_VIDEOIN_YLEN IORD(VIDEOIN_0_BASE, (0x3c>>2))
#define IOWR_VIDEOIN_XSCALE(data) IOWR(VIDEOIN_0_BASE, (0x30>>2), data)
#define IOWR_VIDEOIN_XLEN(data) IOWR(VIDEOIN_0_BASE, (0x34>>2), data)
#define IOWR_VIDEOIN_YSCALE(data) IOWR(VIDEOIN_0_BASE, (0x38>>2), data)
#define IOWR_VIDEOIN_YLEN(data) IOWR(VIDEOIN_0_BASE, (0x3c>>2), data)
// Avalon master status and control
#define IORD_VIDEOIN_MSTAT IORD(VIDEOIN_0_BASE, (0x40>>2))
#define IOWR_VIDEOIN_MCONTROL(data) IOWR(VIDEOIN_0_BASE, (0x40>>2), data)
#define IORD_VIDEOIN_MINTEN IORD(VIDEOIN_0_BASE, (0x44>>2))
#define IOWR_VIDEOIN_MINTEN(data) IOWR(VIDEOIN_0_BASE, (0x44>>2), data)
#define IORD_VIDEOIN_MISR IORD(VIDEOIN_0_BASE, (0x48>>2))
#define IOWR_VIDEOIN_MICR(data) IOWR(VIDEOIN_0_BASE, (0x48>>2), data)
// Frame buffer start address
#define IORD_VIDEOIN_MFBSTART IORD(VIDEOIN_0_BASE, (0x50>>2))
#define IOWR_VIDEOIN_MFBSTART(data) IOWR(VIDEOIN_0_BASE, (0x50>>2), data)
#endif /* __VIDEOIN_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -