立即注册 找回密码

微雪课堂

搜索
微雪课堂 首页 STM8 STM8单片机笑傲江湖 查看内容

STM8 MAX485串口自收发程序

2015-7-16 13:56| 发布者: waveshare-admin| 查看: 3641| 评论: 1

摘要: 软件设计/*********************************************************************微 雪 电 子 WaveSharehttp://www.waveShare.net目 的: 建立MAX485操作库目标系统: 基于STM8单片机应用软件: Cosmic CxSTM8说 明: ...
软件设计

/*********************************************************************
微 雪 电 子 WaveShare http://www.waveShare.net 
目 的: 建立MAX485操作库
目标系统: 基于STM8单片机 
应用软件: Cosmic CxSTM8 
说 明: 若用于商业用途,请保留此段文字或注明代码来源
深 圳 市 微 雪 电 子 有 限 公 司 保 留 所 有 的 版 权 
*********************************************************************/

#include "STM8S207R8.h"

void Init_UART1(void)
{
		UART1_CR1=0x00;
		UART1_CR2=0x00;
		UART1_CR3=0x00;
		
		// 设置波特率,必须注意以下几点:
		//    (1) 必须先写BRR2
		//    (2) BRR1存放的是分频系数的第11位到第4位,
		//    (3) BRR2存放的是分频系数的第15位到第12位,和第3位
		//        到第0位
		// 例如对于波特率位9600时,分频系数=2000000/9600=208
		// 对应的十六进制数为00D0,BBR1=0D,BBR2=00


		UART1_BRR2=0x00;
		UART1_BRR1=0x0d;
		
		UART1_CR2=0x2c;//允许接收,发送,开接收中断
		
}

void UART1_sendchar(u8 data)
{
		while((UART1_SR & 0x80)==0x00);
		UART1_DR=data;
}

@far @interrupt void UART1_Recv_IRQHandler (void)
{
	u8 data;
	data=UART1_DR;
	showLine(6,2,lcd_buffer,"0x%x2",(u16)data);
	return;
}

void Init_UART3(void)
{
		UART3_CR1=0x00;
		UART3_CR2=0x00;
		UART3_CR3=0x00;
		
		// 设置波特率,必须注意以下几点:
		//    (1) 必须先写BRR2
		//    (2) BRR1存放的是分频系数的第11位到第4位,
		//    (3) BRR2存放的是分频系数的第15位到第12位,和第3位
		//        到第0位
		// 例如对于波特率位9600时,分频系数=2000000/9600=208
		// 对应的十六进制数为00D0,BBR1=0D,BBR2=00


		UART3_BRR2=0x00;
		UART3_BRR1=0x0d;
		
		UART3_CR2=0x2c;//允许接收,发送,开接收中断
		
}

void UART3_sendchar(u8 data)
{
		while((UART3_SR & 0x80)==0x00);
		UART3_DR=data;
}

@far @interrupt void UART3_Recv_IRQHandler (void)
{
	u8 data;
	data=UART3_DR;
	showLine(6,2,lcd_buffer,"0x%x2",(u16)data);
	return;
}

main()
{
	u8 tmp=0;
	Init_UART3();
	Init_UART1();
	_asm("rim");
	while(1)
	{
		UART3_sendchar(tmp);
		delay_ms(10);
		tmp++;
		delay_ms(1000);
	}
}

以上资料由微雪电子整理并发布,未经许可不得转载,否则追究相应责任!


220

顶一下

刚表态过的朋友 (220 人)

发表评论

最新评论

引用 游客 2019-6-14 10:28
STM8L001J3的串口中断如何设置

查看全部评论(1)

所有教程
STM8

微雪官网|产品资料|手机版|小黑屋|微雪课堂. ( 粤ICP备05067009号 )

GMT+8, 2019-10-24 07:55 , Processed in 0.016096 second(s), 18 queries .

Powered by Discuz! X3.2 © 2001-2013 Comsenz Inc & Style Design

返回顶部