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

📄 host.h

📁 这里有很多我自己做的凌阳单片机源程序
💻 H
字号:
#ifndef	__HOST_H__
#define	__HOST_H__
//	write your header here
extern void init_control(void);
extern void control_con(unsigned int left,unsigned int right);
extern void control1_con(unsigned int left,unsigned int right);
extern void control1(unsigned int left,unsigned int right);
extern void control2(unsigned int left,unsigned int right);
extern void control(unsigned int left,unsigned int right);
extern void LCD501_Power(unsigned int ModeCode);
extern void LCD501_SetContrast(unsigned int Contrast);
extern unsigned int LCD501_GetContrast(void);
extern void LCD501_ScrollUp(unsigned int Rows);
extern unsigned int LCD501_GetScroll(void);
extern void LCD501_ReverseColor(void);
extern void LCD501_Bitmap(int x,int y,unsigned int *word);
extern void Tx_hanshu(unsigned int);//发送函数
extern unsigned int Rx_hanshu(void);//接收函数
extern void systemp_init(void);//系统初始化函数
extern void init_keyIO(void);
extern unsigned int key_scan_delay(void);
extern unsigned int key_scan(void);
extern unsigned int get_keyvalue(void);
extern void delay(void);
extern void delay1(void);
extern  void input_hanshu(void);
extern void looking_hanshu(void);
extern unsigned int read_flash(unsigned int *);
extern void page_erase(unsigned int *);
extern void write_flash(unsigned int d,unsigned int *);
extern void SPLC501_DataWrite(unsigned int Data);
extern unsigned char SPLC501_DataRead(void);
extern void SPLC501_RegWrite(unsigned char Command);
extern void Write_Dot_LCD(int x,int y,unsigned int Color);
extern unsigned int Get_Dot_LCD(int x,int y);
extern void Clear_Dot_LCD(int x,int y);
extern void Set_Dot_Addr_LCD(int x,int y);
extern void LCD_Fill(unsigned int a);//????????????????????????????????????
extern void LCD_Fill_s(unsigned int Number,unsigned int Color);
extern void SPLC501_DataWrite(unsigned int Data);
extern void SPLC501_RegWrite(unsigned char Command);
extern unsigned char SPLC501_DataRead(void);
extern void SPLC501_PortInit(void);
extern void LCD_InIt(void);	//在LCD_Driver_User.c中定义的函数,如有必要该函数还会包含端口初始化、复位等操作

//画直线函数,s_x、s_y为起始点,e_x、e_y为结束点
extern void Line(int s_x,int s_y,int e_x,int e_y);
//绘图模式、当前绘图颜色设置
extern void SetPaintMode(int Mode,unsigned int Color);
//标准字符设置,包括两型号ASCII码的大小尺寸,以及字体颜色的设置
extern void FontSet(int Font_NUM,unsigned int Color);
//于x、y的坐标上写入一个标准字符
extern void PutChar(int x,int y,unsigned int a);
//于x、y的坐标为起始写入一串标准字符串
extern void PutString(int x,int y,char *p);
//于x、y的坐标为中心,绘制一个圆边或实心圆
extern void PutPixel(int x,int y);
extern void Circle(int x,int y,int r,int mode);
//绘制一个以left、top和right、bottom为两个对角的矩形框或者实心矩形
extern void Rectangle(unsigned left, unsigned top, unsigned right, unsigned bottom, unsigned Mode);
//清屏函数,执行全屏幕清除或填充前景色
void ClrScreen(unsigned int Mode);
//以下函数以及变量的声明一般建议用户不要调用,仅供高级用户在自行编写特殊显示效果以及特性应用程序时使用
//
//extern unsigned char code Asii16[];		//8X16的ASII字符库
//extern unsigned char code GB32[];		//自定义的32X29汉字库
//extern unsigned char code GB48[];		//自定义的48X55汉字库

extern int X_Witch;					//字符写入时的宽度
extern int Y_Witch;					//字符写入时的高度
extern int Font_Wrod;				//字体的大
extern unsigned char *Char_TAB;		//字库指针
extern int Plot_Mode;				//绘图模式
extern unsigned int BMP_Color;
extern unsigned int Char_Color;

//extern void Pos_Switch(unsigned int * x,unsigned int * y);
extern void Writ_Dot(int x,int y,unsigned int Color);
//extern void Line_f(int s_x,int s_y,int e_x);
//extern unsigned int Get_Dot(int x,int y);
//extern void Clear_Dot(int x,int y);
extern void Set_Dot_Addr(int x,int y);
#define LCD_X_MAX			128-1			//屏幕的X轴的物理宽度
#define LCD_Y_MAX			64-1			//屏幕的Y轴的物理宽度
			
#define LCD_XY_Switch		0				//显示时X轴和Y由交换
#define LCD_X_Rev			0				//显示时X轴反转
#define LCD_Y_Rev			0				//显示时Y轴反转

#if LCD_XY_Switch == 0
	#define Dis_X_MAX		LCD_X_MAX
	#define Dis_Y_MAX		LCD_Y_MAX	
#endif

#if LCD_XY_Switch == 1
	#define Dis_X_MAX		LCD_Y_MAX
	#define Dis_Y_MAX		LCD_X_MAX	
#endif

#define LCD_INITIAL_COLOR	0x0000			//定义LCD屏初始化时的背景色

//以下定义为针对于SPLC501的功能指令进行定义的,局部可修改~
//LCD供电电平选择
#define		M_LCD_VDD_SET	M_LCD_SETR_5		//3.3V供电时选此二项
#define		M_LCD_VDD		M_LCD_BIAS_9		//....
//#define		M_LCD_VDD_SET	M_LCD_SETR_4	//5.0V供电时选此二项
//#define		M_LCD_VDD		M_LCD_BIAS_9	//...
//LCD指令
//LCD开关命令
#define		M_LCD_ON		0x00af
#define		M_LCD_OFF		0x00ae
//设置上电控制模式
#define		M_LCD_POWER_BC	0x002c
#define		M_LCD_POWER_VR	0x002a
#define		M_LCD_POWER_VC	0x0029
#define		M_LCD_POWER_ALL	0x002f
//V5内部电压调节电阻设置……
#define		M_LCD_SETR_0	0x0020
#define		M_LCD_SETR_1	0x0021
#define		M_LCD_SETR_2	0x0022
#define		M_LCD_SETR_3	0x0023
#define		M_LCD_SETR_4	0x0024
#define		M_LCD_SETR_5	0x0025
#define		M_LCD_SETR_6	0x0026
#define		M_LCD_SETR_7	0x0027
//...end
#define		M_LCD_ELE_VOL	0x0081		//电量设置模式(显示亮度)
//偏压设置
#define		M_LCD_BIAS_9	0x00a2		//V5时选此选项设置
#define		M_LCD_BIAS_7	0x00a1		//V3时选此选项设置
//Com 扫描方式设置命令
#define		M_LCD_COM_NOR	0x00c0		//正常方式
#define		M_LCD_COM_REV	0x00c8		//反相
//Segment方向选择
#define		M_LCD_SEG_NOR	0x00a0		//正常
#define		M_LCD_SEG_REV	0x00a1		//反向
//全屏点亮/变暗指令
#define		M_LCD_ALL_LIGNT	0x00a5		//LCD ALL paint ON
#define		M_LCD_ALL_LOW	0x00a4		//Normal Display mode
//正相反相显示控制指令,RAM中数据不变
#define		M_LCD_ALL_NOR	0x00a6		//正相
#define		M_LCD_ALL_REV	0x00a7		//反相
//静态指示器控制指令
#define		M_LCD_STATIC_ON	0x00ad		//ON
#define		M_LCD_STATIC_OFF 0x00ac		//OFF
//设置显示起始行对应RAM行号
#define		M_LCD_BEGIN_LINE 0x0040		//基数,后面可加的尾数可为0~63
//设置当前页基数
#define		M_LCD_COL_PAGE	0x00b0		//基数指令,后可加尾数0~8
//设置当前列基数
#define		M_LCD_COL_LINE_LOW	0x0004		//基数指令,低四位有效
#define		M_LCD_COL_LINE_HIG	0x0010		//基数指令,低四位有效


#define		P_IOA_Data				(volatile unsigned int *)0x7000
#define		P_IOA_Buffer			(volatile unsigned int *)0x7001
#define		P_IOA_Dir				(volatile unsigned int *)0x7002
#define		P_IOA_Attrib			(volatile unsigned int *)0x7003
#define	    P_IOA_Latch				(volatile unsigned int *)0x7004
#define		P_IOB_Data				(volatile unsigned int *)0x7005
#define		P_IOB_Buffer			(volatile unsigned int *)0x7006
#define		P_IOB_Dir				(volatile unsigned int *)0x7007
#define		P_IOB_Attrib			(volatile unsigned int *)0x7008
	
// Define for the port use by LCD Driver
#define LCD_EP				0x0080
#define LCD_RW				0x0040
#define LCD_AO				0x0020
#define LCD_CS				0x0010

#define LCD_CMD_Dir			P_IOB_Dir
#define LCD_CMD_Attrib		P_IOB_Attrib
#define LCD_CMD_Buffer		P_IOB_Buffer

#define LCD_Data_BUS_Out	P_IOA_Buffer
#define LCD_Data_BUS_In		P_IOA_Data
#define LCD_Data_BUS_Dir	P_IOA_Dir
#define LCD_Data_BUS_Attrib	P_IOA_Attrib

#define LCD_Data_BUS_Byte	0//1

#define startA 0x0031//计数频率96k
#define stopA 0x0036//0&0停止计数
#define start_dataA 0x0000//定时器的定时初值
#define clock_A 0x0013//系统频率设置,//24.576--24.576/8
#define input 13
#define look 14
#define sure_key 15
#define Dis_Zero  0
#endif

⌨️ 快捷键说明

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