




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微处理器系统综合设计微处理器系统综合设计 5151 单片机单片机 FMFM 收音机收音机 课课 程程 设设 计计 报报 告告 姓名姓名 朱洪涛朱洪涛 学号学号 0 学院学院 计算机科学与技术学院计算机科学与技术学院 班级班级 通信通信 1304 1 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 1 设计要求设计要求 51 单片机 FM 收音机分为硬件电路和程序设计两个方面 从硬件电路来说 主要是实现所需电压值 稳压 搜台 控制和频率显示等方面 从系统程序来说 主要是通过软件来实现 RDA5807 模块的功能 最后将程序经过编译后所生成的后 缀为 HEX 的文件烧录到单片机芯片中 使用 IIC 总线方式调台 并且得到当前的 频率 处理并实现频率转换 显示 2 项目概述项目概述 2 1 主要功能主要功能 该项目实现的主要功能及参数 1 采用液晶作为显示器 2 可接收 87 5 108MHz 范围内的调频广播电台 3 立体声 耳机输出声音 4 按键可实现音量调节和自动搜台两个功能 2 2 设计方案设计方案 项目采用 电子积木 底板 的形式 通过电子积木拼接 实现项目功能 主 要积木包括 51 单片机核心板 独立按键模块 FM 模块 LCD1602 液晶模块 系统框图 2 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 51 单片机 FM 收音机实物图 初始化 LCD显示初始值 检测是否有按键按下 模块进行搜索频道和 音量的相关变化 LCD显示当前频率值和 音量值 结束 程序框图 3 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 3 硬件电路硬件电路 F M 接 收 模 块 该模块采用 RDA5802E 芯片为核心的 新一代数字调频收音机模块 具有 比传统模拟制式收音机模块更突出的性能表现 音质极佳 噪音极少 功耗更 低 集成度高 接收灵敏度高 中频选择性好 通用 I2C 总线控制 外围应用 元件少 噪声系数低 创 新 平 台 底 板 该底板采用标准定位孔的设计 并集成有 5V 直流电源接口及自锁电源开 关 3 3V 电源 8 路 LED 显示 外接接口拓展等 在课程设计中 为各模块提 供固定 供电和接口转换功能 51 单 片 机 核 心 模 块 4 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 51 单片机核心板即 CORE51 BOARD 模块 该模块为 51 单片机最小系统 板 采用标准定位孔的设计 支持 JTAG 和串口两种下载方式 四组 I O 口全 部引出 可广泛用于单片机基础学习和电子创新等电子电路的微控制系统 LC D1 60 2 液 晶 模 块 LCD1602 液晶模块 即 LCD1602 BOARD 板 该模块以工业液晶 LCD1602 为核心 采用标准定位孔的设计 在原有液晶的基础上增加了背光控 制功能 该模块能够同时显示 2 行 16 列共计 32 个字符 8 位 独 立 按 键 模 块 本模块共 8 个独立按键 分别分为 上 下 左 右 键和 A B C D 四个功能键 每个按键对应一个输出端口 输出端默认高电平 当对应按键按 下时 输出低电平 4 软件程序软件程序 4 1 程序流程程序流程 本项目采用 C51 语言开发 在集成开发环境 KEIL 中编写完成 5 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 1 初始化初始化 开机后 完成的初始化包括 1 串口初始化 串口初始化之后 可通过 printf 语句通过串口打印信息 可以作为程序调试的 方法 2 液晶初始化 液晶 LCD1602 初始化 并显示 开机界面 然后再清屏 2 主循环主循环 1 显示当前频率及音量信息 调用 Lcd Display 根据变量 frequency 及 volume 显示 2 根据键值 执行相应程序 如果 4 个按键有按下的 分别会执行 自动搜台加减和音量加减 4 2 主要函数主要函数 1 库函数库函数 I2C h 该文件包括了 I2C 总线驱动的一些基本函数 主要包括 1 I2C 启动函数 I2C start 2 I2C 停止 I2C stop 3 写单字节 I2C write byte unsigned char indata 4 读单字节 I2C read byte unsigned char ack 2 LCD1602 液晶驱动液晶驱动 液晶 LCD1602 的驱动主要由 1 测试 LCD 遇忙检测 BOOL lcd bz 2 写入指令数据到 LCD void lcd wcmd BYTE cmd 3 设定显示位置 void lcd pos BYTE pos 4 写入字符显示数据到 LCD void lcd wdat BYTE dat 5 LCD 初始化设定 void lcd init 几个构成 调用时 通过下面例程 实现显示 lcd pos 0 x00 设定显示位置为 第一行第一个 for i 0 i 16 i lcd wdat logo1 i 6 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 3 FM 模块相关函数模块相关函数 FM 模块与单片机通过 I2C 总线通信 相关函数有 1 写数据 RDA5807 write reg void 2 读数据 RDA5807 read reg uchar buff 3 自动搜台 RDA5807 FM seek void 4 3 主程序主程序 程序功能 FM 收音机功能 其中 T D 键为频率设置 L R 键为音量设置 硬件连接 1 LCD1602 P0 接 D0 D7 RS P2 2 RW P2 1 E P2 2 2 FM 模块 SDA P3 7 SCL P3 6 3 按键 T P1 3 自动搜索频率加 D P1 2 自动搜索频率减 L P1 1 音量加 R P1 0 音量减 include include include include include include rda5807 h include delay h include lcd1602 h define uchar unsigned char define uint unsigned int define GPIO DIG P2 sbit K1 P1 3 K1 接 P1 3 口 自动搜索频率加 sbit K2 P1 2 K2 接 P1 2 口 自动搜索频率减 sbit K3 P1 1 K3 接 P1 2 口 音量加 sbit K4 P1 0 K4 接 P1 0 口 音量减 sbit led1 P1 7 led 灯 1 sbit led2 P1 6 led 灯 2 sbit voice P1 4 蜂鸣器接口 数码管 7 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 char led mod 0 xc0 0 xf9 0 xa4 0 xb0 0 x99 0 x92 0 x82 0 xf8 0 x80 0 x90 共阳数码管显示编码 unsigned char distab 0 x40 0 x79 0 x24 0 x30 0 x19 0 x12 0 x02 0 x78 0 x00 0 x10 char led bit 0 x07 0 x0B 0 x0D 0 x0E 位选信号编码 unsigned int DisplayData 4 0 0 0 0 串口初始化 void UART init TMOD 0 x20 定时器 1 工作于 8 位自动重载模式 用于产生波特率 TH1 0 xFD 波特率 9600 TL1 0 xFD SCON 0 x50 设定串行口工作方式 PCON 波特率不倍增 TR1 1 启动定时器 1 IE 0 x0 禁止任何中断 TI 1 void delay1ms unsigned int ms unsigned char k while ms for k 0 k 120 k 蜂鸣器 void ring int i for i 0 i 100 i voice 0 蜂鸣器开 delay1ms 1 voice 1 蜂鸣器开 delay1ms 1 主函数 void main void 8 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 unsigned long frequency 87000 设置当前频率为 87MHZ unsigned int volume 9 设置当前音量值为 9 UART init printf UART test n lcd init displogo delayms 10000 lcd init RDA5807 power while 1 led1 1 led2 1 Lcd Display frequency volume show frequency if K1 0 自动搜索频率加 led1 0 delayms 20 if K1 0 ring while K1 0 RDA reg data 0 1 1 SEEK UP frequency RDA5807 FM seek printf frequency ld n frequency if K2 0 自动搜索频率减 led1 0 delayms 20 if K2 0 ring while K2 0 RDA reg data 0 RDA reg data 1 0 x01 RDA reg data 3 RDA reg data 7 音量递减 RDA5807 write reg volume RDA reg data 7 printf volume d n volume if K4 0 音量减 led2 0 delayms 20 if K4 0 ring while K4 0 if RDA reg data 7 RDA reg data 1 0 x01 10 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 RDA reg data 3 RDA reg data 7 RDA5807 write reg volume RDA reg data 7 printf volume d n volume 5 拓展功能拓展功能 在本项目的基础上增加功能 参考 FM 收音机设计 可用数码管直接显示当前 频率 数码管显示主程序如下 数码管显示 void show unsigned long f unsigned int i unsigned int j DisplayData 0 f 取百位 DisplayData 1 f 10000 取十位 DisplayData 2 f 10000 1000 取个位 DisplayData 3 f 10000 1000 100 取小数点后一位 i 0 while i 4 P3 0 xFF 关位选 防止显示混乱 if i 2 P2 led mod DisplayData i 送显示编码 else P2 distab DisplayData i 送显示编码 P3 led bit i j 600 while j 11 微微 处处 理理 器器 系系 统统 综综 合合 设设 计计 i P2 0 xFF P3 0 xFF 6 系统设计总结系统设计总结 本次课程设计经过一周时间的磕磕碰碰之后终于圆满完成了 经过本次课设 我将模拟电子电路 单片机 C 语言程序设计的知识重新学习了一遍 并运用到实 际中 可以说 这一次的课程设计让我对整个的电子电路设计过程有了一个重新的 认识 并且 我学会了怎么去查阅资料 也认识到了之前所学的电路知识只有在运 用实际电路中才能对它们有着更深刻的认识 本次设计的重点是最小系统的制作和对模块程序的消化 在我的原理设计中 各个集成块的外围电路都不是特别复杂 于是整个设计的重点就落在了程序的设计 上 所以单片机知识
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨文化健康行为差异-洞察及研究
- 浙江省2025-2026学年七年级语文上学期第一次月考复习试卷(含答案)
- 数据存储系统的分布式设计与优化方法-洞察及研究
- 部门安全生产培训制度课件
- 部门二级安全培训时长课件
- 避坑房产课件
- 基于循环经济的刮板链废旧部件资源化利用路径探索
- 基于元宇宙技术的虚拟现场重建与跨时空图像传输溯源研究
- 基于AI图像识别的动态分级系统与农业物联网集成瓶颈
- 国际标准对接中国产产床核心部件的供应链韧性研究
- 印刷品供货及质量保障措施服务技术方案投标
- 国家网络安全知识竞赛题库含完整答案【必刷】
- 实验室生物安全程序文件
- 中医技术培训课件:《穴位贴敷临床应用》
- 土方工程设计说明
- TL-PMM180超低烟尘使用及维护培训
- 有趣营销案例分析
- 小学1-6年级英语知识点归纳汇总
- 品质部组织架构与职位体系
- 财政局经建科知识讲座
- 《观察与沟通》课件
评论
0/150
提交评论