tms320lf2407考试_tms320lf2407 开发环境_tms320lf2407(87)

电脑杂谈  发布时间:2017-01-30 03:04:38  来源:网络整理

哈尔滨 工业 大 学—— DSP 原 理与应 用实 验 指导书

III- 32

PWM1

PWM2

PWM3

PWM4

1ms

8ms

哈尔滨工业大学——DSP 原理与应用实验指导书

III-33

实验七 外设控制实验—发光二极管阵列显示实验

一,实验目的

通过实验学习使用 2407A DSP 的扩展 I/O 端口控制设备的方法,了解发光二极管阵列的控制编程方法。

二,实验设备

计算机,ICETEK-LF2407-EDU实验箱。

三,实验原理

ICETEK-LF2407-A 是一块以 TMS320LF2407ADSP 为核心的 DSP 扩展评估板,它通过扩展接口与实验箱的显示/控制模块连接,可以控制其各种设备。

发光二极管显示阵列的显示是由I/O扩展端口控制,DSP须将显示的图形按列的顺序存储起来(88 点阵,8 个字节,高位在下方,低位在上方),然后定时刷新控制显示。具体方法是,将以下控制字按先后顺序、每两个为一组发送到端口0x8005,

发送完毕后,隔不太长的时间(以人眼观察不闪烁的时间间隔)再发送一遍。由于位值为“0”时点亮,所以需要将显示的数据取反。

0x01,第8列数据取反,0x02,第7列数据取反,

0x04,第6列数据取反,0x08,第5列数据取反,

0x10,第4列数据取反,0x20,第3列数据取反,

0x40,第2列数据取反,0x80,第1列数据取反,

四,实验程序

#include "2407c.h"

ioport unsigned int port8000;

ioport unsigned int port8005;

ioport unsigned int port8007;

void Delay(unsigned int nTime); // 延时子程序

void RefreshLEDArray(); // 刷新显示

void SetLEDArray(int nNumber); // 修改显示内容

unsigned char ledbuf[8],ledx[8];

unsigned char ledkey[10][8]=

{

哈尔滨工业大学——DSP 原理与应用实验指导书

III-34

{0x00,0x00,0x7C,0x82,0x82,0x82,0x7C,0x00},//0

{0x00,0x00,0x00,0x84,0xFE,0x80,0x00,0x00},//1

{0x00,0x00,0x84,0xC2,0xA2,0x92,0x8C,0x00},//2

{0x00,0x00,0x44,0x92,0x92,0x92,0x6C,0x00},

{0x00,0x00,0x30,0x28,0x24,0xFE,0x20,0x00},

{0x00,0x00,0x4E,0x92,0x92,0x92,0x62,0x00},

{0x00,0x00,0x7C,0x92,0x92,0x92,0x64,0x00},

{0x00,0x00,0x02,0xC2,0x32,0x0A,0x06,0x00},

{0x00,0x00,0x6C,0x92,0x92,0x92,0x6C,0x00},

{0x00,0x00,0x4C,0x92,0x92,0x92,0x7C,0x00}

};

main()

{

int nCount;

asm(" setc INTM"); /* 关中断,进行关键设置时不允许发生中断,以免干扰 */

*WDCR=0x6f;

*WDKEY=0x5555;

*WDKEY=0xaaaa; /* 关闭看门狗中断 */


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-29489-87.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...