找回密码
 立即注册
查看: 777|回复: 9

无 printf 函数液晶无法显示

[复制链接]

该用户从未签到

14

主题

70

回帖

339

积分

中级会员

积分
339
发表于 2023-4-10 14:13:23 | 显示全部楼层 |阅读模式
最近使用 STC32G12K128芯片移植了一个 液晶显示屏,驱动是 ILI9341,遇到个问题,当程序里没有 printf这个函数时,液晶无法启动,在程序里添加上 printf这个子函数后液晶就可以正常显示,老是奇怪了,关键是我根本不需要这个 printf函数,串口也没有初始化。

液晶可以正常显示的主程序如下:
无 printf  函数液晶无法显示-1.png


液晶无法显示的程序如下:
无 printf  函数液晶无法显示-2.png


LCD_Init()完全是按照 DEMO上复制的,LCD_PrintHomePage()显示了一个很简单的界面。


回复 送花

使用道具 举报

  • TA的每日心情
    奋斗
    2023-12-5 13:56
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    12

    主题

    256

    回帖

    1580

    积分

    超级版主

    积分
    1580
    发表于 2023-4-10 14:38:01 | 显示全部楼层
    有仿真器吗?可以打个断点测一下,或者加个延时或者串口输出信息看一下,是不是-直在输出信息,导致显示屏来不及显示了
    电话:0513-55012946 QQ:2195591714  微信:  19952583740
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    14

    主题

    70

    回帖

    339

    积分

    中级会员

    积分
    339
     楼主| 发表于 2023-4-10 14:57:53 | 显示全部楼层
    STC32G12K128 发表于 2023-4-10 14:38
    有仿真器吗?可以打个断点测一下,或者加个延时或者串口输出信息看一下,是不是-直在输出信息,导致显示屏 ...

    现在是加上 printf才能正常显示,删除 printf就不能正常显示
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    46

    主题

    3007

    回帖

    6781

    积分

    超级版主

    积分
    6781
    发表于 2023-4-10 15:05:07 | 显示全部楼层
    LCD驱动怎么会跟printf有关?printf是操作串口的,LCD驱动是IO操作。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    无聊
    1 小时前
  • 签到天数: 149 天

    [LV.7]常住居民III

    18

    主题

    531

    回帖

    1282

    积分

    金牌会员

    积分
    1282
    发表于 2023-4-10 20:51:33 | 显示全部楼层
    无数的坑告诉我,这种问题一般都是自己的硬件或程序有问题导致的。
    不停地学习
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    14

    主题

    70

    回帖

    339

    积分

    中级会员

    积分
    339
     楼主| 发表于 2023-4-17 11:18:28 | 显示全部楼层
    梁工 发表于 2023-4-10 15:05
    LCD驱动怎么会跟printf有关?printf是操作串口的,LCD驱动是IO操作。

    梁工好,以上问题已解决,是因为使用了 LCM中断向量,但是该中断号大于 31但是没有用汇编处理导致的,处理后一切正常了。

    点评

    嗯,解决就好。  详情 回复 发表于 2023-4-17 12:03
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9436

    回帖

    1万

    积分

    管理员

    积分
    14021
    发表于 2023-4-17 11:45:32 | 显示全部楼层
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    46

    主题

    3007

    回帖

    6781

    积分

    超级版主

    积分
    6781
    发表于 2023-4-17 12:03:58 | 显示全部楼层
    13668840876 发表于 2023-4-17 11:18
    梁工好,以上问题已解决,是因为使用了 LCM中断向量,但是该中断号大于 31但是没有用汇编处理导致的,处 ...

    嗯,解决就好。
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    14

    主题

    70

    回帖

    339

    积分

    中级会员

    积分
    339
     楼主| 发表于 2023-4-17 12:11:37 | 显示全部楼层
    神农鼎 发表于 2023-4-17 11:45
    深圳国芯人工智能有限公司-工具软件 (stcai.com)

    用小工具拓展后,void LCM_Interrupt(void) interrupt 59  中断号改为 59后会有warning提示:MEMORY SPACE OVERLAP,这个告警信息说明拓展成功了么?直接忽略这个警告就可以了么
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    半小时前
  • 签到天数: 112 天

    [LV.6]常住居民II

    0

    主题

    81

    回帖

    642

    积分

    高级会员

    积分
    642
    发表于 2023-11-28 08:54:47 | 显示全部楼层
    学习
    回复 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-15 09:36 , Processed in 0.076018 second(s), 71 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表