/** ################################################################### | |
** THIS BEAN MODULE IS GENERATED BY THE TOOL. DO NOT MODIFY IT. | |
** Filename : COM0.H | |
** Project : RTOSDemo | |
** Processor : MC9S12DP256BCPV | |
** Beantype : AsynchroSerial | |
** Version : Bean 02.231, Driver 01.08, CPU db: 2.87.283 | |
** Compiler : Metrowerks HC12 C Compiler | |
** Date/Time : 19/06/2005, 15:07 | |
** Abstract : | |
** This bean "AsynchroSerial" implements an asynchronous serial | |
** communication. The bean supports different settings of | |
** parity, word width, stop-bit and communication speed, | |
** user can select interrupt or polling handler. | |
** Communication speed can be changed also in runtime. | |
** The bean requires one on-chip asynchronous serial channel. | |
** Settings : | |
** Serial channel : SCI0 | |
** | |
** Protocol | |
** Init baud rate : 38400baud | |
** Width : 8 bits | |
** Stop bits : 1 | |
** Parity : none | |
** Breaks : Disabled | |
** | |
** Registers | |
** Input buffer : SCI0DRL [207] | |
** Output buffer : SCI0DRL [207] | |
** Control register : SCI0CR1 [202] | |
** Mode register : SCI0CR2 [203] | |
** Baud setting reg. : SCI0BD [200] | |
** Special register : SCI0SR1 [204] | |
** | |
** Input interrupt | |
** Vector name : INT_SCI0 | |
** Priority : 1 | |
** | |
** Output interrupt | |
** Vector name : INT_SCI0 | |
** Priority : 1 | |
** | |
** Used pins : | |
** ---------------------------------------------------- | |
** Function | On package | Name | |
** ---------------------------------------------------- | |
** Input | 89 | PS0_RxD0 | |
** Output | 90 | PS1_TxD0 | |
** ---------------------------------------------------- | |
** | |
** | |
** Used baud modes : | |
** ---------------------------------------------------- | |
** No. | Mode ID | Baud rate | |
** ---------------------------------------------------- | |
** 0 | Bm_38400baud | 38400baud | |
** 1 | Bm_19200baud | 19200baud | |
** 2 | Bm_9600baud | 9600baud | |
** 3 | Bm_4800baud | 4800baud | |
** ---------------------------------------------------- | |
** Contents : | |
** SetBaudRateMode - byte COM0_SetBaudRateMode(byte Mod); | |
** | |
** (c) Copyright UNIS, spol. s r.o. 1997-2002 | |
** UNIS, spol. s r.o. | |
** Jundrovska 33 | |
** 624 00 Brno | |
** Czech Republic | |
** http : www.processorexpert.com | |
** mail : info@processorexpert.com | |
** ###################################################################*/ | |
#ifndef __COM0 | |
#define __COM0 | |
/* MODULE COM0. */ | |
#include "Cpu.h" | |
#define COM0_Bm_38400baud 0 /* Constant for switch to mode 0 */ | |
#define COM0_Bm_19200baud 1 /* Constant for switch to mode 1 */ | |
#define COM0_Bm_9600baud 2 /* Constant for switch to mode 2 */ | |
#define COM0_Bm_4800baud 3 /* Constant for switch to mode 3 */ | |
#ifndef __BWUserType_tItem | |
#define __BWUserType_tItem | |
typedef struct { /* Item of the index table for possible baudrates */ | |
word div; /* divisior */ | |
byte val; /* values of the prescalers */ | |
} tItem; | |
#endif | |
#ifndef __BWUserType_COM0_TError | |
#define __BWUserType_COM0_TError | |
typedef union { | |
byte err; | |
struct { | |
bool OverRun : 1; /* OverRun error flag */ | |
bool Framing : 1; /* Framing error flag */ | |
bool Parity : 1; /* Parity error flag */ | |
bool RxBufOvf : 1; /* Rx buffer full error flag */ | |
bool Noise : 1; /* Noise error */ | |
bool Break : 1; /* Break detect */ | |
bool Idle : 1; /* Idle characted */ | |
}errName; | |
} COM0_TError; | |
#endif | |
#ifndef __BWUserType_TDirection | |
#define __BWUserType_TDirection | |
typedef enum { /* */ | |
TXD_INPUT, | |
TXD_OUTPUT | |
} TDirection; | |
#endif | |
#ifndef __BWUserType_COM0_TComData | |
#define __BWUserType_COM0_TComData | |
typedef byte COM0_TComData ; /* User type for communication. Size of this type depends on the communication data witdh. */ | |
#endif | |
#pragma CODE_SEG COM0_CODE /* Code section for this module. */ | |
byte COM0_SetBaudRateMode(byte Mod); | |
/* | |
** =================================================================== | |
** Method : COM0_SetBaudRateMode (bean AsynchroSerial) | |
** | |
** Description : | |
** This method changes the channel communication speed (baud | |
** rate). This method can be used only if you specify a list | |
** of possible period settings at design time (see <Timing | |
** dialog box> - Runtime setting - from a list of values). | |
** Each of these settings constitutes a mode and Processor | |
** Expert^[TM] assigns them a mode identifier. The prescaler | |
** and compare values corresponding to each mode are | |
** calculated at design time. You may switch modes at | |
** runtime by referring only to a mode identifier. No | |
** run-time calculations are performed, all the calculations | |
** are performed at design time. | |
** Parameters : | |
** NAME - DESCRIPTION | |
** Mod - Timing mode to set | |
** Returns : | |
** --- - Error code, possible codes: | |
** ERR_OK - OK | |
** ERR_SPEED - This device does not work in | |
** the active speed mode | |
** =================================================================== | |
*/ | |
#pragma CODE_SEG __NEAR_SEG NON_BANKED /* Interrupt section for this module. Placement will be in NON_BANKED area. */ | |
__interrupt void COM0_Interrupt(void); | |
#pragma CODE_SEG COM0_CODE /* Code section for this module. */ | |
/* | |
** =================================================================== | |
** Method : COM0_Interrupt (bean AsynchroSerial) | |
** | |
** Description : | |
** This method is internal. It is used by Processor Expert | |
** only. | |
** =================================================================== | |
*/ | |
void COM0_Init(void); | |
/* | |
** =================================================================== | |
** Method : COM0_Init (bean AsynchroSerial) | |
** | |
** Description : | |
** This method is internal. It is used by Processor Expert | |
** only. | |
** =================================================================== | |
*/ | |
#pragma CODE_SEG DEFAULT /* Change code section to DEFAULT. */ | |
/* END COM0. */ | |
/* | |
** ################################################################### | |
** | |
** This file was created by UNIS Processor Expert 03.33 for | |
** the Motorola HCS12 series of microcontrollers. | |
** | |
** ################################################################### | |
*/ | |
#endif /* ifndef __COM0 */ |