打印
[APM32E1]

APM32E103ZET6串口打印实验

[复制链接]
609|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
BDW杜兰特|  楼主 | 2022-5-5 16:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#申请原创# #有奖活动# #技术资源#
各位小伙伴们,本次实验做的是E103系列串口的打印。自发自收
烧录固件我用的是J-LINK与开发板的JTAG相连,JT串口的打印我用的是USB转串口连接PA9 PA10俩个脚,使用的是串口1打印。
具体代码如下:

#include "main.h"
#include "stdio.h"
#include "apm32e10x_usart.h"

volatile uint32_t tick = 0;
uint8_t txBuf[] = "Hello USART1 \r\n";
uint8_t zul_txBuf[] = "欢迎使用极海单片机\r\n";

void Delay(void);


int main(void)
{
    uint8_t i;
   
    GPIO_Config_T GPIO_ConfigStruct;
    USART_Config_T USART_ConfigStruct;
   
    APM_MINI_LEDInit(LED2);
                APM_MINI_LEDInit(LED3);
   
    RCM_EnableAPB2PeriphClock((RCM_APB2_PERIPH_T)(RCM_APB2_PERIPH_GPIOA | RCM_APB2_PERIPH_USART1));
   
    GPIO_ConfigStruct.mode = GPIO_MODE_AF_PP;
    GPIO_ConfigStruct.pin = GPIO_PIN_9;
    GPIO_ConfigStruct.speed = GPIO_SPEED_50MHz;
    GPIO_Config(GPIOA, &GPIO_ConfigStruct);
   
    USART_ConfigStruct.baudRate = 115200;
    USART_ConfigStruct.hardwareFlow = USART_HARDWARE_FLOW_NONE;
    USART_ConfigStruct.mode = USART_MODE_TX;
    USART_ConfigStruct.parity = USART_PARITY_NONE;
    USART_ConfigStruct.stopBits = USART_STOP_BIT_1;
    USART_ConfigStruct.wordLength = USART_WORD_LEN_8B;
    USART_Config(USART1, &USART_ConfigStruct);
   
    USART_Enable(USART1);
   
    SysTick_Config(SystemCoreClock / 1000);

   
    while(1)
    {
        Delay();
        
        for(i = 0; i < sizeof(txBuf); i++)
        {
            while(USART_ReadStatusFlag(USART1, USART_FLAG_TXBE) == RESET);
            USART_TxData(USART1, txBuf[i]);
                                       
        }
                                for(i = 0; i < sizeof(zul_txBuf); i++)
        {
            while(USART_ReadStatusFlag(USART1, USART_FLAG_TXBE) == RESET);
            USART_TxData(USART1, zul_txBuf[i]);
                                       
        }
        
        APM_MINI_LEDToggle(LED2);
                                APM_MINI_LEDToggle(LED3);
    }
}


void Delay(void)
{
    tick = 0;
   
    while(tick < 500);
}

这个代码最关键的部分就是把你想要打印出的数据定义成数组形式,然后进行不断的输出打印。插上USB转串口会出现端口,实验现象如下:

好了各位小伙伴们,本次实验内容就这么多


使用特权

评论回复
沙发
laocuo1142| | 2022-5-6 11:13 | 只看该作者
实验现象如下的内容是不是缺了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

22

帖子

0

粉丝