历史上的今天

今天是:2024年09月15日(星期日)

2021年09月15日 | STM8S003F3 uart的使用

发布者:心怀感恩 来源: eefocus关键字:STM8S003F3  uart  初始化函数 手机看文章 扫描二维码
随时随地手机看文章

uart的使用这里我整理一下,方便我后续使用


bsp_uart1.h


#ifndef _BSP_UART1_H_

#define _BSP_UART1_H_

 

 

#include "stm8s.h"

#include "stm8s_clk.h"

 

 

void USART_Configuration(void);   //串口配置函数

void UART_send_string(uint8_t *Buffer);//发送一个字符串函数

#endif /* _BSP_UART_H_ */

bsp_uart1.c


void USART_Configuration(void)//串口初始化函数

{  

    UART1_DeInit(); //清除之前的串口配置

    UART1_Init((u32)115200, UART1_WORDLENGTH_8D, UART1_STOPBITS_1,

    UART1_PARITY_NO , UART1_SYNCMODE_CLOCK_DISABLE , UART1_MODE_TXRX_ENABLE);

    //串口配置:波特率115200,字节数8,1个停止位,无奇偶效验位,非同步模式,允许接受和发送  

    UART1_ITConfig(UART1_IT_RXNE_OR, ENABLE);

    UART1_Cmd(ENABLE );  //启用串口

}

 

void UART_send_string(uint8_t *Buffer) //发送一个字符

{

    uint8_t *String;

    String=Buffer;

  while(*String!='')

    {

        UART1_SendData8(*String);

        while (UART1_GetFlagStatus(UART1_FLAG_TXE)==RESET);

    String++;

    }

    UART1_SendData8(0x0d);

    while (UART1_GetFlagStatus(UART1_FLAG_TXE)==RESET);

    UART1_SendData8(0x0a);

    while (UART1_GetFlagStatus(UART1_FLAG_TXE)==RESET);

}

中断处理函数中,代码如下,这里实现的是收到的数据再发出,可根据自己的实际情况来做


stm8_it.c


INTERRUPT_HANDLER(UART1_RX_IRQHandler, 18)

{

    /* In order to detect unexpected events during development,

       it is recommended to set a breakpoint on the following instruction.

    */

 

    if(UART1_GetITStatus(UART1_IT_RXNE) != RESET)        //检查指定的UART1中断是否发生。 

    {

        UART1_SendData8(UART1_ReceiveData8());             //将接收的数据再用串口发送出去

        UART1_ClearITPendingBit(UART1_IT_RXNE);            //清除UART1挂起标志

     }

}

关键字:STM8S003F3  uart  初始化函数 引用地址:STM8S003F3 uart的使用

上一篇:IAR 常用快捷键
下一篇:STM8S003F3 内部flash调试

推荐阅读

据消息称,欧洲议会近日通过一项决议,呼吁全球禁止研发、生产和使用“杀人机器人”。 “杀人机器人”是一种由人工智能来挑选并攻击目标的自动武器,它无须人类控制。 欧洲议会安全政策发言人Bodil Valero称,“自动武器必须在全球范围内予以禁止,决定生死的权力绝不能被机器从人类手中夺走。” 据欧盟议会一份声明,欧盟26国都同意禁止人工智能武...
借“国家安全”之名,美国政府不断收紧对华为的管制,甚至呼吁联手盟友国一同抵制华为。台媒联合新闻网指出,美国采取一系列行动的背后原因是美商对5G投入不足,而华为相关业务进展太快。 美国司法部长巴尔(William Barr)曾经声称,由华为主导手机通信市场会带来无法接受的国家安全危机,并控诉中国正在偷走美国人民的未来。 但不得不思考的是,科技公...
具体实现功能系统由STC89C52单片机+水位检测传感器+DS18B20温度探头传感器+按键模块+继电器模块+报警及指示模块+LCD1602显示模块+电源构成。具体功能:1、LCD1602显示屏第一行显示温度及定时时间,第二行显示温度上限和下限值;2、按键可以设置温度的上下限值及定时时间;定时时间到开始加热3、用两个水位检测传感器检测水位:当水位下限传感器检测到有水...

史海拾趣

问答坊 | AI 解惑

PIC16F877的外围功能模块简单应用实例(2)

PORTB口“电平变化中断”初始化子程序 /*B口“电平变化中断”初始化子程序*/ void              PORTBINT( ) {        TRISB=0XF0;    ...…

查看全部问答∨

WindRiver 2000万美元收购移动软件公司

Wind River系统公司日前宣布,Wind River将通过现金和股票的形式,以2000万美元的价格收购Interpeak AB公司。Interpeak AB公司是网络、安全以及移动中介软件的领导供货商,其中间件软件可使新一代设备安全地连接至互联网。这项 ...…

查看全部问答∨

FPGA 设计的四种常用思想与技巧(一)

FPGA/CPLD 的设计思想与技巧是一个非常大的话题,由于篇幅所限,本文仅介绍一些常用的设计思想与技巧,包括乒乓球操作、串并转换、流水线操作和数据接口的同步方法。希望本文能引起工程师们的注意,如果能有意识地利用这些原则指导日后的设计工作, ...…

查看全部问答∨

大家看看这两个波形的同步怎么产生?

大家帮帮我,其中三角波的频率是5KHz,梯形波是100个阶梯一个周期,上下对称,希望频率可调…

查看全部问答∨

摄像机芯片组合(厂家内部资料)

为了提高广大技术员的摄像机识别能力,特把一些常见的芯片组合列出: 专业红外夜视摄像SONY产品型号及芯片组合   1、A4212SP/G4212SP/D4212SP:   芯片: CXD3141、CXD1267、CXA2096+ICX405; 2、A4512SP/G4512SP/D451 ...…

查看全部问答∨

热烈慰问下考完研的兄弟姐妹们

今天考研就结束了,不管结果如何,很多人都可以暂时解脱了。 有个朋友辞了工作专门准备考研,EEWORLD一位同事的男朋友也在潜心考研,真的希望他们付出的能够有收获。…

查看全部问答∨

内部资料-开关电源设计要领及设计全过程

内部资料-开关电源设计要领及设计全过程…

查看全部问答∨

不明白+-*/的用法

LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY dat2bcd ISPORT(CLK:IN STD_LOGIC;     DAT:IN STD_LOGIC_VECTOR(7 DOWNTO 0);     BCD ...…

查看全部问答∨

关于热释电红外传感器re200b和BISS0001的问题

电路图如上,做的是一个人体检测报警器 有采用菲涅尔透镜,传感器焊在电路板上,透镜盖在上面 现在按照以上的电路及参数做了板子,具体情况如下: 1.有人时,输出重复跳变,每次输出“1”约10秒,输出“0”约0.5秒; 2.没人时,基本跟有人的 ...…

查看全部问答∨

给我推荐几本你们觉得很不错的书好不好呢

我想学驱动开发 windows和linux的都想学 但是我现在什么都不知道 也不知道怎么去学习 希望各位前辈能介绍介绍你们觉得不错的书籍 或者介绍一下你们学习的经验啊 希望你们能抽点时间帮帮我 麻烦你们了…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved