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

📄 pic.c

📁 基于642的sd卡读写程序
💻 C
字号:

#include <csl.h>
#include <csl_emifa.h>
#include <csl_i2c.h>
#include <csl_gpio.h>
#include <csl_gpiohal.h>
#include <csl_irq.h>
#include <csl_chip.h>
#include <csl_dat.h>
#include "iic.h"
#include "vportcap.h"
#include "vportdis.h"




extern unsigned char threshold;
//int numPixels = 720;//每行720个像素
//int numLines  = 576;//每帧576行(PAL)
void copy()
         {Uint16 i;
          for(i=0;i<576;i++)
			{
				/*传送Y缓冲区*/
				DAT_copy((void *)(0x80300000 + i * 720), 
			             (void *)(0x80100000 + i * 720),
			             720);
			    /*传送Cb缓冲区*/
			    DAT_copy((void *)(0x803675c0 + i * (720 >> 1)), 
			             (void *)(0x801675c0 + i * (720 >> 1)),
			             720>>1);
				/*传送Cr缓冲区*/
			    DAT_copy((void *)(0x8039b0a0 + i * (720 >> 1)), 
			             (void *)(0x8019b0a0 + i * (720 >> 1)),
			             720>>1);
			 }
			 for(i=0;i<576;i++)
			{
				/*传送Y缓冲区*/
				DAT_copy((void *)(0x80300000 + i * 720), 
			             (void *)(0x80200000 + i * 720),
			             720);
			    /*传送Cb缓冲区*/
			    DAT_copy((void *)(0x803675c0 + i * (720 >> 1)), 
			             (void *)(0x802675c0 + i * (720 >> 1)),
			             720>>1);
				/*传送Cr缓冲区*/
			    DAT_copy((void *)(0x8039b0a0 + i * (720 >> 1)), 
			             (void *)(0x8029b0a0 + i * (720 >> 1)),
			             720>>1);
			 }
			 }
           
void color(Uint32 ad)
{
  Uint8 i,j;
  if(threshold<40)			
			for(i=5;i<15;i++)
		{
					
			
				for(j=15;j<26;j++)	
				{
					*(int *)(ad + (260+i)*720 + (20+j) + 0x32a00) = 0x5a5a5a5a;
					*(int *)(ad + (260+i)*720 + (20+j) ) = 0x5a5a5a5a;
					
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0x94949494;//*(int *)(0x801675c0 + (260+i)*360 + (20+j)/2 + 0x19500)&&color12[i-5][j-15];
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 ) = 0x94949494;//*(int *)(0x801675c0 + (260+i)*360 + (20+j)/2 )&&color12[i-5][j-15];
					
			        *(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0xf5f5f5f5;//*(int *)(0x8019b0a0 + (260+i)*360 + (20+j)/2 + 0x19500)&&color15[i-5][j-15];
					*(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 ) = 0xf5f5f5f5;//*(int *)(0x8019b0a0 + (260+i)*360 + (20+j)/2 )&&color15[i-5][j-15];
					
				}				
	     }
	     if((threshold>=40)&&(threshold<60))			
			for(i=5;i<15;i++)
		{
					
			
				for(j=15;j<26;j++)	
				{
					*(int *)(ad + (260+i)*720 + (20+j) + 0x32a00) = 0x9a9a9a9a;
					*(int *)(ad + (260+i)*720 + (20+j) ) = 0x9a9a9a9a;
					
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0x10101010;//*(int *)(0x801675c0 + (260+i)*360 + (20+j)/2 + 0x19500)&&color12[i-5][j-15];
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 ) = 0x10101010;//*(int *)(0x801675c0 + (260+i)*360 + (20+j)/2 )&&color12[i-5][j-15];
					
			        *(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0x4b4b4b4b;//*(int *)(0x8019b0a0 + (260+i)*360 + (20+j)/2 + 0x19500)&&color15[i-5][j-15];
					*(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 ) = 0x4b4b4b4b;//*(int *)(0x8019b0a0 + (260+i)*360 + (20+j)/2 )&&color15[i-5][j-15];
					
				}				
	     }
	     if((threshold>=60)&&(threshold<80))
	     for(i=5;i<15;i++)
		{
					
			
				for(j=15;j<26;j++)	
				{
					*(int *)(ad + (260+i)*720 + (20+j) + 0x32a00) = 0xdfdfdfdf;
					*(int *)(ad + (260+i)*720 + (20+j) ) = 0xdfdfdfdf;
					
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0x94949494;//*(int *)(0x801675c0 + (260+i)*360 + (20+j)/2 + 0x19500)&&color12[i-5][j-15];
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 ) = 0x94949494;//*(int *)(0x801675c0 + (260+i)*360 + (20+j)/2 )&&color12[i-5][j-15];
					
			        *(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0x0;//*(int *)(0x8019b0a0 + (260+i)*360 + (20+j)/2 + 0x19500)&&color15[i-5][j-15];
					*(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 ) = 0x0;//*(int *)(0x8019b0a0 + (260+i)*360 + (20+j)/2 )&&color15[i-5][j-15];
					
				}				
	     }
	     if((threshold>=80)&&(threshold<100))
	     for(i=5;i<15;i++)
		{
					
			
				for(j=15;j<26;j++)	
				{
					*(int *)(ad + (260+i)*720 + (20+j) + 0x32a00) = 0xdfdfdfdf;
					*(int *)(ad + (260+i)*720 + (20+j) ) = 0xdfdfdfdf;
					
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0;//(int *)(0x801675c0 + (260+i)*360 + (20+j)/2 + 0x19500)&&color12[i-5][j-15];
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 ) = 0;//(int *)(0x801675c0 + (260+i)*360 + (20+j)/2 )&&color12[i-5][j-15];
					
			        *(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0x94949494;//(int *)(0x8019b0a0 + (260+i)*360 + (20+j)/2 + 0x19500)&&color15[i-5][j-15];
					*(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 ) = 0x94949494;//(int *)(0x8019b0a0 + (260+i)*360 + (20+j)/2 )&&color15[i-5][j-15];
					
				}				
	     }
	     if(threshold>=100)
	     for(i=5;i<15;i++)
		{
					
			
				for(j=15;j<26;j++)	
				{
					*(int *)(ad + (260+i)*720 + (20+j) + 0x32a00) = 0x49494949;
					*(int *)(ad + (260+i)*720 + (20+j) ) = 0x49494949;
					
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0xe6e6e6e6;
					*(int *)(ad+0x675c0 + (260+i)*360 + (20+j)/2 ) = 0xe6e6e6e6;
					
			        *(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 + 0x19500) = 0xb6b6b6b6;
					*(int *)(ad+0x9b0a0 + (260+i)*360 + (20+j)/2 ) = 0xb6b6b6b6;
					
				}				
	     }
	     }

⌨️ 快捷键说明

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