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

📄 serial.h

📁 NEC 的无线通讯方案
💻 H
字号:
/*
* $Id: serial.h,v 1.22 2007/10/30 06:17:16 sunny Exp $
*/
/*
*******************************************************************************
**
**  This device driver was created by Applilet for the 78K0/KB2, 78K0/KC2,
**  78K0/KD2, 78K0/KE2 and 78K0/KF2 8-Bit Single-Chip Microcontrollers.
**
**  Copyright(C) NEC Electronics Corporation 2002 - 2005
**  All rights reserved by NEC Electronics Corporation.
**
**  This program should be used on your own responsibility.
**  NEC Electronics Corporation assumes no responsibility for any losses
**  incurred by customers or third parties arising from the use of this file.
**
**  Filename :	serial.h
**  Abstract :	This file implements device driver for SERIAL module.
**  APIlib :	NEC78K0KX2.lib V1.01 [09 Aug. 2005]
**
**  Device :	uPD78F0537
**
**  Compiler :	NEC/CC78K0
**
*******************************************************************************
*/
#ifndef _MDSERIAL_
#define _MDSERIAL_

/*
*******************************************************************************
**  Global variables
*******************************************************************************
*/
#if ENABLE_UART0
#define	UART_BAUDRATE_M0	0x1
#define	UART_BAUDRATE_K0	0x11

void UART0_Init( void );
MD_STATUS UART0_SendData( UCHAR* txbuf, UCHAR txnum );
void CALL_UART0_Send( void );
void CALL_UART0_Error( UCHAR err_type );
__interrupt void MD_INTSR0( void );
__interrupt void MD_INTST0( void );
#endif // #if ENABLE_UART0

#if ENABLE_UART6
#define	UART_BAUDRATE_M6	0x0
#if DEBUG_MODE
// Baud rate = fXCLK6 / (2 X k) [bps]
//	#define	UART_BAUDRATE_K6	0x04	// 1000000 bps
//	#define	UART_BAUDRATE_K6	0x09	//  460800 bps
//	#define	UART_BAUDRATE_K6	0x11	//  230400 bps
	#define	UART_BAUDRATE_K6	0x23	//  115200 bps
//	#define	UART_BAUDRATE_K6	0x45	//   57600 bps
#else
	#define	UART_BAUDRATE_K6	0x23	// 115200 bps
#endif // #if DEBUG_MODE

void UART6_Init( void );
MD_STATUS UART6_SendData( UCHAR* txbuf, UCHAR txnum );
__interrupt void MD_INTSR6( void );
__interrupt void MD_INTST6( void );
__interrupt void MD_INTSRE6( void );
void CALL_UART6_Send( void );
void CALL_UART6_Error( UCHAR err_type );
#endif // #if ENABLE_UART6

#if ENABLE_CSI10
void CSI10_Init( void );
MD_STATUS CSI10_SendData( UCHAR* txbuf, UCHAR txnum );
MD_STATUS CSI10_ReceiveData( UCHAR* rxbuf, UCHAR rxnum );
UCHAR CSI10_ReadWrite(UCHAR ch);
__interrupt void MD_INTCSI10( void );
void CALL_CSI10_Receive( void );
void CALL_CSI10_Send( void );
#endif // #if ENABLE_CSI10

#if ENABLE_CSI11
void CSI11_Init( void );
MD_STATUS CSI11_SendData( UCHAR *txbuf, UCHAR txnum );
MD_STATUS CSI11_ReceiveData( UCHAR *rxbuf, UCHAR rxnum );
UCHAR CSI11_ReadWrite(UCHAR ch);
__interrupt void MD_INTCSI11( void );
void CALL_CSI11_Receive( void );
void CALL_CSI11_Send( void );
#endif // #if ENABLE_CSI11

enum TransferMode { Send, Receive };

#include "ubec_chip.h"

#if UNET01
	void CONSOLE_isr(void);

    #if ENABLE_UART6
	#define CONSOLE_putc(c)			TXB6 = c
	#define	CONSOLE_getc()			RXB6
//	#define is_CONSOLE_TxFlag()		((!(ASIF6 & 0x02)) && (ASIM6 & 0x80))
	#define is_CONSOLE_TxFlag()		(!(ASIF6 & 0x02))
    #elif ENABLE_UART0
	#define CONSOLE_putc(c)			TXB0 = c
	#define	CONSOLE_getc()			RXB0
	#define is_CONSOLE_TxFlag()		1
    #endif

	#define clear_CONSOLE_TxFlag()
	#define clear_CONSOLE_RxFlag()
#endif // #if UNET01

#endif // _MDSERIAL_

⌨️ 快捷键说明

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