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

📄 de2_includes.h

📁 Altera DE2开发板的LED、LCD、SEG7和按键的linux下的设备驱动程序
💻 H
字号:
#include <linux/kernel.h>#include <linux/types.h>#include <linux/init.h>#include <linux/interrupt.h>#include <linux/module.h>#include <linux/fs.h>#include <linux/ioport.h>#include <asm/uaccess.h>	/* for put_user */#include <asm/io.h>// max buffer length#define STRING_LEN 10#define STRING_LEN_ 1000000000 // for ltoa function// convert string to integerextern inline int atoi(const char *name){	int val = 0;	for (;;name++) 	{		switch (*name) 		{			case '0'...'9':				val = 10*val+(*name-'0');				break;			default:					return val;		}	}}// convert string to long integerextern inline long int atol(const char *name){	long int val = 0;	for (;;name++) 	{		switch (*name) 		{			case '0'...'9':				val = 10*val+(*name-'0');				break;					default:					return val;		}	}}// convert hexadecimal string to decimal long integerextern inline long int atolx(const char *name){	long int val = 0;	for (;;name++) 	{		switch (*name) 		{			case '0'...'9':				val = 16*val+(*name-'0');				break;			case 'A': 			case 'a':				val = 16*val+10;				break;			case 'B':			case 'b':				val = 16*val+11;				break;			case 'C':			case 'c':				val = 16*val+12;				break;			case 'D':			case 'd':				val = 16*val+13;				break;			case 'E':			case 'e':				val = 16*val+14;				break;			case 'F':			case 'f':				val = 16*val+15;				break;						default:					return val;		}	}}// convert byte to stringextern inline void itoa(char *name, unsigned char value){	int i,j=0;	for(i=10000;i>0;i/=10)	{		name[j++]='0'+value/i;		value=value-(value/i)*i;		if(name[0]=='0' && i!=1)			j=0;	}	name[j++]='\n';	name[j]=0;}// convert long int to stringextern inline void ltoa(char *name, unsigned long value){	long int i,j=0;	for(i=STRING_LEN_;i>0;i/=10)	{		name[j++]='0'+value/i;		value=value-(value/i)*i;		if(name[0]=='0' && i!=1)			j=0;	}	name[j++]='\n';	name[j]=0;}

⌨️ 快捷键说明

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