1 基于STM8L15x单片机的串口printf输出程序分享-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于STM8L15x单片机的串口printf输出程序分享

2oON_changxuemc 来源:网络整理 作者:工程师陈翠 2018-09-24 09:44 次阅读

这里我们以STM8L15x系列单片机使用ADC内部参考电压测量VDD电压并将电压值value通过窗口打印为例编写程序,(STM8L使用ADC内部参考电压通道测量VDD电压)

usart.h头文件:

#ifndef _usart_H

#define _usart_H

#include “stm8l15x.h”

void Usart_Init(void);

#endif

usart.c源文件:

#include “usart.h”

void Usart_Init(void)

{

CLK_PeripheralClockConfig (CLK_Peripheral_USART1,ENABLE); //开启USART1时钟

USART_Init(USART1,9600,USART_WordLength_8b,USART_StopBits_1,USART_Parity_No,USART_Mode_Tx); //USART初始化,波特率9600,8位数据长度,1位停止位,无校验位,发送模式

USART_Cmd (USART1,ENABLE);//使能USART1

}

#include “stm8l15x.h”

#include “adc.h”

#include “usart.h”

#include “stdio.h”

int putchar(int data)

{

USART_SendData8(USART1,(u8)data); //发送8位数据

while(!USART_GetFlagStatus (USART1,USART_FLAG_TXE));//等待发送完毕

return data;

}

int main( void )

{

u16 adc1_value=0;

float value=0;

Adc_Init();

Usart_Init();

while(1)

{

ADC_SoftwareStartConv(ADC1); //开启软件转换

while(!ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC));//等待转换结束

ADC_ClearFlag(ADC1,ADC_FLAG_EOC);//清除对应标志

adc1_value=ADC_GetConversionValue(ADC1); //获取转换值

value=1.225*4096/adc1_value; //单位V

printf(“ad=%fV ”,value);

}

}

IAR用printf输出与keil设置不太一样,首先当然先要包含头文件“stdio.h”,然后改写putchar函数

在IAR开发环境中进行如下配置:

(1)右击Demo-Debug选择opTIon

(2)在OpTIons中将Library ConfiguraTIon改成Full

(3)在Library OpTIons中将Printf formatter改成Large即可

(4)完成上述设置后编译整个工程,然后下载程序到STM8L15x板子中并进入到Debug调试环境中,点击View-》Terminal I/O调出虚拟终端,然后全部运行,就可以在Terminal窗口中看到打印信息

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6035

    文章

    44554

    浏览量

    634577
  • STM8L15X
    +关注

    关注

    1

    文章

    7

    浏览量

    9134

原文标题:基于STM8L15x单片机的串口printf输出

文章出处:【微信号:changxuemcu,微信公众号:畅学单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM8L15X能不能直接用于IC卡读写?

    如题,STM8L15X能不能直接用于IC卡读写,IC卡的读写没有外围零件,直接使用STM8L15X来处理~~望回复!
    发表于 05-10 07:22

    STM8L15x系列微控制器是否有安全数据表?

    STM8L15x系列微控制器是否有安全数据表?以上来自于谷歌翻译以下为原文 Is there any safety datasheet for STM8L15x family of microcontrollers?
    发表于 11-15 10:55

    STM8L15x I2C:无法写入I2C寄存器

    STM8L15x I2C:无法写入I2C寄存器以上来自于谷歌翻译以下为原文 STM8L15x I2C : Cannot write I2C registers
    发表于 04-02 13:49

    STM8L15X单片机的相关资料分享

    STM8L15X单片机,IAR软件,初学者初学stm8l15x芯片,看了下网上的一些例程,改写了一个使用STM8L152K4芯片读取外部光敏电阻电压值,并使用芯片内部ad转换,将对应电
    发表于 12-08 08:28

    STM8L05XSTM8L15X的区别是什么?

    STM8L05XSTM8L15X的区别是什么?
    发表于 02-09 06:32

    STM8L15x/16x/05x/AL3Lx/AL31x标准外围库

    STM8L15x/16x/05x/AL3Lx/AL31x标准外围库
    发表于 01-12 16:25 23次下载

    基于STM8L15x单片机串口printf输出

    这里我们以STM8L15x系列单片机使用ADC内部参考电压测量VDD电压并将电压值value通过窗口打印为例编写程序,(STM8L使用ADC内部参考电压通道测量VDD电压)
    发表于 06-08 07:41 2224次阅读
    基于<b class='flag-5'>STM8L15x</b><b class='flag-5'>单片机</b>的<b class='flag-5'>串口</b><b class='flag-5'>printf</b><b class='flag-5'>输出</b>

    51单片机串口通讯需要注意的寄存器及51单片机使用PRINTF的示例程序

    本文档的主要内容详细介绍的是51单片机进行串口通讯需要注意的寄存器及51单片机使用PRINTF的示例程序的详细资料概述。
    发表于 08-14 17:32 2次下载
    51<b class='flag-5'>单片机</b><b class='flag-5'>串口</b>通讯需要注意的寄存器及51<b class='flag-5'>单片机</b>使用<b class='flag-5'>PRINTF</b>的示例<b class='flag-5'>程序</b>

    如何在Keil中使用51单片机进行printf串口输出

    最近有同学在51单片机的学习过程中困扰如何使用单片机串口在上位串口助手上输出显示的问题,其实很
    发表于 08-13 17:32 14次下载
    如何在Keil中使用51<b class='flag-5'>单片机</b>进行<b class='flag-5'>printf</b><b class='flag-5'>串口</b><b class='flag-5'>输出</b>

    STM8L15x STDPERIPH Lib固件库的资料合集免费下载

    本文档的主要内容详细介绍的是STM8L15x STDPERIPH Lib固件库的资料合集免费下载。
    发表于 11-23 08:00 11次下载

    51单片机串口通信调试printf函数重定向输出打印

    51单片机串口通信以及printf调试串行通信1.串口初始化串口工作方式波特率设置通过软件直接生成串口
    发表于 11-20 16:36 16次下载
    51<b class='flag-5'>单片机</b><b class='flag-5'>串口</b>通信调试<b class='flag-5'>printf</b>函数重定向<b class='flag-5'>输出</b>打印

    STM8L05X VS STM8L15X 区别

    STM8L05X VS STM8L15X 区别
    发表于 12-06 10:36 12次下载
    STM<b class='flag-5'>8L05X</b> VS <b class='flag-5'>STM8L15X</b> 区别

    stm32单片机串口使用printf及u3_printf

    无论是在51单片机还是在stm32,默认printf串口都是串口一。使用printf的时候头文件为&amp;quot;stdio.h
    发表于 12-27 19:24 1次下载
    stm32<b class='flag-5'>单片机</b><b class='flag-5'>串口</b>使用<b class='flag-5'>printf</b>及u3_<b class='flag-5'>printf</b>

    基于ATmega8单片机模拟采集串口发送程序Proteus仿真源程序

    基于ATmega8单片机模拟采集串口发送程序Proteus仿真源程序
    发表于 05-05 09:27 3次下载

    51单片机中为什么很少出现printf的身影

    51单片机中为什么很少出现 printf 的身影?是用不了吗? 不是的,51单片机可以用 printf,只是不建议使用。 平时我们在操作系统上写C语言代码,使用
    的头像 发表于 12-03 10:46 256次阅读
    51<b class='flag-5'>单片机</b>中为什么很少出现<b class='flag-5'>printf</b>的身影