三.实验原理 1.扩展IO接口:
F2812是一块以TMS320F2812DSP为核心的DSP扩展评估板,它通过扩展IO接口与实验箱的显示/控制模块连接,可以控制其各种外围设备,也可以接收外设发送的各种数据、信息。
2.键盘控制方法:键盘接收寄存器MCTRKEY地址由Port8005给出,键盘清除寄存器CTRCLKEY地址由Port8006给出。使能液晶模块后,每当有键盘按下,MCTRKEY中的相应位就会置1,向CTRCLKEY中写入0会将MCTRKEY清零。 3.实验程序流程图:
是否有键盘输入? 读键盘接收寄 存器并清键盘 初始化液晶屏幕 开始 将相应指示灯置位
四.实验步骤
1.实验准备
(1)连接实验设备。
(2)将ICETEK-CTR板的供电电源开关拨动到“开”的位置。 2.设置Code Composer Studio 2.21在硬件仿真(Emulator)方式下运行 3.启动Code Composer Studio 2.21选择菜单Debug→Reset CPU。 4.打开工程文件工程目录:D:\\dsp\\t4\\key\\key.pjt 浏览key.c文件的内容,理解各语句作用。 5.编译并下载程序
6.运行程序观察结果
运行程序后,按下键盘K1-K8的任意键,指示灯led4-led11中会有一个相应的指示灯点亮。 7.结束程序运行,退出CCS。
五.实验结果
实验结果:可以观察到指示灯led4-led11受键盘控制点亮熄灭。
分析:在程序中加入分支语句实现对不同键盘输入值的处理或支持控制型按键。
— 26 —
(3)液晶显示器控制显示
一.实验目的
通过实验学习使用2812ADSP的扩展I/O端口控制外围设备的方法,了解液晶显示器的显示控制原理及编程方法。
二.实验设备
计算机,ICETEK-F2812-EDU实验箱(或ICETEK仿真器+ICETEK-F2812-A系统板+相关连线及电源)。
三.实验原理
1.扩展IO接口:
F2812-A是一块以TMS320F2812DSP为核心的DSP扩展评估板,它通过扩展接口与实验箱的显示/控制模块连接,可以控制其各种外围设备。
2.液晶显示模块的访问、控制是由F2812 DSP对扩展接口的操作完成。
控制口的寻址:液晶屏幕指令寄存器LCDCOMMAND的地址为Port8001,液晶屏幕参数寄存器LCDDATA的地址为Port8002,液晶屏幕状态字寄存器LCDSTATUS的地址为Port8000。 3.显示控制方法:
本实验中使用已写好的库函数对液晶屏幕进行操作。需要在工程文件中加入库lcd.lib以及头文件lcd.h。
下面给出lcd.lib的控制液晶屏幕的接口函数及其功能描述:
LCDSetOrigin(int nX,int nY): 重新设定新原点的位置,nX,nY为新原点的坐标。初始时默认原点为(0,0),即屏幕左下角。
LCDSetScreenBuffer(unsigned int *_pScreenBuffer):设置屏幕缓冲区指针,缓冲区为30*128字,所有向屏幕进行的写操作都要先把数据写到缓冲区内,缓冲区位置需要在编程时预先设定,通常开辟一个长度为30*128的一维数组。 LCDTurnOn(): 打开显示器
LCDTurnOff(): 关闭显示器 LCDCLS(): 清屏幕
LCDSetDelay(unsigned int nDelay) :设置液晶读写反应时间,参数:DSP主频8MHz时取0, 160MHz时取1 _Delay(unsigned int nTime) :延时函数
LCDRefreshScreen(): 用缓冲区中的数据刷新屏幕
LCDPutPixel(int x,int y,unsigned int color) :写点到屏幕,输入参数坐标值和颜色,颜色0消 点,1画点,2异或画点
LCDGraph(struct struLCDGraph *Gstru) :按照定义的参数(在结构中)绘制图形
LCDWriteBytes(unsigned int *pData,int x,int y,unsigned color) :屏幕写字符8x8
LCDPutCString(unsigned int *pData,int x,int y,unsigned int nCharNumber,unsigned color) : 屏幕写中文
字符串,*pData为输入字符串在内存中的起始地址,x, y为字符串左上角的坐标,nCharNumber为
显示的中文字数,color为颜色。
void LCDDrawLine(int x1,int y1,int x2,int y2,unsigned color):在屏幕上画线段,x1, y1为线段起点坐标,x2, y2为线段终点坐标。
关于显示字符串LCDPutCString (unsigned int *pData,int x,int y,unsigned int nCharNumber,unsigned
— 27 —
color)函数,输入的字符串数据可由字模提取插件生成,字模提取插件的地址为C:\\ICETEK-VC5416ar-AG-EDULab\\lab0403-lcd\\ZI_MO.EXE。其使用步骤如下: 1) 双击ZI_MO.EXE的图标,在左下角的汉字输入区键入想要生成的字符串。 2) 点击上排中部的预览键,将字符串显示到中间部分的模拟显示区。 3) 在上排横,纵,倒三个选项中只选择“纵”选项。
4) 选择上下镜像选项使字符串上下颠倒。
5) 选择生成C51格式的点阵数据,此时左下角的点阵数据生成区会生成8位宽的数据点阵。 6) 将生成的8位数据点阵每前后相邻的两个数据和并成一个16位的数据,然后制作成数组,将其相
关参数传递给LCDPutCString函数,即可在屏幕上显示字符串。
上下镜像 纵 C51格式的点阵数据 模拟显示区 点阵数据生成区 汉字输入区
说明:在进行屏幕显示时应遵循以下步骤: 1) 调用LCDTurnOff()函数关屏幕
2) 调用LCDSetScreenBuffer(unsigned int *_pScreenBuffer)函数确定屏幕缓冲区位置并清缓冲区 3) 调用LCDSetDelay(unsigned int nDelay)函数设置液晶读写反映时间 4) 调用LCDTurnOn()函数打开显示屏 5) 调用LCDCLS()函数清屏幕 6) 调用各种屏幕画图函数
7) 结束程序,退出主循环依次调用函数LCDCLS(),LCDTurnOff(),LCDSetDelay(0),exit(0)关闭屏。 2. 液晶显示器与DSP的连接:
— 28 —
5.数据信号的传送:
由于液晶显示模块相对运行在高主频下的DSP属于较为慢速设备,连接时需要考虑数据线上信号的等待问题;
电平转换:由于DSP为3.3V设备,而液晶显示模块属于5V设备,所以在连接控制线、数据线时需要加电平隔离和转换设备,如:ICETEK-CTR板上使用了74LS245。 6. 实验程序流程图
开始 初始化DSP 初始化液晶显示屏幕 调用生成字符串函数在屏幕写字 调用写点函数在屏幕画线 调用写字符函数显示数字0至9 调用画线函数在屏幕画移动方框
关屏幕,退出程序 是否结 束循环 结束 — 29 —
四.实验步骤
1.实验准备
(1)连接实验设备。
(2)将ICETEK-CTR板的供电电源开关拨动到“开”的位置。
2.设置Code Composer Studio 2.21在硬件仿真(Emulator)方式下运行 3.启动Code Composer Studio 2.21 选择菜单Debug→Reset CPU。 4.打开工程文件
工程目录:D:\\dsp\\t4\\lcd\\lcd.pjt
浏览LCD.c文件的内容,理解各语句作用。 5.编译、下载程序。 6.运行程序观察结果
7.更改程序中对页、列的设置,实现不同位置的显示。 8.自己设计一些控制语句,实现不同显示效果。 9.结束程序运行,退出CCS。
五.实验结果与分析
实验结果:屏幕左上角会显示教学实验箱5个中文字符,左下角会化出一条斜线,然后先显示数字从0到9再从9到0,最后会移动显示一个边长为10的正方形。
六.问题与思考
试设计程序在液晶显示屏上显示计时时钟,精确到秒,形式为“时时:分分:秒秒”。
实验五 外设控制—音频信号发生实验
一.实验目的
通过实验学习使用2812DSP的扩展端口控制外围设备信息的方法,掌握使用2812DSP通 用计时器的控制原理及中断服务程序的编程方法;了解蜂鸣器发声原理和音乐发生方法。
二.实验设备
计算机,ICETEK-F2812-EDU实验箱(或ICETEK仿真器+ICETEK-F2812-A系统板+相关连线及电源)。
三.实验原理
1.EMIF接口
TMS320F2812DSP的扩展存储器接口(EMIF)用来与大多数外围设备进行连接,典型应用如连接片外扩展存储器等。这一接口提供地址连线、数据连线和一组控制线。ICETEK-F2812-A将这些扩展线引到了板上的扩展插座上供扩展使用。
2.蜂鸣器由DSP上PWM2设置为通用I/O管脚输出控制,可将此管脚上的频率输出转换成声音输出。
控制的方法是使用DSP通用定时器设置PWM2管脚以一定的频率改变高低状态,输出方波。
— 30 —
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库DSP2812实验指导书第三部分(6)在线全文阅读。
相关推荐: