728x90
반응형
main.c
#include "head.h"
#include "sub1_head.h"
static TS_DrvTypeDef *TsDrv;
void main(void)
{
if (stmpe811_ts_drv.ReadID(0x0811) == 0x0811) {
TsDrv = &stmpe811_ts_drv;
}
TsDrv->Init(0x0811);
}
sub1.c
#include "sub1_head.h"
TS_DrvTypeDef stmpe811_ts_drv =
{
stmpe811_Init,
stmpe811_ReadID,
};
void stmpe811_Init(int DeviceAddr) {
printf("Device_addr=0x%x\r\n", DeviceAddr);
}
int stmpe811_ReadID(int DeviceAddr) {
printf("Read_ID=0x%x\r\n", DeviceAddr);
return (DeviceAddr);
}
head.h
#include <stdio.h>
ts.h
#include <stdio.h>
typedef struct
{
void(*Init)(int);
int(*ReadID)(int);
}TS_DrvTypeDef;
sub1_head.h
#include "ts.h"
void stmpe811_Init(int DeviceAddr);
int stmpe811_ReadID(int DeviceAddr);
extern TS_DrvTypeDef stmpe811_ts_drv;
결과 화면
728x90
반응형
'공부 > C언어' 카테고리의 다른 글
27. 구조체 와 함수 (0) | 2020.02.04 |
---|---|
26. static 구조체 (0) | 2019.07.26 |
24. static void 함수 (0) | 2019.07.11 |
23. 포인트 문자열 (0) | 2019.07.11 |
22. 구조체 배열 변수 선언 (0) | 2019.07.10 |