电子时钟设计
一、实验目的
1.掌握 C6713 的中断结构和对中断的处理过程。
2.掌握 C6713 定时器的控制和使用方法。
3.掌握键盘的使用原理及编程方法。absolutely
4.掌握使用C6713DSP的扩展空间控制外围设备信息的方法;了解蜂鸣器发声原理和音乐发生方法;了解液晶显示器的显示控制原理及编程方法。
5.掌握C6713的系统自启动设计方法。
6.掌握DSP开发的流程及方法。
国际学校招生
通过课程设计,使学生综合运用DSP技术课程和其他有关课程的理论和生产实际知识去分析和解决具体问题的能力得到提高,并使其所学知识得到进一步巩固、深化和发展。初步培养学生
对工程设计的独立工作能力。学习设计的一般方法,以及锻炼我们查阅资料、方案比较、团结合作的能力。学会简单电路的实验调试和整机指标测试方法,增强我们的动手能力,为以后学习和工作打下基础。
二、实验准备
1.连接实验设备:计算机及ICETEK-C6713-EDU 实验箱。
2.将ICETEK-CTR 板的供电电源开关拨动到“开”的位置。 “扩展模块电源开关及其指示灯”。
3.设置Code Compor Studio 3.1在硬件仿真方式下运行。。
4.启动Code Compor Studio 3.1。
选择菜单Debug→Ret CPU。
5.打开工程文件: C:\ICETEK\VC5409Ae\VC5409Ae\DTK-LCDKEY\TEXT.pjt。浏览TXET.c 文件的内容,理解各语句作用。
6.编译、下载程序。
7.运行程序观察结果。
8.更改程序中对页、列的设置,实现不同位置的显示。
9.自己设计一些控制语句,实现不同显示效果。
10.结束程序运行,退出CCS。
三、实验内容
1.液晶显示屏显示小时分钟秒(格式为XX:XX:XX),可通过键盘设定为24小时制。
2.小时和分钟可通过键盘定位并修改。定位时小时位或分钟位闪烁,可用“+”和“-”增加减少两种方法改动时间。
3.整点、半点报时,声音自由设定。
四、实验原理
1.定时器及其中断和外中断原理
通用计时器及其控制方法
C6000系列DSP在片内集成了32位的通用定时器,可以实现事件计数 时间定时 产生脉冲信号 产生CPU中断信号 产生DMA同步时间
定时器的控制寄存器
Timer0 | Timer1 | 寄存器名 | 功能 |
01940000 | 01980000 | 定时控制寄存器CTL | 设置定时器的工作模式监视定时器状态设置TOUT管脚功能 |
01940004 | 01980008 | 定时控制寄存器PRD | TSTAT信号的频率定时器 |
| | | |
C6000的定时器实现的是加计数,真正的计数工作在CNT寄存器中进行,当计数寄存器中的值达到PRD寄存器的值时,自动从新清零。
中断控制
中断是为了使CPU具有对外界异步事件处理能力而设置的。当几个中断源同时向CPU请求中断时,CPU会根据中断源的优先级别,优先响应优先级别最高的中断请求。TM320C6000有11个寄存中断管理服务:
控制状态寄存器:CSR 控制全局使能或禁止中断
中断使能寄存器:IER 使能或禁止中断处理
中断标志寄存器:IFR 指示有中断请求但未被响的中断发生
中断清除寄存器:ICR 清除IFR中的标志位
中的设置寄存器:ISR 手动设置IFR中的标志位
中断服务表指针:ISTP 指向中断服务表的起始地址
jockey不可屏蔽中断返回指针:NRP 包含从不可屏蔽中断返回的地址,该中断返回通过BNR
P指令完成
南京电脑可屏蔽中断返回指针:IRP 可屏蔽中断返回的地址
中断选择寄存器IML 可选择CPU中断10-15号对应的中断源
中断选择寄存器IMH 可选择CPU中断4-9号对应的中断源
外中断极性选择寄存器EIP 选择外中断(Int4-int7)的触发极性
中断响应过程
外设事件要引起CPU中断,必须保证:CSR使能中断,IER相应位被使能(置1,ST1寄存器中的INTM使能(置0),中断服务表相应位置放置服务程序入口地址转移指令,相应中断源放入 IML 或 IMH适当位置。
当 CPU响应中断时,PC 指针指向中断向量表中对应中断的地址,进入中断服务子程序。中断向量表是 DSP 存放中断服务程序的一段内存区域,大小为 80H。在中断向量表中,
每一个中断占用 32 个字的空间,一般情况是将一条跳转或延时跳转指令存放于此。中断向量表的位置是可以改变的,修改 ISTP寄存器中的中断向量表基地址可以实现这一点。
程序设计
-程序中应包含中断向量表。
-向量表中每项为 32 个字,存放跳转指令,跳转指令中的地址为相应服务程序入口地址。第一个向量表的首项为复位向量,即 CPU复位操作完成后自动进入执行的程序入口。
-程序中包含相应的中断服务程序,应将其入口地址加入相应中断向量表中。
-在程序中重定位中断向量表到本程序的中断向量表地址;设置中断源(IML,IMH)、中断屏蔽寄存器 IER。
2.键盘使用方法
ICETEK-C6713-A是一块以 TMS320C6713DSP 为核心的 DSP 扩展评估板。 键盘的扫描
码由 DSP 的扩展地址 0901f0002H给出, 当有键盘输入时, 读此端口得到扫描码,当无键被按下时读此端口的结果为 0。读取的方法如下:
nScanCode=*((unsigned short int *)0901f0002); // nScanCode中为扫描码
nnn=*((unsigned short int *)0901f0004); // 读操作清除键盘缓冲区
3.液晶显示器的控制
LCD控制寻址: 命令发送的地址为0901f0002H, 数据发送的地址为0901f0006H和0901f0008H,辅助控制的地址为 0901f0004H。
显示控制方法: -液晶显示模块中有两片显示缓冲存储器,分别对应屏幕显示的象素,向其中写入数值将改变显示,写入“1”则显示一点,写入“0”则不显示。其地址与象素的对应方式如下:
左侧显示内存 | 右侧显示内存 |
Y= | 0 | 1 | ··· | 62 | 63 | 0 | 1 | ··· | 62 | 63 | 行号 |
X=0 ↓ X=7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | 小学生英语报DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | 0 ↓ 7 |
DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | 8 ↓ 55 |
DB0 ↓DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | shemaleDB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓英语问候语 DB7 | DB0 ↓ DB7 | DB0 ↓ DB7 | DB0 ↓英文抒情歌曲 DB7 | 56 ↓ 63 |
| | | | | | | | | | | |
发送控制命令:向液晶显示模块发送控制命令的方法是通过向命令控制地址写入命令控制字,然后再向辅助控制地址写入 0。由于液晶模块相对于 DSP 来讲是慢速设备,在命令之间可能需要增加延时语句,或将 CE1 空间的 EMIF 访问控制寄存器设置的访问延时加大。日文原来如此
4.蜂鸣器发声
蜂鸣器由 DSP 通用 I/O管脚 DX0 输出控制, 可将此管脚上的频率输出转换成声音输出。 C6713的通用 I/O口控制蜂鸣器的输出频率。
控制的方法是使用 DSP 通用定时器设置 DX0 以一定的频率改变高低状态,输出方波。对于通用定时器周寄存器的设置,计数值为所需频率计数值的二分之一。
音乐的频率(C 调):
| C | D | E | F | G | A | B | ^ C |
| 1 | 2 | 3 | 4 | 52020年9月四级真题 | 6 | 7 | ^1 |
C | 264 | 297 | 330 | 352 | 396 | 440 | 495 | 528 |
| | | | | | | | |
蜂鸣器的连接:由于选用的蜂鸣器所需电流较小,所以采用将 DSP 通用 I/O 引脚直接驱动的方式。
程序首先应设置全局控制寄存器中的 BUZZE 位为‘1’ ,再使用 DSP 通用定时器设置 DX0以一定的频率改变高低状态,输出方波。
五 、程序设计
1.设计思路
本设计实现了试验的部分要求,试验要求是设计一个多功能电子时钟,所以采用了多键盘标志来实现功能的控制。具体思路如下:
显示器及键盘控制关系是:NumLock 控制小时;/ 对分钟进行控制;* 退出。
用“+”和“-”来分别对事件进行加减。
当分钟和秒钟分别显示30和00时,进行半点报时。当分钟和秒钟分别显示0和00时,进行正点报时。
该程序实行的是24小时制,当数到23:59:59后,跳变为00:00:00,从新开始计数。
2.设计流程图
N
Y
六、设计总结
本次的课程设计主要是针对LCD液晶显示模块进行实现功能的代码编写。在整个的设计和操作阶段都还比较的顺利,但是在后期的调试过程中发现一些错误,这是由于我最初设计的时候不够细致所造成的,虽然最后我还是解决了问题,但还是对我的设计进度造成了很大的影响,这是非常值得我注意并且应该避免的。在调试过程中,难免会遇到很难解决或者自己无法解决的问题,在遇到问题时,要沉着冷静,首先自己要不断尝试修改,实在无法完成时,再向同学、老师寻求帮助,在交流中收获知识,达到查漏补缺的效果。当自己独立完成实验的调试运行,看到实验达到要求的时刻,是实验最快乐的时刻,也是有所收获,感觉充实的时刻。
通过课题的研究与设计,使我进一步掌握了DSP基本理论,对DSP技术及DSP技术的应用有了更深刻的认识,并使自己所学的各种知识得到了全面的应用,提高了分析问题解决问题的能力
最后,由衷的感谢学校给了我这次学习进步锻炼自我的机会,感谢老师在我学习的过程中孜孜不倦的教导我如何思考问题解决问题,秉承着严谨认真的科学态度使我圆满的完成了这次课程设计任务。
附录
#include "ICETEK-C6713-A.h"