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

📄 uart.h

📁 at91sam7s64两个uart、一个debug的ads源程序,atmel的基于arm7内核的单片机。
💻 H
字号:
//*********************************************************************************************************************
//【  版          权  】Copyright (c) 2007-2008 gliethttp
//
//【  文  件  版  本  】v1.x
//
//【  文  件  名  称  】uart.h
//
//【  创  建  日  期  】2007-03-30
//
//【  功  能  描  述  】
//*********************************************************************************************************************
#include <misc.h>
#include <string.h>

#ifndef __uart_h
#define __uart_h
//---------------------------------------------------------------------------------------------------------------------
//
#define flag_uart0_out_all	(0x01<<0)
#define flag_uart1_out_all	(0x01<<1)
//---------------------------------------------------------------------------------------------------------------------
//
struct vmalloc
{
#define vmalloc_status_unused	(0x00)
#define vmalloc_status_used		(0x01<<0)
#define vmalloc_status_tmpused	(0x01<<1)
	uint8 status;
	void *p;
	uint32 len;
};
#define dbgu_control_vmalloc_max	50
#define dbgu_cache_buffer_max		1024*2
typedef struct __dbgu_control
{
	uint32 flag;
	struct vmalloc mm[dbgu_control_vmalloc_max];
	uint32 mm_cur_index;
	uint32 mm_buf_counts;//队列有效数据数目
	uint32 mm_in;
	uint32 mm_out;
	uint32 mm_in_out[dbgu_control_vmalloc_max];
	void *mm_lastp;
	void *mm_maxp;
	char dbgu_cache_buffer[dbgu_cache_buffer_max];
}_dbgu_control,*_dbgu_controlp;
//---------------------------------------------------------------------------------------------------------------------
extern _dbgu_control dbgu_control;
//---------------------------------------------------------------------------------------------------------------------
//
extern void uart0_ini(uint32 baud);
extern void uart1_ini(uint32 baud);
extern void dbgu_ini(uint32 baud);
extern void uart0_send_char(uint8 data);
extern void uart1_send_char(uint8 data);
extern void dbgu_send_char(uint8 data);
extern void uart0_send_string(char *string);
extern void uart1_send_string(char *string);
extern void dbgu_send_string(char *string);
extern uint8 uart0_rcve_char(void);
extern uint8 uart1_rcve_char(void);
extern uint8 dbgu_rcve_char(void);
extern uint32 printf2dbgu(void *data,uint32 len);
extern void dbgu_send_chars(char *chars,uint16 len);
extern void printffdbgu(void);
extern void dbgu_wait_string(void);

extern uint32 dbgu_get_baud(void);
extern uint32 uart0_get_baud(void);
extern uint32 uart1_get_baud(void);
extern void dbgu_set_baud(uint32 baud);
extern void uart0_set_baud(uint32 baud);
extern void uart1_set_baud(uint32 baud);
extern void dbgu_send_uint32(uint32 send);
extern void dbgu_send_uint16(uint16 send);

#endif

⌨️ 快捷键说明

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