📄 hio.h
字号:
#ifndef __HIO_H__
#define __HIO_H__
#ifdef __cplusplus extern "C"{#endif
#define SUPPORT_I2Ctypedef struct tagTRANSFER_CONFIG
{
BYTE bAddr; // the device address for data transfer
BYTE bCount; // Bytes count for data transfer
BYTE *pbBuffer; // Buffer pointer for data transfer
}TRANSFER_CONFIG, *PTRANSFER_CONFIG;
#ifdef SUPPORT_I2C// LLY2.01, define I2C R/W prototype configure structuretypedef struct tagI2C_CONFIG { BYTE bIOGroup; BYTE bSDAT_Pin; BYTE bSCLK_Pin;} I2C_CONFIG, * PI2C_CONFIG;
BOOL HAL_I2C_Read (BYTE DevSel, PI2C_CONFIG pConfig, PTRANSFER_CONFIG pTransferConfig);
BOOL HAL_I2C_Write (BYTE DevSel, PI2C_CONFIG pConfig, PTRANSFER_CONFIG pTransferConfig );
#endif // #ifdef SUPPORT_I2C
//# [21]GPIO relative function
BYTE HAL_ReadGPIO(BYTE bGroup, DWORD dwPort); //
void HAL_WriteGPIO(BYTE bGroup, DWORD dwPort, BYTE bValue); //
BYTE HAL_ReadGPO_Value(BYTE bGroup, DWORD dwPort); // LLY2.51, report desired GPO value.
void HAL_Init_ExpGPIO(void); // LLY2.13, add for expand GPIO initial
BOOL HAL_I2CSrc_Ctrl(BYTE bAction); // LLY2.18
DWORD HAL_Read_ExpGPI(void); // LLY2.20
// LLY2.01, define the GPIO group for HAL_ReadGPIO()/ HAL_WriteGPIO()
// LLY2.13, remove the GPIO group define to "winav.h"
// Otherwise, compiler will fail for pio.h
/*
#define GPIO_A 0#define GPIO_B 1
#define GPIO_C 2#define GPIO_D 3#define GPIO_E 4#define GPIO_F 5
#define GPIO_EXP 6 // LLY2.13, add for expand GPIO
*/
void HAL_CopyDRAM(DWORD dwSrc, DWORD dwDst, DWORD dwLen);
void HAL_DumpUserData( BYTE* pbBuf, DWORD dwLen, DWORD dwPosition );
// SYuan2.77 begin,
// Modify following code to fix DSU/ UART new design
// expand BYTE to DWORD unit
//#define HAL_UART1 (0L)
//#define HAL_UART2 (1L)
// LLY2.10, define UART Baud Rate#define BAUDRATE_115200 115200
VOID HAL_UART_BaudRateSet(DWORD dwSysCLK, DWORD dwBaudRate, DWORD dwPort);
VOID HAL_UART_Disable(DWORD dwPort);
VOID HAL_UART_Enable(DWORD dwPort, BYTE bPath);
BYTE HAL_UART_ErrorStatus(DWORD dwPort);
BOOL HAL_UART_ReceiveChar(PBYTE pData, DWORD dwPort);
BOOL HAL_UART_SendChar(BYTE bData, DWORD dwPort);
// LLY2.15, new API for DSU pin control
VOID HAL_DSU_Pin_Enable(DWORD dwPort, BYTE bPath);
VOID HAL_DSU_Pin_Disable(DWORD dwPort);
VOID HAL_DSU_BaudRateSet(DWORD dwSysCLK, DWORD dwBaudRate, DWORD dwPort);
//- Expand BYTE to DWORD unit
//- Bit[31:24]: used to specify the DSU group, ex DSU1/ DSU2/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -