嵌入式课程设计心得体会(精选3篇)_嵌入式课程设计心得

其他心得体会 时间:2022-02-17 07:22:27 收藏本文下载本文
【www.daodoc.com - 其他心得体会】

嵌入式课程设计心得体会(精选3篇)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“嵌入式课程设计心得”。

第1篇:嵌入式课程设计心得体会

嵌入式课程设计心得体会

本学期为期一周的嵌入式课程设计在不知不觉中结束了,虽说这次课程设计时间不是很长,但是感觉自己收获颇丰,不仅学习到了一些新知识,回顾了以前的一些快要遗忘的知识点,而且使自己的学习目标更加明确,学习方法更加完善,也体会到软件开发的趣味,更加清楚地认识到了自己在软件开发及学习上的一些不足之处。下面就来详细写一下我关于此次课程设计的心得体会:

此次课程设计的实训的是由上海杰普公司的楚老师带我们完成的。楚老师看上去比较年轻,给我们很有亲和力,技术上也很强,而且讲解的比较详细,操作上相当娴熟。让我们感觉到了计算机科学技术学习的趣味性,计算机技术的实用性。此次课程设计给老师选择项目是在Linux下用C语言开发一个摄像头驱动程序。项目的实施方式是团队分组合作,共同完成,让我们体验了一下公司开发项目的氛围。我们一人一机,老师边讲边练,还有企业项目经理的全程指导。虽说一些些技术我们在课堂上也曾学习过,但是大多停留在理论学习上,实际开发很少,而这次课程设计给了我们一个很好的边学习边实践的机会,对我们深入学习这些技术有很大帮助,深刻体会到了这些技术的实用性。每当自己成功调试一段代码或者通过自己的努力克服一个技术困难,都颇有收获感。这次实训让我们体验了软件开发的全过程,发现自己的不足,了解了当前流行技术的软件开发,增加了一定的项目开发经验,增强了一定的就业竞争力。简短的回顾一下这几天我们所学习的:

实训的前一天下午,我们先明确了一下下周课程设计的要求和目的,跟上海杰普公司的楚老师相互认识了一下。然后楚老师给我们详细的讲解了这一周我们要做什么,并演示了一个他自己开发的摄像头驱动程序。同学们看了,都很感兴趣,如果自己能开发出这样的一个小程序,着实让人高兴。接下来的这几天我们就跟着范老师一起学习摄像头驱动的开发,同时我们也分了小组,模拟体验一下公司的团队开发,同学们都积极策划自己团队的名字、团队的口号、队歌……

我们首先从基本的Linux命令学起,以及linux底下的C语言的一些基本知识。虽说这学期我们也学过Linux开发技术,有一定的基础,但这几天的学习,还是感觉到我们学的太浅,很多的东西需要去深入的学习才能有所收获。而且深刻的体会到“熟能生巧”这句良训,光学不练还是白搭。后两天我们学习了Linux底下一些开发工具的使用,如Qt,感觉这些工具功能确实够强大。当通过自己写的代码能够控制摄像头拍照时,别提有多高兴了。当然在调试的过程中也遇到不少错误,每当通过自己的努力把问题解决(一般自己思考一下,查查资料都没问题),也是一种很好的收获。还有一个比较深刻的体会就是API及一些文档的查阅,这对开发人员来说是一个必须具备的能力。

一周的课程设计,一周的实训,在计算机这个博大深奥的领域我感觉自己还有好多东西要学,还有好多的东西不懂(这也再次坚定了我考研深造的决心)!嵌入式软件开发应用广泛而且前景很好,目前正处于人才紧缺的关口,嵌入式技术在未来能够得到更加广泛的应用。学好嵌入式,C语言很重要,所以感觉自己有必要在学习、积累一下这方面的知识。很多东西的学习不死一帆风顺也是比较耗时的,嵌入式也不例外,要想学好还必须下大力气,还必须坚持。这次的课程设计让我明确了一点:嵌入式开发对于提升我们的系统知识有很大的帮助,尤其是操作系统的知识。嵌入式系统开发对于我们的知识面要求非常的广,且要有一定的深度。这次的课程设计因为是一个有针对性的训练,所以记的会非常牢固。跟平时上课不太一样,平时上完理论课很少有时间上机进行时间或者隔几天才上机练习,等到上机时一些东西可能遗忘了,比较耗费时间。在课上,有老师在前面演示我们感觉看得懂或感觉没问题,可轮到我们独立完成的时候,因为实际操作的少,跟中问题就来了!我很感谢学校特别是学院老师有实训这样的安排,把我们这一学期学的东西系统的集中的进行训练,让我们深刻明确的体验了一下软件开发的流程!还要感谢给我们实训的楚老师,感觉楚老师能力很强,也很有耐心,即使老师讲了很多遍的问题,我们不会,老师还是会走进我们给我们耐心的指导,还给我们讲一些学习计算机的方法,一些软件开发需要注意的细节,让我们知道自己在哪方面不足,需要加强,也让我们了解到哪些需要认真的学习,那些是重点,不是没有方向的乱学一通,什么也学不好!经过这次的实训,我真真确确的感受到了计算机在我们生活中工作中的运用,这些软件、程序能让我们提高工作的效率,更直观更便捷的切入主题。当然,在学习的过程中并不是一帆风顺的,在这之中,因为要操作的东西很多,有时错一步,后面的结果就无法显示,而自己的计算机水平还有待提高,根本检查不出来是哪里出了错!这时候,老师都会耐心的过来帮助我!在平时我们就需要好好的查阅书籍或者上网搜集相关资料去解决问题。

此次实训最大的收获不是我学习到了多少知识而是这几天实训给我的感悟:首先是心态。一定要有一个积极的心态,独立解决问题的意识,培养扎实基础的认识。不要什么东西都感觉跟简单(很多东西可能是看似简单)就不去做了或者不屑一做,以至于性网上搜搜就可以了,这样很不好。有自己的东西有自己的付出才会有程序运行成功时的喜悦和小自豪,这样也有助于培养自己的兴趣。要时刻牢记态度决定一切。其次是兴趣,感觉学习工作中兴趣很关键,只是一个引发人积极性的问题,有了兴趣就自觉了,效率自然就高了。再次要敢于尝试和挑战。不要安于现成的程序,而且不要害怕失败,在程序调试的过程中这点尤为重要,“发现出问题然后解决问题”是一个积累经验的过程,而且很高效。最后要不懈追求。对于源代码进行不断的完善,要尽可能的实现课题所要求的功能。对于初学者或者开发较少的人来说,大量大写程序还是有必要的,但同时要注意思考,理解其实现的内在意义。还可以自己添加一些有意义的功能来实现。当看到自己编写的程序正常运行时,兴趣也会随之而来,乐此不疲,形成一个良性循环。

短短一周的课程设计很快结束了,我发现我对计算机这个专业、对嵌入式技术、对Linux都有了新的认识。通过这次的实训,我了解到,要真真正正的掌握计算机程序还不是一件简单容易的事儿,但真正掌握后,它带给我们的将是无穷的便捷与科技,我喜欢高端便捷的生活。我希望我能做计算机这个万能机器人的主人而不是奴隶,我会努力加油的!感谢学校,感谢老师给我的帮助,让我的思想、技能又上了一个台阶!感谢!加油!

第2篇:嵌入式课程设计心得体会

---求.4

四、设计内容 5

五、操作界面的生成.7

六、操作界面调试..9

七、设计总结........10

八、设计参考书....12

九、附件(程序)13

一、设计课题

基于S3C2440的设备驱动及其界面---用编程编译与移植

6、编写设计说明书(方案的确定、设计环节的考虑及必要说明等)及设备的使用说

明;

7、绘制有关图纸.四、设计内容:

1、基础知识准备

1)讲解设计任务;

2)熟悉ubuntu的使用;

3)熟悉TQ2440试验系统的使用;

4)掌握嵌入式系统开发环境建立和使用;

5)掌握嵌入式系统基本驱动、应用程序的设计调试和编译移植方法.2、界面设计环境构建:MiniGUI在PC上的安装、移植、MiniGUI在pc机上安装和运行

建立工作目录:mkdir /minigui-free

cd /minigui-free mkdir /src

复制源文件包到工作目录:cp /mnt/hgfs/D/src/*---

主要任务..1

2.正文........3

触摸屏工作原理(触摸屏接口工作模式)3、设计总体方案 4、设计所需工具 7、平台构建过程 7、硬件平台搭建......7

根文件系统的制作....9

(1)根文件系统 9

3.程序.......14

程序流程---

参考文献.32

6.附录33

第一章 要求

设计目的(1)基于WINDOWS操作系统,以及实验箱,利用触摸屏返回触点坐标值及动作信息。

(2)坐标及动作的具体显示:触摸笔动作,触点X坐标值,触点Y坐标值。

设计意义

熟悉嵌入式系统开发平台

掌握ARM嵌入式操作系统下的各个指令的使用方法

了解触摸屏的原理

设计内容

系统的正确移植和使用

根文件系统的正确移植和使用

驱动程序的编译与装载

嵌入式系统下应用程序的交叉编译---

Y轴坐标转换将X轴坐标转换数值写入到ADCDAT1寄存器的YPDATA域。转换后,触摸屏接口将产生中断源(INT_ADC)到中断控制器。

(3)自动X/Y轴坐标转换模式。

自动(连续)X/Y轴坐标转换模式(AUTO_PST=1且XY_PST= 0)以下面的步骤工作:

触摸屏控制器将自动地切换X轴坐标和Y轴坐标并读取两个坐标轴方向上的坐标。触摸屏控制器自动将测量得到的X轴数据写入到ADCDAT0寄存器的XPDATA域,然后将测量到的Y轴数据到ADCDAT1的YPDATA域。自动(连续)转换之后,触摸屏控制器产生中断源(INT_ADC)到中断控制器。

(4)等待中断模式

当触摸屏控制器处于等待中断模式下时,它实际上是在等待触摸笔的点击。在触摸笔点击到触摸屏上时,控制器产生中断信号(INC_TC)。中断产生后,就可以通过设置适当的转换模式(分离---会.11 六、运行结果.........1七、心得体会.........12八、参考文献.........13九、附录....13

一、选题意义及功能描述

1、选题意义

电子密码锁是通过密码输入来控制电路或是芯片工作,从而控制机械的开关闭合、开锁的电子产品。随着科技提高和人们生活水平的提高,对电子密码锁的需求增加。电子密码做较传统的机械锁安全性能更高。

特点如下:

保密性好,编程量大,随机开锁的成功率几乎为零。

密码可变,用户可以随时改变密码,---显示成功进入系统的背景图片2。

如果密码不正确则显示”密码不正确,请重新输入:”

如果连续三次输入密码错误则显示“对不起,您已经连续三次输入密码错误,系统锁定”,显示图片1。

3、个人开发流程

了解开发板的硬件结构编写适应其硬件结构的程序。

掌握并编写LCD显示文本和图片程序。

通过EBI对外部LED灯进行控制。

键盘键值读取,及密码锁密码比对,密码锁状态转换的程序编写。

二、硬件设计及描述

1、LED灯模块

CPU的数据总线低8位连接到锁存器74HC273的信号输入端,CPU外部总线接口的nECS0片选信号连接到锁存器的锁存控制信号,当CPU 访问BANK0的任一地址空间是,数据总线的低八位的数据被锁存输出,作为控制8个LED---行设置,打开键盘中断,设定中断触发方式和优先级,扫描功能打开,时间约为100ms。

2、LCD显示模块

初始化呢控制寄存器,设定lcd控制器和中断服务程序,并写到AIC中断向量表中。关闭FIFO1和FIFO0,关闭绿的控制器,重置控制器,再讲显示的数据发送到缓存区中,根据时序的配置,从缓冲区中将数据读入液晶。

3、整体模块设计及程序流程图

在主程序中进行按键初始化,在中断程序中实现,按键值的读取和存储,通过设定状态标志位,数组。对存储的密码和输入的密码进行比较,判断对错从而改变状态标志位,在中短结束,回到主程序后通过识别状态标志位,显示相应的图形和文字。

第3篇:嵌入式系统课程设计

《嵌入式系统概论》综合设计报告书

设计题目:用键盘控制LED显示不同图形

中央民族大学 二零零八年十月三十一日

一、设计目的了解LED点阵和矩阵键盘的工作原理。

二、设计内容

编写程序控制用矩阵键盘控制LED点亮,产生不同的图形。

三、设计方案

功能概述:

本设计要实现的功能是通过键盘控制LED点阵图形显示,如果键盘输入0-9十个数字时显示相应的数字,如果输入其他的键,则显示“+”号。

1、程序设计思路

本设计要实现键盘控制LED点阵图形显示,就必须要编写键盘和LED点阵的程序。先通过扫描矩阵键盘,得到键盘值,然后再调用点阵显示子函数,根据扫描的键盘值,在LED点阵上显示不同的图形。

2、主程序设计

主程序要实现的功能是矩阵键盘扫描,得到键盘值,然后把值传给LED显示函数。

程序流程图如下:

3、LED点阵显示函数设计

本函数要实现的功能是根据键盘的值,在LED点阵上显示不同的图形。如果键盘的输入值为0-9则显示相应的数字,如果输入的是其他值,则显示“+”。本程序采用二维数组存放要显示的图形的字模,然后再通过逐行扫描LED点阵,把要显示的图形分8次显示,一次显示一行,利用人眼的视觉暂留效应,是人看到的是一个图形一次显示出来,通过一个循环控制图形显示的时间。程序流程图如下:

4、点阵图形设计

根据8*8 LED点阵的原理,8X8 点阵共需要64 个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1 电平,某一行置0 电平,则相应的二极管就亮;

先绘制出要显示的图形如下:

根据图形中点亮的LED灯的位置,得到相应图形的16进制数,存放在二维数组Buf1[11][8]中。

所以要显示的图形的字模如下:

buf1[11][8]={ {0x3c,0x24,0x24,0x24,0x24,0x24,0x3c,0x00},//0

{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},//1

{0x3c,0x20,0x20,0x3c,0x04,0x04,0x3c,0x00},//2

{0x3c,0x20,0x20,0x3c,0x20,0x20,0x3c,0x00},//3

{0x24,0x24,0x24,0x3c,0x20,0x20,0x20,0x00},//4

{0x3c,0x04,0x04,0x3c,0x20,0x20,0x3c,0x00},//5

{0x3c,0x04,0x04,0x3c,0x24,0x24,0x3c,0x00},//6

{0x3c,0x20,0x20,0x20,0x20,0x20,0x20,0x00},//7

{0x3c,0x24,0x24,0x3c,0x24,0x24,0x3c,0x00},//8

{0x3c,0x24,0x24,0x3c,0x20,0x20,0x3c,0x00},//9

{0x08,0x08,0x08,0x3e,0x08,0x08,0x08,0x00}

//+

};

四、程序源代码

//*************************************************************** #include #include #include #include // open()close()#include // read()write()#include

#define DEVICE_NAME “/dev/led_ary_ctl” #define DEVICE_NAME1 “/dev/keypad”

void Key(unsigned char b[]);

//------main----int main(void){

int fd;

int ret;

unsigned char buf[2];

double x;

char pre_scancode = 0xff;

printf(“n start keypad_driver test nn”);

fd = open(DEVICE_NAME1, O_RDWR);

printf(“fd = %dn”,fd);

if(fd ==-1){

printf(“open device %s errorn”,DEVICE_NAME1);}

else {

buf[0]=0x22;

while(1)

{

read(fd,buf,1);

if(buf[0]!= pre_scancode)

{

if(buf[0]!=0xff)

{

printf(“key =%xn”,buf[0]);

Key(buf);

}

}

pre_scancode = buf[0];

usleep(50000);

}

// close

ret = close(fd);

printf(“ret=%dn”,ret);

printf(“close keypad_driver testn”);}

return 0;}// end main //***************************************************************************** //---------------void Key(unsigned char b[]){ int fd;

int ret;

int i,j,k;

unsigned char buf[2];

unsigned char buf2[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};unsigned char buf1[11][8]={{0x3c,0x24,0x24,0x24,0x24,0x24,0x3c,0x00},//0

{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},//1

{0x3c,0x20,0x20,0x3c,0x04,0x04,0x3c,0x00},//2

{0x3c,0x20,0x20,0x3c,0x20,0x20,0x3c,0x00},//3

{0x24,0x24,0x24,0x3c,0x20,0x20,0x20,0x00},//4

{0x3c,0x04,0x04,0x3c,0x20,0x20,0x3c,0x00},//5

{0x3c,0x04,0x04,0x3c,0x24,0x24,0x3c,0x00},//6

{0x3c,0x20,0x20,0x20,0x20,0x20,0x20,0x00},//7

{0x3c,0x24,0x24,0x3c,0x24,0x24,0x3c,0x00},//8

{0x3c,0x24,0x24,0x3c,0x20,0x20,0x3c,0x00},//9

{0x08,0x08,0x08,0x3e,0x08,0x08,0x08,0x00}

//+

};

// begin of led ary

buf[0]= 1;

buf[1]= 0;

if(b[0]

i=10;

fd = open(DEVICE_NAME, O_RDWR);

printf(“fd = %dn”,fd);

if(fd ==-1)

printf(“open device %s errorn”,DEVICE_NAME);

else {

for(j=0;j

{

for(k=0;k

{

buf[0]=buf1[i][k];buf[1]=buf2[k];

write(fd,buf,2);

}

usleep(1);

}

// close

ret = close(fd);

printf(“ret=%dn”,ret);

printf(“close led_driver testn”);} } //-

五、设计结果

实现键盘控制LED点阵显示,输入0-9十个数字时显示相应的数字,如果输入其他的键,则显示“+”号。

六、心得体会

通过本次实验,我们对linux下的实验更加熟悉了,对LED点阵显示和矩阵键盘的原理有了深入的了解,掌握了点阵图形的设计方法和键盘的输入的读取,并把二者结合起来,实现了键盘控制点阵图形现实。

在实验过程中,我们也出现了问题,最开始时,由于不清楚点阵的C,R的高低位的对应情况,经过试验,才确定。然后就是点阵的显示是一闪即过的,然后我们通过循环控制了点阵的显示时间。总之,通过这次设计,我们都学到了很多东西。

下载嵌入式课程设计心得体会(精选3篇)word格式文档
下载嵌入式课程设计心得体会(精选3篇).doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文