网站大量收购闲置独家精品文档,联系QQ:2885784924

嵌入式系统课程设计.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

《嵌入式系统》课程设计

一、目的

《嵌入式系统》课程设计为学生提供了一个理论与实践相结合的机会。既锻炼了学生动手能力,又会加深理解学生在课堂所学习的理论知识。通过课程设计可以将课本上的理论知识和实际应用有机的结合起来,培养学生又动脑,又动手,独立思考分析问题的能力,提高学生运用所学知识解决实际问题的综合素质。

《嵌入式系统》课程设计的主要目标是:

(1)掌握构建嵌入式系统软硬件平台的基本技能;

(2)具备基本嵌入式系统下C语言编程能力、嵌入式操作系统基本调试的能力;

(3)了解应用嵌入式系统技术开发一套嵌入式系统设备的方法。

二、设计题目

基于ARM的滚屏LED广告牌开发

三、设计原理

1、点阵LED屏硬件原理

EMBEST实验平台设计了一个16×16的点阵屏。点阵屏由发光LED矩阵块组成。16×16点阵屏即屏上有16×16个LED发光二极管,每个发光二极管可理解为一个像素点,它们被按着行与列的形式整齐地排列,通过控制每个LED(像素点)的亮灭,点阵屏可与计算机同步显示汉字、英文文本和图形。本实验平台的点阵屏电路如下图:

图1点阵屏的行扫描信号

图2点阵屏的列扫描信号

图3点阵屏的行驱动信号

图4点阵屏的接口电路

本实验平台使用的16×16点阵屏上,每一行16个LED,它们采用共阳极的接法;每一列16个LED,它们采用共阴极的接法。如上图4中,QL1~QL16是点阵屏的行驱动信号,每一个信号控制一行;LR1~LR16是点阵屏的列驱动信号,每一个信号控制一列。故通过利用相应行线输出高电平,相应列线输出低电平,就可以点亮点阵屏上相应的LED。如果按着一定的控制或扫描方法,就可以实现

0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x24,0x00,0x18,0x00,0x00,0x00,0x00,0x00,

};

UINT8Tdispram[32];

voidtxdrdn(unsignedcharn)

{

//0-175

UINT8Ti;

for(i=0;i16;i++)

{

dispram[2*i+0]=wangshuai[2*n+2*i+0];

dispram[2*i+1]=wangshuai[2*n+2*i+1];

}

}

voidtxdispram(unsignedcharn)

{

UINT16Ttmp;

UINT8Ti;

if(n16)

{

for(i=0;i16;i++)

{

tmp=wangshuai[2*i+0]*256+wangshuai[2*i+1];

tmp=(15-n);

dispram[2*i+0]=tmp/256;

dispram[2*i+1]=tmp%256;

}

}

if(n=16)

{

for(i=0;i16;i++)

{

tmp=wangshuai[2*i+0]*256+wangshuai[2*i+1];

tmp=(n-15);

dispram[2*i+0]=tmp/256;

dispram[2*i+1]=tmp%256;

}

}

}

voidwrite_L4094(UINT16Tdata)

{

UINT8Ti;

Lstr_H;

for(i=0;i16;i++)

{

CLK_L;

if(data0x01==1)

Ldata_H;

else

Ldata_L;

data=data1;

CLK_H;

}

Lstr_L;

}

voidwrite_R4094(UINT8Tdata)

{

UINT8Ti;

Rstr_H;

for(i=0;i8;i++)

{

CLK_L;

if(data0x01==1)

Rdata_H;

else

Rdata_L;

data=data1;

CLK_H;

}

Rstr_L;

}

voidled_char_disp(void)

{

UINT8Ti=0;

UINT8Tk=0;

UINT16Tx;

while(i16)

{

Rstr_L;

Lstr_L;

DisEn_Dataout;

write_R4094(~dispram[i*2+1]);

文档评论(0)

songyj + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档