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

📄 lin_def.h

📁 51单片机众多优秀的开发源程序:ZLG7290例程*ZLG7290汇编例程*蜂鸣器音乐例程*蜂鸣器响例程*读EEPROM并显示例程*16×2LCD模块例程*128×64点阵LCD模块例程*直连KEY和
💻 H
字号:
#ifdef LIN_API_GLOBALS
#define LIN_API_EXT
#else
#define LIN_API_EXT extern 
#endif 

/*--- type definition ---*/
typedef enum {	NO_ERROR,BIT_ERROR,ID_PARITY_ERROR,CHECKSUM_ERROR,
		NO_ID_MATCH,TIMEOUT_ERROR,DATA_RECEIVED,DATA_REQUEST,
		WAKE_UP,UART_ERROR,SYNCH_BREAK_ERROR}t_error;

typedef enum {ID_DATAREQUEST,ID_DATASENT}t_message_direction;

typedef struct{
	l_u8 id;
	t_message_direction dir;
	l_u8 length;} t_id_list;

typedef struct{
	t_error error_code;
	l_u8 data_byte;} t_one_databyte_output;

typedef struct      
{	
	l_u8 identifier;
	l_u8 length;} t_header;

typedef struct      
{	
	l_u8 DATA[8];
	l_u8 checksum;} t_response;

#define l_signal_handle	    t_id_list	
#define l_flag_handle		l_u8
#define l_schedule_handle	l_u8	

/************************************************
**描述:
**l_sys_init执行LIN软件的初始化。
**返回值:
**"0":如果成功初始化。
**"非零":初始化失败。
**注意:
**用户在LIN软件中使用任何其他API函数前必须首先调用l_sys_init函数。
************************************************/
LIN_API_EXT l_bool l_sys_init(void);
/*************************************************
**其中SSS是信号的名字(例如:l_u8_rd_EngineSpeed())
**读和返回名字是sss的信号的当前值。
*************************************************/
//动态
LIN_API_EXT l_bool 	l_bool_rd(l_signal_handle sss);
LIN_API_EXT l_u8	l_u8_rd(l_signal_handle sss);
LIN_API_EXT l_u16 	l_u16_rd(l_signal_handle sss);
LIN_API_EXT void 	l_u8_ptr_rd(l_signal_handle sss,l_u8 * rd_ptr,l_u8 num);
//静态
LIN_API_EXT l_bool 	l_bool_rd_sss(l_signal_handle sss);
LIN_API_EXT l_u8	l_u8_rd_sss(l_signal_handle sss);
LIN_API_EXT l_u16 	l_u16_rd_sss(l_signal_handle sss);
/*************************************************
**其中SSS是信号的名字(例如:l_u8_wr_EngineSpeed(v))
**将名字是sss的信号的当前值设置成v。
*************************************************/
//动态
LIN_API_EXT void 	l_bool_wr(l_signal_handle sss,l_bool v);
LIN_API_EXT void    l_u8_wr(l_signal_handle sss,l_u8 v);
LIN_API_EXT void 	l_u16_wr(l_signal_handle sss,l_u16 v);
LIN_API_EXT void    l_u8_ptr_wr(l_signal_handle sss,l_u8 *wr_ptr);
//静态
LIN_API_EXT void 	l_bool_wr_sss(l_bool v);
LIN_API_EXT void	l_u8_wr_sss(l_u8 v);
LIN_API_EXT void 	l_u16_wr_sss(l_u16 v);
/*************************************************
**其中fff是标志的名字(例如:l_flg_tet_RxEngineSpeed())
**返回值是C的布尔类型,表示由名字fff指定的标志的当前状态(即返回0,否则返回非0值)。
*************************************************/
//动态
LIN_API_EXT l_bool 	l_flg_tst(l_flag_handle fff);
//静态
LIN_API_EXT l_bool 	l_flg_tst_fff(void);
LIN_API_EXT l_bool 	l_flg_tst_5ms(void);
LIN_API_EXT l_bool 	l_flg_tst_932led(void);
/*************************************************
**其中fff是标志的名字(例如:l_flg_clr_RxEngineSpeed())
**将名字是fff的标志的当前值置零。
*************************************************/
//动态
LIN_API_EXT void 	l_flg_clr(l_flag_handle fff);
//静态
LIN_API_EXT void 	l_flg_clr_fff(void);
LIN_API_EXT void	l_flg_clr_5ms(void);
LIN_API_EXT void   	l_flg_clr_932led(void);


LIN_API_EXT void l_ifc_init_932led(void);

LIN_API_EXT l_bool l_ifc_connect_932led(void);

LIN_API_EXT void l_sch_set_932led(l_schedule_handle sch,l_u8 ent);







⌨️ 快捷键说明

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