野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 14370|回复: 3

【原创】初次接触GUI和emWin,一步一步找到函数调用的根源!以MP3播放为例。

[复制链接]
发表于 2016-1-14 18:25:09 | 显示全部楼层 |阅读模式
这几天一直研究MP3的播放,及MP3的格式和编码解码方法,网上很多资料都是比较笼统。而搜到的google上的图书,都是绝版的,而且是欧美国家的大学老师编的。通过联系,说已经没有书的备份了。老外很有意思啊。逼得没有办法还得自己寻找。搜了一天一夜资料。先按下不表,改天把自己的总结小文分享出来。应大版主的要求!

前几天为了追踪程序是否解压缩出PCM数据,倒是通过下断点的方法找到调用的函数player_run(),然后调用的mp3_player(),  可是我今天试图从头开始,通过F11逐行调试的方法跟踪下去,看看到底怎么调用的那个播放函数。结果跟踪到emWin的函数时就根本跟踪不下去了。直接在STM32上就出现了桌面和图标界面了,单击图标就直接开始播放起来了。心里不由得一惊。乖乖,怎么还跟踪不了它了啊?那我就倒着来吧。追本溯源的方法,终于搞清了他的来龙去脉了。略作总结,以资留念。

看抓图顺序就明白的很了。看来GUI界面用的emWin系统用的是回调函数法啊。老窝在这里呢。也就是说,界面上的每个按钮、图标等控件,一旦发生了单击事件,就自动调用所谓的回调函数,以实现某些功能。比如播放MP3等。

调用顺序1.jpg

调用顺序2.jpg

调用顺序3.jpg

调用顺序4.jpg


调用顺序5.jpg


调用顺序6.jpg
回复

使用道具 举报

发表于 2016-1-15 08:58:42 | 显示全部楼层
感谢分享
回复

使用道具 举报

 楼主| 发表于 2016-1-15 09:15:37 | 显示全部楼层

哈哈,还请大神多指点昂!
回复 支持 反对

使用道具 举报

发表于 2016-4-27 20:34:39 | 显示全部楼层
(づ ̄3 ̄)づ╭❤~请问能把程序代码分享一份吗???谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-1-12 06:17 , Processed in 0.032249 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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