⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 一个TIDM642DSP处理器测试程序
💻 C
字号:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

// nWidth & nPitch must be divided 16
// nWidth >= 16
// c
void osd_c(unsigned char* pIn0, unsigned char* pMask, int longth);
// asm
void osd(unsigned char* pIn0, unsigned char* pMask, int longth);
void MyFun(void); 
#pragma DATA_ALIGN(g_Image0, 8)
#pragma DATA_ALIGN(g_Image1, 8)
#pragma DATA_ALIGN(g_Image2, 8)

#define LONGTH 6400

unsigned char g_Image0[LONGTH];
unsigned char g_Image1[LONGTH];
unsigned char g_Image2[LONGTH];

void main()
{
	int i;
	unsigned char bTmp;
	int nTmp;
	int nErr;
	//unsigned char test[64]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,2,3,6,6,6,6,6,6,6,6,6,6,4,6,6,0,0,0,0,0,0,0,0,0,18,19,20,21,22,23,0,0,0,0,90,1,1,7,8,9,0,1,2};
	
	//MyFun();
	srand((unsigned int) time(NULL));
	for( i = 0; i < LONGTH; i++)
	{
		bTmp = rand() % 128; 
		g_Image0[i] = bTmp;
		g_Image1[i] = bTmp;
		g_Image2[i] = rand() % 128; 
		printf("g_Image0[%d]is  %d ",i,g_Image0[i]);
		printf("g_Image1[%d]is  %d ",i,g_Image1[i]);
		printf("g_Image2[%d]is  %d\n",i,g_Image2[i]);
	}
	
	osd_c(g_Image0, g_Image2, LONGTH);
	osd(g_Image1, g_Image2, LONGTH);

	// test output
	nErr = 0;
	for( i = 0; i < LONGTH; i++ )
	{
		printf("g_Image0[%d] is %d ",i,g_Image0[i]);
		printf("g_Image1[%d] is %d\n",i,g_Image1[i]);
		nTmp = g_Image0[i] - g_Image1[i];
		if (nTmp != 0)
		{
			nErr = 1;
			printf("Error !!!, i = %d, Data0 = %d, Data1 = %d \n", i, g_Image0[i], g_Image1[i]);
			break;
		}
	}
	
	if (nErr == 0)
		printf(" Good Job, No Error !!!\n");
		
}

void osd_c(unsigned char* pIn0, unsigned char* pMask, int longth)
{
	int i;
	//unsigned char* pSrc, *pDst;
	//int nTmp;
	
//	pSrc = pIn0;
	//pDst = pIn0;
     for( i = 0; i < longth; i++ )
	{
	//	nTmp = ((*pMask)==0) ? (*pSrc++): (*pMask++);
		//*pDst++ = nTmp;
		if(*pMask!=0)
		{
			*pIn0=*pMask;
		}
		pMask++;
		pIn0++;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -