#include<iostm8l151k4.h>
void UART1_Init(unsigned long baudrate)
{
unsigned int baud;
CLK_PCKENR1_bit.PCKEN15 = 1; //使能USART模块时钟
baud = 16000000 / baudrate; //设定串口相应波特率与串口时钟的分频数
//先写BRR2 , 再写BRR1
USART1_BRR2 = ((unsigned char)((baud & 0xf000) >> 8 )) | ((unsigned char)(baud & 0x000f));
USART1_BRR1 = ((unsigned char)((baud & 0x0ff0) >> 4));
USART1_CR1_bit.USARTD = 0; //使能UART0
USART1_CR2_bit.RIEN = 1; //使能中断接收
USART1_CR2_bit.TEN = 1; //使能发送
USART1_CR2_bit.REN = 1; //接收使能
}
void Uart_SendData(unsigned char data)
{
while(!(USART1_SR&0X80)); //判断发送数据寄存器是否为空
USART1_DR = data; //向发送寄存器写入数据
}
/* 主函数 */
int main(void)
{
asm("sim"); //关闭系统总中断
CLK_CKDIVR = 0x00; //系统一开机默认采用内部时钟2M ,通过配置CKM = 0 设置内部时钟 = 16Mhz
UART1_Init(9600); //调用串口初始化函数,并设置波特率为9600 bps
asm("rim"); //打开系统总中断
while(1)
{
;
}
}
/* 串口接收数据中断服务函数 */
#pragma vector = USART_R_RXNE_vector //设置串口接收中断向量号 = USART_R_RXNE_vector
__interrupt void UART1_RX_RXNE(void)
{
unsigned char ch1 = 1;
if(USART1_SR_bit.RXNE == 1) //
{
//ch1 = USART1_DR; //读出串口接收到的数据 清除中断标志
Uart_SendData(ch1); //把接收到的数据再通过串口发送出去
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
STM8L152K4-USART.zip_STM8L152K4T6_stm8_stm8l152K4_truth6dj_wolf4
共26个文件
xcl:3个
ewp:2个
bat:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 189 浏览量
2022-09-24
09:50:31
上传
评论
收藏 618KB ZIP 举报
温馨提示
stm8l152k4t6寄存器开发,简单的串口通讯,USART发送接收
资源推荐
资源详情
资源评论
收起资源包目录
STM8L152K4-USART.zip (26个子文件)
科嵌单片机科技STM8L152K4开发板_例程6_串口通讯_USART发送接收
KQ_STM8L152K_Test6_USART_ReceiveSend.dep 3KB
main.c 2KB
KQ_STM8L152K_Test6_USART_ReceiveSend.ewp 57KB
KQ_STM8L152K_Test6_USART_ReceiveSend.ewt 157KB
settings
KQ_STM8L152K_Test6_USART_ReceiveSend.cspy.bat 1KB
KQ_STM8L152K_Test6_USART_ReceiveSend.wsdt 29KB
KQ_STM8L152K_Test6_USART_ReceiveSend.dnx 3KB
KQ_STM8L152K_Test6_USART_ReceiveSend.Debug.cspy.bat 2KB
KQ_STM8L152K_Test6_USART_ReceiveSend.Debug.general.xcl 470B
KQ_STM8L152K_Test6_USART_ReceiveSend.dbgdt 57KB
KQ_STM8L152K_Test6_USART_ReceiveSend.Debug.driver.xcl 145B
KQ_STM8L152K_Test6_USART_ReceiveSend.dni 747B
KQ_STM8L152K_Test6_USART_ReceiveSend.Debug.cspy.ps1 2KB
KQ_STM8L152K_Test6_USART_ReceiveSend.eww 190B
Debug
List
main.lst 5KB
KQ_STM8L152K_Test6_USART_ReceiveSend.map 12KB
Exe
KQ_STM8L152K_Test6_USART_ReceiveSend.out 31KB
KQ_STM8L152K_Test6_USART_ReceiveSend.hex 1KB
Obj
KQ_STM8L152K_Test6_USART_ReceiveSend.pbd.browse 548KB
main.pbi 548KB
KQ_STM8L152K_Test6_USART_ReceiveSend.pbd.linf 353B
KQ_STM8L152K_Test6_USART_ReceiveSend.pbd 548KB
main.pbi.xcl 10KB
main.o 18KB
KQ_STM8L152K_Test6_USART_ReceiveSend.ewd 16KB
Backup of KQ_STM8L152K_Test6_USART_ReceiveSend.ewp 41KB
共 26 条
- 1
资源评论
weixin_42651887
- 粉丝: 76
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功