找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1738|回复: 0
收起左侧

基于SC95F8616单片机的中文菜单MP3点歌器 (1)

[复制链接]
ID:776997 发表于 2020-8-6 21:48 | 显示全部楼层 |阅读模式
SC95F8616开发板是一个核心板式的最小系统,因此它的资源是全部向外敞开的。基于此这里就将它与OLED屏、软按键、MP3播放模块等组合在一起,来构建一个具有中文歌曲选择播放功能的播放器,其构成如图1所示。
1.jpg
图1 硬件构成

在程序设计方面,采用易码魔盒来开发,所涉及内容有OLED驱动函数的构建、按键的菜单选择及MP3的功能选择、串行通讯及MP3的指令发送等。
1.创建新工程
1)进入易码魔盒后,创建一个新工程。
2)将芯片型号设为“SC95F8616”,然后单击“开始项目”。
3)在芯片配置视图,按图2进行引脚配置,并按图3来设置UART0选项,按图4来设置独立按键选项。
2.jpg
图2 引脚配置

3.jpg

图3  UART0设置
4.jpg
图4  独立按键设置

这样就形成了,以P20为串行通讯的接收端,P21为串行通讯的发送端;以P07为按键的公共GND;以P12为OLED屏的数据端,P13为OLED屏的时钟端的引脚分配布局。
4)点击“生成工程源代码”, 则在“工程代码”栏可见到生成的内容,其程序结构和程序如图5所示。
   5.jpg

6.jpg
7.jpg
8.jpg
图5 程序结构和初始化程序

2.实现串行通讯
1)完成变量的添加
9.jpg
2)在用户程序图形化编辑视图,完成图6所示流程,并对条件控制语句加以配置。
10.jpg
图6程序流程

11.jpg 12.jpg
图7 配置条件控制语句

3)点击“生成工程源代码”, 则可得到图8所示的主程序和串行通讯中断处理服务程序。
13.jpg

14.jpg
图8生成代码

4)点击“编译”工具图标,完成代码编译后如图9所示。
15.jpg
图9 完成编译

5)点击“烧录”工具图标,完成程序下载后如图10所示。
16.jpg
图10 执行下载

6)在串行通讯验证前,先将P21和P20分别与串口通信模块的RXD和TXD引脚连接。
打开串口调试工具并进行相应的设置后,发送数据,则可见到相应的接收数据,说明通讯正常,见如图11所示。
17.jpg
图11 串口通信验证

7)发送字节数据的功能实现,首先定义变量n,以便存放发送的字节内容。
18.jpg
8)添加2个功能函数,其内容如下:
void delay(unsignedint z)
{
         unsignedint x,y;
         for(x=z;x>0;x--)
                   for(y=110;y>0;y--);
}

void SendByte(uint8_tData)
{
     SBUF = Data;
          delay(60);
}
9)按图12所示,添加自定义函数。
19.jpg
20.jpg 21.jpg

图12 添加自定义函数

10)完成如下主程序的修改,并加以编译。下载后,运行的结构如图15所示。
22.jpg
图13修改主程序

23.jpg
图14 生成的主程序

24.jpg
图15 运行结果

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

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

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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