0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

【爱普特APT32F110开发板工程师测评1】printf花式表白

爱普特微电子 2023-03-05 10:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

APT32F110X 系列串口功能强大:可以完成STM32串口功能,驱动AT物联网模组不在话下。

资源串行通信接口:1 × I2C,3 x UART,1 x USART,1 x SPI,1 x SIO

通用异步收发器(UART)

3个通道

8位数据长度,支持校验位(奇偶校验,0/1校验)

单独的8x8位收发FIFO

编程的波特率


同步异步收发器(USART)

  • 1个通道
  • 支持5、6、7和8位数据长度
  • 单独的8x8位收发FIFO可编程的波特率
  • 校验位,帧检测和缓存溢出错误报告
  • 支持Loop-back模式
  • 支持同步全双工模式
  • 支持LIN总线协议:LIN1.2或者LIN2.0
  • 支持智能卡协议:ISO7816-3兼容

28b3dd58-b91d-11ed-ad0d-dac502259ad0.png编程实践:

时钟配置

void system_init(void)

{

CK_CPU_DISALLNORMALIRQ;

csi_iwdt_close();//close iwdt

csi_sysclk_config();//sysclk config

csi_get_sclk_freq();

csi_get_pclk_freq();

csi_tick_init();

csi_clk_calib();

CK_CPU_ENALLNORMALIRQ;

}

串口配置:115200波特率

__attribute__((weak)) void board_init(void)

{

//console config for print

console.uart_id = (uint32_t)CONSOLE_IDX;

console.baudrate = 115200U;

console.tx.pin = CONSOLE_TXD;

console.tx.func = CONSOLE_TXD_FUNC;

console.rx.pin = CONSOLE_RXD;

console.rx.func = CONSOLE_RXD_FUNC;

console.uart = (csp_uart_t *)(APB_UART0_BASE + CONSOLE_IDX * 0x1000);

console_init(&console);

#ifdef CONFIG_USER_PM//low power manage switch

if(csi_get_rst_reason() & RST_SRC_SNOOZE_WKUP)//wake up from snooze mode

{

g_tPmCore.wkup_frm_snooze = (void *)csi_ureg_read(USER_REG0);

if(g_tPmCore.wkup_frm_snooze)

g_tPmCore.wkup_frm_snooze();

}

else if(csi_get_rst_reason() & RST_SRC_SHD_WKUP)//wake up from shutdown mode

{

g_tPmCore.wkup_frm_shutdown = (void *)csi_ureg_read(USER_REG0);

if(g_tPmCore.wkup_frm_shutdown)

g_tPmCore.wkup_frm_shutdown();

}

#endif

}

花式打印表白啊,程序员哄女孩子的利器!!

先上图案:

28e4f9b0-b91d-11ed-ad0d-dac502259ad0.png

代码实现很简单, printf打印就可以了:

int main()

{

//start_system();

system_init();

board_init();

csi_pin_set_mux(PB02, PB02_OUTPUT); //PA06 output

csi_pin_set_high(PB02); //PA06 output high;

int a[23][80] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,0,0,0,0,0,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,0,0,0,0,2,2,2,2,2,2,2,2,2,0,0,2,2,2,2,2,2,2,2,2,2,0,0,0,1,1,1,1,1,1,1,1,0,0,1,1,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,2,2,2,2,0,0,0,0,3,3,3,0,0,3,3,3,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,0,0,3,0,0,3,3,3,0,0,3,0,0,0,3,0,0,3,3,3,3,0,0,3,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,3,0,0,0,3,0,0,3,0,3,0,0,3,3,0,0,3,3,0,3,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,3,0,0,0,3,0,0,3,0,3,0,0,3,3,3,3,3,3,0,3,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,3,0,0,0,3,0,0,0,3,0,0,0,3,3,0,0,0,0,0,3,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,0,0,3,0,0,3,3,3,0,0,0,0,3,0,0,0,0,0,3,3,3,0,0,0,3,3,3,3,0,0,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

};

for(int i=0;i<23;i++)

for(int j=0;j<80;j++)

{

if(a[i][j] == 0)

my_printf(" ",a[i][j]);

else if(a[i][j] == 1)

my_printf("*",a[i][j]);

else if(a[i][j] == 2)

my_printf("o",a[i][j]);

else if(a[i][j] == 3)

my_printf("u",a[i][j]);

}

//my_printf("%d",a[i][j]);

my_printf("\n");

while(1)

{

//my_printf("Best wishes to every one\n"); //print message

mdelay(1000); //delay 100ms

csi_pin_toggle(PB02); //PA06 toggle

}

}

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

    关注

    2939

    文章

    47317

    浏览量

    407734
  • 开发板
    +关注

    关注

    25

    文章

    6122

    浏览量

    113250
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【开源FPGA硬件】硬件黑客集结:开源FPGA开发板测评活动全网火热招募中......

    式发布啦!现面向全网招募第一批工程师/硬件爱好者,开发板免费试用测试啦! 优秀试用报告,将作为板卡配套资料发布~ 相关链接: 拥抱开源!一起来做FPGA开发板啦!火爆开发中 | 开源F
    发表于 10-29 11:37

    [投票评选]2025电子发烧友开发板测评大赛--最受欢迎开发板

    2025电子发烧友开发板测评大赛--最受欢迎开发板 大赛详情: 电子发烧友携手 16 家生态厂商发起开发板测评大赛,设 OpenHarmon
    发表于 10-13 16:25

    【精选资料】开发板测评大赛作品合集!

    电子发烧友携手16家生态厂商发起开发板测评大赛,设OpenHarmony、RISC-V、Rockchip三大赛道,共计21款、160+块开发板,通过评测开发板性能、易用性及创新场景,促
    的头像 发表于 09-23 08:09 740次阅读
    【精选资料】<b class='flag-5'>开发板</b><b class='flag-5'>测评</b>大赛作品合集!

    【作品合集】飞凌嵌入式OK527N-C开发板测评

    Core_DSC280025C开发板测评作品合集 第十六期合集 : 润开鸿HH-SCDAYU800A开发板测评作品合集 第十七期合集 : 视美泰M-K
    发表于 09-22 15:54

    【作品合集】视美泰M-K1HSE、3568开发板测评

    领先水平。M-K1HSE专为人机交互、工控项目、深度学习等场景设计,提供丰富的接口和强大的扩展能力,是开发者和工程师的理想选择。 SC-3568HA开发板: SC-3568HA
    发表于 09-22 10:32

    【作品合集】中科昊芯Core_DSC280025C开发板测评

    中科昊芯Core_DSC280025C开发板测评作品合集 产品介绍: Core_DSC280025C核心使用了昊芯HXS320F28025CRISC-V DSP芯片,该芯片集成了吴芯
    发表于 09-18 10:52

    【作品合集】汇思博SEEK100开发板测评

    汇思博SEEK100开发板测评作品合集 产品介绍: EEK100开发板是基于展锐SL8541E设计的一款智能终端开发板。 SL8541E是一款高度集成的应用处理器,内置TD-LTE、L
    发表于 09-15 10:24

    【作品合集】米尔RK3576开发板测评

    米尔RK3576开发板测评作品合集 产品介绍: RK3576 是瑞芯微一款面向AI市场推出的高性能处理器,它配备了四核Cortex-A72和四 核Cortex-A53 的 CPU,集成了6TOPS
    发表于 09-11 10:19

    【作品精选】2025电子发烧友开发板测评大赛作品合集!

    Core_DSC280025C开发板测评 润开鸿HH-SCDAYU800A开发板测评 视美泰M-K1HSE、3568
    发表于 09-03 15:24

    来自资深工程师对ELF 2开发板的产品测评

    来自资深工程师对ELF 2开发板的使用测评
    的头像 发表于 04-28 15:03 1524次阅读
    来自资深<b class='flag-5'>工程师</b>对ELF 2<b class='flag-5'>开发板</b>的产品<b class='flag-5'>测评</b>

    再升级!普特微电子推出超高性价比全国产RISC核32位触控MCU——APT32F104X

    近日,全国产32位MCU小巨人企业普特微电子宣布推出一款超高性价比的全国产RISC核32位MCU——APT32F104X,进一步扩展丰富其在全国产、高性价比领域MCU产品系列布局
    的头像 发表于 02-11 09:25 1188次阅读
    再升级!<b class='flag-5'>爱</b><b class='flag-5'>普特</b>微电子推出超高性价比全国产RISC核32位触控MCU——<b class='flag-5'>APT32F</b>104X

    普特微电子推出国产RISC核32位触控MCU—APT32F104X

    近日,全国产32位MCU领域的佼佼者普特微电子,宣布推出一款全新力作——APT32F104X。这款MCU以其超高性价比和全国产RISC核架构,进一步丰富了
    的头像 发表于 02-08 10:41 1051次阅读

    普特微电子发布高性价比国产RISC核32位MCU

    近日,国内领先的微电子技术企业普特微电子,凭借其自研的微处理器IP库和在RISC核架构领域的深厚积累,成功推出了全新的全国产32位MCU——APT32F004X。 APT32F004
    的头像 发表于 02-08 10:25 993次阅读

    普特微电子推出超高性价比全国产RISC核32位MCU—APT32F004X

    近日,普特微电子凭借自研的微处理器IP库及在RISC核架构领域的深厚积累,重磅推出了APT32F004X。这款全国产32位MCU,凭借其卓越的性能、丰富的外设资源以及超高的性价比,势必将为相关领域
    的头像 发表于 01-20 20:00 1191次阅读
    <b class='flag-5'>爱</b><b class='flag-5'>普特</b>微电子推出超高性价比全国产RISC核32位MCU—<b class='flag-5'>APT32F</b>004X

    再升级!普特微电子推出超高性价比全国产RISC核32位MCU——APT32F104X

    近日,全国产32位MCU小巨人企业普特微电子宣布推出一款超高性价比的全国产RISC核32位MCU——APT32F104X,进一步扩展丰富其在全国产、高性价比领域MCU产品系列布局
    的头像 发表于 01-20 18:16 1343次阅读
    再升级!<b class='flag-5'>爱</b><b class='flag-5'>普特</b>微电子推出超高性价比全国产RISC核32位MCU——<b class='flag-5'>APT32F</b>104X