标题:
STM8S-Discovery串口测试程序
[打印本页]
作者:
xiaos
时间:
2015-4-2 23:22
标题:
STM8S-Discovery串口测试程序
#include
<
iostm8s105c6.h
>
#include
<
stdio.h
>
#define
BAUD_RATE 9600
//
波特率
#define
F_CPU 16000000
//
CPU频率
//
串口配置
//
数据位:8
//
停止位:1
//
校验位:None
void
UART_Init(
void
)
{
UART2_CR2_TEN
=
1
;
UART2_CR2_REN
=
1
;
UART2_CR2_RIEN
=
1
;
UART2_BRR2
=
((unsigned
char
)((F_CPU
/
BAUD_RATE)
&
0x0f
))
+
(((unsigned
char
)((F_CPU
/
BAUD_RATE)
>>
8
))
&
0xf0
);
UART2_BRR1
=
((unsigned
char
)((F_CPU
/
BAUD_RATE)
>>
4
));
}
void
UART_TxByte(unsigned
char
_data)
{
while
(UART2_SR_TXE
==
0
);
UART2_DR
=
_data;
}
int
putchar(
int
c)
{
UART_TxByte(c);
return
c;
}
int
main(
void
)
{
CLK_SWCR_SWEN
=
1
;
CLK_SWR
=
0xB4
;
//
HSE selected as master clock source
UART_Init();
printf(
"
********** STM8S-Discovery UART Test *********\r\n
"
);
printf(
"
Build: %s %s\r\n
"
, __DATE__, __TIME__);
asm(
"
rim
"
);
while
(
1
)
{
}
}
#pragma
vector = UART2_R_RXNE_vector
__interrupt
void
UART2_IRQHandler(
void
)
{
if
(UART2_SR_RXNE
==
1
)
{
UART_TxByte(UART2_DR);
}
}
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1