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

📄 hd7279.h

📁 键盘、数码管显示专用芯片HD7279源程序
💻 H
字号:
#ifndef _HD7279_H
#define _HD7279_H

#include <iom128v.h>
#include <macros.h>
/*******************PINS DEFINE****************************/
/*
#define WR7279 PORTC												   
#define RD7279 PINC
#define DR7279 DDRC

#define cs7279 BIT(4)	//cs7279定义为
#define clk7279 BIT(5) 	//clk7279定义为
#define dat7279 BIT(6)	//dat7279定义为
#define key7279 BIT(7)	//key7279定义为
*/
#define WR7279 PORTE												   
#define RD7279 PINE
#define DR7279 DDRE

#define cs7279 BIT(7)	//cs7279定义为
#define clk7279 BIT(6) 	//clk7279定义为
#define dat7279 BIT(5)	//dat7279定义为
#define key7279 BIT(4)	//key7279定义为

/********************HD7279 INSTRUCTIOINS******************/
#define CMD_RESET 0xa4		//复位(清除)指令
#define CMD_TEST 0xbf		//测试指令
#define DECODE0 0x80		//方式0译码
#define DECODE1 0xc8		//方式1译码
#define CMD_READ 0x15		//读取键盘数据指令
#define UNDECODE 0x90		//不带小数点显示
#define RTL_CYCLE 0xa3		//循环左移指令
#define RTR_CYCLE 0xa2		//循环右移指令
#define RTL_UNCYL 0xa1		//左移指令
#define RTR_UNCYL 0xa0		//右移指令
#define ACTCTL 0x98		//消隐控制
#define SEGON 0xe0		//段点亮指令	
#define SEGOFF 0xc0		//段关闭指令
#define BLINKCTL 0x88		//闪烁控制


/*****************FUNCTION DECLARATION*************************/
//长时延函数
extern void long_delay(void);	
//短时延函数					
extern void short_delay(void);					
//10ms时延函数
extern void delay10ms(unsigned int);	
/*****************************************************
Function name:HD7279初始化函数	
功  能:初始化HD7279(管脚配置、HD7279复位)
输  入:无
返  回:无
备  注:使用HD7279之前调用此函数,并配置管脚的宏定义
******************************************************/	
extern void init_7279(void);	  	 

/****************** **********************
Function name:HD7279写入函数	
功  能:对HD7279写数据
输  入:cmd为指令数据;	dta为数据数据
返  回:无
备  注:HD7279的控制函数
******************************************/
extern void write7279(unsigned char cmd,unsigned char dta);	//写入到HD7279

/****************** **********************
Function name:HD7279读取函数	
功  能:对HD7279读取原始键值
输  入:无
返  回:键盘原始键值
备  注:HD7279的控制函数
******************************************/
extern unsigned char read7279(void);



/****************** **********************
Function name:HD7279键码判断函数	
功  能:根据HD7279返回的键码传化为输出值
输  入:无
返  回:无
备  注:
******************************************/
void switch_number(void);



/*******************************************内部函数申明***********************************************/
//长时延函数
extern void long_delay(void);	
//短时延函数					
extern void short_delay(void);					
//10ms时延函数
extern void delay10ms(unsigned int);			
//发送一个字节

/****************** **********************
Function name:HD7279字节发送函数	
功  能:HD7279发送一个字节
输  入:无
返  回:无
备  注:HD7279硬件函数
******************************************/
extern void send_byte(unsigned char);	

/****************** **********************
Function name:HD7279字节接收函数	
功  能:从HD7279接收一个字节
输  入:无
返  回:一个字节
备  注:HD7279硬件函数
******************************************/
extern unsigned char receive_byte(void);			

/****************** **********************
Function name:HD7279按键等待接收函数	
功  能:当完成一次按键,返回键值
输  入:无
返  回:键盘键值
备  注:HD7279的控制函数
******************************************/
extern unsigned char get_key7279(void);
/****************** **********************
Function name:检测HD7279所得键值是否是参数提供的键值
功  能:对HD7279读取原始键值
输  入:无
返  回:键盘原始键值
备  注:HD7279的控制函数
******************************************/
void test_button(unsigned char button);
/******************************************外部调用函数*********************************************/
signed long get_data ( signed char dig_start,signed char dig_end );
void dis_data ( unsigned char dig_start,unsigned char dig_end,signed long num);

#endif

⌨️ 快捷键说明

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