| 1 |
|
| 2 |
/* --------------------------------------------- */ |
| 3 |
/* H8-3069F Serial communicate function */ |
| 4 |
/* */ |
| 5 |
/* CPU : Renesus H8/3069F 25MHz */ |
| 6 |
/* Memory : ROM 512KB, RAM 16KB E-RAM 2MB */ |
| 7 |
/* (c) KAZ.Imamura */ |
| 8 |
/* --------------------------------------------- */ |
| 9 |
|
| 10 |
#include "common.h" |
| 11 |
#include "ui.h" |
| 12 |
|
| 13 |
|
| 14 |
// ----------------------------------------------- |
| 15 |
// Speed setting |
| 16 |
// ----------------------------------------------- |
| 17 |
enum comm_speed { |
| 18 |
COMM_SPEED_UNKNOWN, |
| 19 |
COMM_SPEED_1200BPS, |
| 20 |
COMM_SPEED_2400BPS, |
| 21 |
COMM_SPEED_4800BPS, |
| 22 |
COMM_SPEED_9600BPS, |
| 23 |
COMM_SPEED_14400BPS, |
| 24 |
COMM_SPEED_19200BPS, |
| 25 |
}; |
| 26 |
|
| 27 |
typedef struct speed_setting { |
| 28 |
unsigned char index; |
| 29 |
unsigned char cks_setting; |
| 30 |
unsigned char brr_setting; |
| 31 |
char Name[16]; |
| 32 |
} SPEED_SETTING, *P_SPEED_SETTING; |
| 33 |
|
| 34 |
// ----------------------------------------------- |
| 35 |
// Character code setting |
| 36 |
// ----------------------------------------------- |
| 37 |
enum comm_code { |
| 38 |
COMM_CODE_UNKNOWN, |
| 39 |
COMM_CODE_ISO, |
| 40 |
COMM_CODE_EIA, |
| 41 |
COMM_CODE_ASCII, |
| 42 |
}; |
| 43 |
|
| 44 |
typedef struct code_setting { |
| 45 |
unsigned char index; |
| 46 |
char Name[16]; |
| 47 |
} CODE_SETTING, *P_CODE_SETTING; |
| 48 |
|
| 49 |
// ----------------------------------------------- |
| 50 |
// Communication setting |
| 51 |
// ----------------------------------------------- |
| 52 |
enum comm_param { |
| 53 |
COMM_PARAM_UNKNOWN, |
| 54 |
COMM_PARAM_8BIT_NONPARITY_STOP1, |
| 55 |
COMM_PARAM_8BIT_NONPARITY_STOP2, |
| 56 |
COMM_PARAM_8BIT_ODDPARITY_STOP1, |
| 57 |
COMM_PARAM_8BIT_ODDPARITY_STOP2, |
| 58 |
COMM_PARAM_8BIT_EVNPARITY_STOP1, |
| 59 |
COMM_PARAM_8BIT_EVNPARITY_STOP2, |
| 60 |
COMM_PARAM_7BIT_NONPARITY_STOP1, |
| 61 |
COMM_PARAM_7BIT_NONPARITY_STOP2, |
| 62 |
COMM_PARAM_7BIT_ODDPARITY_STOP1, |
| 63 |
COMM_PARAM_7BIT_ODDPARITY_STOP2, |
| 64 |
COMM_PARAM_7BIT_EVNPARITY_STOP1, |
| 65 |
COMM_PARAM_7BIT_EVNPARITY_STOP2, |
| 66 |
}; |
| 67 |
typedef struct param_setting { |
| 68 |
unsigned char index; |
| 69 |
unsigned char smr_setting; |
| 70 |
char Name[16]; |
| 71 |
} PARAM_SETTING, *P_PARAM_SETTING; |
| 72 |
|
| 73 |
|
| 74 |
extern void serial_1ms_handler(void); |
| 75 |
extern int serial_initialize(void); |
| 76 |
extern void serial_process(void); |
| 77 |
extern void ui_serial_progress( void ); |
| 78 |
extern unsigned char serial_status(REQUEST_TO_CLASS req); |
| 79 |
|
| 80 |
extern void int_ERI0(); |
| 81 |
extern void int_RXI0(); |
| 82 |
extern void int_TXI0(); |
| 83 |
extern void int_TEI0(); |
| 84 |
extern unsigned char TransferStartRequest( unsigned char* pBuf, unsigned long size ); |
| 85 |
extern int ui_function_serial(UI_COMMAND uicmd); |
| 86 |
|