09嵌入式网络协议及其应用开发课程设计报告1
- 格式:doc
- 大小:625.56 KB
- 文档页数:8
目录前言 (2)一、U-Boot分析 (3)1、引导程序U-Boot第一阶段分析 (3)2、引导过程 (4)3、程序流程图 (8)二、程序设计 (8)三、心得体会 (9)前言ARM嵌入式处理器已被广泛应用于消费电子厂品、无线通信、网络通信和工业控制等领域。
在嵌入式操作系统中,Linux、Vxworks、WinCE三足鼎立,其中Linux由于其开源性、稳定性、安全性、可裁剪性更是一支独秀。
在嵌入式系统中,如何实现在ARM平台下Linux操作系统的引导工作是嵌入式技术开发的重要环节。
BootLoader就是在操作系统内核运行之前运行的一段小程序。
通过这段小程序,我们可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。
在嵌入式系统中,通常并没有像BIOS那样的固件程序(注,有的嵌入式CPU也会内嵌一段短小的启动程序),因此整个系统的加载启动任务就完全由BootLoader 来完成。
比如在一个基于ARM7TDMI core的嵌入式系统中,系统在上电或复位时通常都从地址0x00000000处开始执行,而在这个地址处安排的通常就是系统的BootLoader程序。
一、U-Boot分析嵌入式Linux系统中常用的Bootloader引导程序有U-Boot,redboot, blob 和vivii等,其中U-Boot遵循GPL条款的开放源码项目,功能最为强大,U-Boot 对PowerPC系列处理器支持最丰富,同时还支持MIPS,x86,ARM,XScale等诸多常用系列的处理器;U-Boot引导程序分为Stage1和Stage2量大部分,Stage1中主要包括设备初始化、中断设置、时间设置和储存器初始化等工作,并且采用汇编语言实现,而一些通用功能大多采用C语言实现,放在Stage2中。
1、引导程序U-Boot第一阶段分析Stage1的代码在CPU/arm920t/start.s中定义,它包括从系统上电后在0x00000000地址开始执行的部分。
第1篇一、实验背景随着信息技术的飞速发展,网络通信已成为现代社会的重要基础设施。
在计算机网络领域,协议的设计与开发至关重要。
本实验旨在通过设计和开发一个简单的网络协议,加深对协议原理的理解,提高网络编程能力。
二、实验目的1. 理解网络协议的基本原理和设计方法;2. 掌握网络编程技术,提高编程能力;3. 熟悉常用网络编程库和工具的使用;4. 培养团队合作精神和创新意识。
三、实验内容1. 设计网络协议;2. 编写协议实现代码;3. 测试协议功能;4. 分析实验结果。
四、实验步骤1. 设计网络协议(1)确定协议类型:选择应用层协议,如HTTP、FTP等;(2)定义协议格式:包括头部、数据体等部分;(3)设计数据传输方式:如TCP、UDP等;(4)考虑协议的安全性:如数据加密、认证等。
2. 编写协议实现代码(1)搭建开发环境:选择合适的编程语言和开发工具;(2)实现协议解析:解析接收到的数据包,提取头部、数据体等信息;(3)实现协议发送:封装数据包,发送至目标地址;(4)测试协议功能:编写测试代码,验证协议功能是否正常。
3. 测试协议功能(1)搭建测试环境:使用测试工具(如Wireshark、Burp Suite等);(2)发送测试数据:模拟实际应用场景,发送测试数据;(3)分析测试结果:观察数据包传输过程,验证协议功能是否满足设计要求。
4. 分析实验结果(1)总结协议设计中的优点和不足;(2)提出改进方案,优化协议性能;(3)总结实验过程中的经验和教训。
五、实验结果与分析1. 实验结果(1)成功实现协议设计,满足设计要求;(2)协议功能测试通过,数据传输稳定;(3)测试过程中未发现严重错误。
2. 分析(1)协议设计合理,能够满足实际应用需求;(2)代码结构清晰,易于维护和扩展;(3)测试过程中,发现部分细节问题,已进行优化。
六、实验总结1. 通过本次实验,掌握了网络协议的设计和开发方法;2. 提高了编程能力,熟悉了常用网络编程库和工具;3. 培养了团队合作精神和创新意识。
嵌入式系统课程设计报告一、教学目标本课程的教学目标是使学生掌握嵌入式系统的基本概念、原理和设计方法,能够运用嵌入式系统进行实际项目的开发和实现。
具体来说,知识目标包括了解嵌入式系统的定义、特点、分类和应用领域;掌握嵌入式系统的硬件和软件组成及工作原理;熟悉嵌入式操作系统的基本概念和常用操作系统。
技能目标包括能够使用嵌入式系统开发工具和平台进行程序设计和调试;具备嵌入式系统硬件电路的设计和调试能力;能够运用嵌入式系统进行实际项目的开发和实现。
情感态度价值观目标包括培养学生的创新意识和团队合作精神,提高学生解决实际问题的能力和责任感。
二、教学内容根据课程目标,本课程的教学内容主要包括嵌入式系统的基本概念、原理和设计方法。
具体包括以下几个方面:1. 嵌入式系统的定义、特点、分类和应用领域;2. 嵌入式系统的硬件组成,如处理器、存储器、输入输出接口等;3. 嵌入式系统的软件组成,如固件、操作系统、应用程序等;4. 嵌入式操作系统的基本概念和常用操作系统;5. 嵌入式系统的设计方法和开发流程;6. 嵌入式系统硬件电路的设计和调试方法;7. 嵌入式系统在实际项目中的应用和案例分析。
三、教学方法为了实现课程目标,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。
通过多样化的教学方法,激发学生的学习兴趣和主动性。
具体教学方法如下:1. 讲授法:通过讲解嵌入式系统的基本概念、原理和设计方法,使学生掌握相关知识;2. 讨论法:通过分组讨论和课堂讨论,培养学生的思考能力和团队合作精神;3. 案例分析法:通过分析实际项目案例,使学生了解嵌入式系统在实际中的应用和设计方法;4. 实验法:通过实验操作和调试,锻炼学生的动手能力和实际问题解决能力。
四、教学资源为了支持教学内容和教学方法的实施,本课程将选择和准备以下教学资源:1.教材:选用权威、实用的嵌入式系统教材,为学生提供系统的学习资料;2. 参考书:推荐学生阅读相关参考书籍,丰富学生的知识体系;3. 多媒体资料:制作课件、教案等多媒体教学资料,提高课堂教学效果;4. 实验设备:准备嵌入式系统开发板、仿真器等实验设备,为学生提供实践操作的机会。
一、实训背景随着科技的不断发展,嵌入式系统在各个领域得到了广泛的应用。
为了提高学生的实践能力和创新意识,我国高校纷纷开设了嵌入式开发课程。
本报告将针对我所参与的嵌入式开发课程实训进行总结和反思。
二、实训目标1. 掌握嵌入式系统的基本原理和开发流程;2. 熟悉嵌入式系统硬件平台和软件平台;3. 能够进行嵌入式系统编程和调试;4. 培养团队协作能力和创新意识。
三、实训内容1. 嵌入式系统基础知识(1)嵌入式系统定义及特点;(2)嵌入式系统硬件平台和软件平台;(3)嵌入式系统开发流程。
2. 嵌入式系统硬件平台(1)ARM处理器原理和应用;(2)常用外设接口及驱动程序开发;(3)S3C6410开发板硬件设计。
3. 嵌入式系统软件平台(1)Linux内核及驱动开发;(2)C语言编程和调试;(3)Qt开发及图形界面设计。
4. 实训项目(1)基于S3C6410开发板的温度传感器数据采集;(2)基于ZigBee模块的远程数据传输;(3)基于Linux系统的文件系统管理;(4)基于Qt的图形界面设计。
四、实训过程1. 理论学习:通过课堂讲解、阅读教材和参考资料,掌握嵌入式系统基础知识。
2. 实验操作:按照实训指导书,完成嵌入式系统硬件平台和软件平台的搭建。
3. 项目实践:根据实训项目要求,分组进行项目设计、编程和调试。
4. 团队协作:在项目实践过程中,加强团队沟通与协作,共同完成项目任务。
五、实训成果1. 完成嵌入式系统硬件平台和软件平台的搭建;2. 编写并调试嵌入式系统程序;3. 完成实训项目,并撰写项目报告;4. 提高嵌入式系统编程和调试能力;5. 培养团队协作能力和创新意识。
六、实训总结与反思1. 实训过程中,通过理论学习、实验操作和项目实践,使我对嵌入式系统有了更深入的了解。
2. 在项目实践中,学会了如何进行团队协作,提高了沟通和解决问题的能力。
3. 通过本次实训,发现自己在嵌入式系统编程和调试方面还存在不足,需要在今后的学习中继续努力。
嵌入式技术及应用实验报告嵌入式技术及应用实验报告一、实验目的本实验旨在通过学习嵌入式技术及应用,掌握嵌入式系统的基本原理和应用方法,培养学生的嵌入式系统设计和开发能力。
二、实验内容1. 嵌入式系统的概念和特点2. 嵌入式系统的硬件平台和软件开发环境3. 嵌入式系统的应用案例分析4. 嵌入式系统的设计和开发实践三、实验原理1. 嵌入式系统的概念和特点嵌入式系统是一种专门设计用于特定应用领域的计算机系统,它通常由硬件和软件两部分组成。
嵌入式系统的特点包括:实时性要求高、资源受限、功耗低、体积小、成本低等。
2. 嵌入式系统的硬件平台和软件开发环境嵌入式系统的硬件平台通常由处理器、存储器、输入输出设备等组成。
常用的处理器有ARM、MIPS等,存储器包括RAM、ROM、Flash等,输入输出设备有键盘、显示器、传感器等。
嵌入式系统的软件开发环境包括编译器、调试器、仿真器等工具。
3. 嵌入式系统的应用案例分析嵌入式系统广泛应用于各个领域,如智能手机、汽车电子、医疗设备、工业控制等。
以智能手机为例,它是一种集成了通信、计算、娱乐等功能的嵌入式系统,通过操作系统和应用软件实现各种功能。
4. 嵌入式系统的设计和开发实践嵌入式系统的设计和开发包括硬件设计和软件开发两个方面。
硬件设计主要包括电路设计、PCB设计等,软件开发主要包括驱动程序开发、应用程序开发等。
在设计和开发过程中,需要考虑系统的性能、可靠性、安全性等因素。
四、实验步骤1. 学习嵌入式系统的概念和特点,了解嵌入式系统的基本原理。
2. 学习嵌入式系统的硬件平台和软件开发环境,掌握常用的处理器、存储器和输入输出设备。
3. 分析嵌入式系统的应用案例,了解不同领域的嵌入式系统的设计和开发方法。
4. 进行嵌入式系统的设计和开发实践,包括硬件设计和软件开发两个方面。
5. 调试和测试嵌入式系统,验证系统的功能和性能。
6. 总结实验结果,撰写实验报告。
五、实验结果与分析通过本次实验,我对嵌入式系统的概念和特点有了更深入的了解。
嵌入式系统开发与应用课程设计1. 引言在当今信息技术飞速发展的时代,嵌入式系统作为一种特定用途的计算机系统,在各个领域得到了广泛应用。
嵌入式系统具有体积小、功耗低、性能高等特点,因此在汽车、医疗、家电等领域都得到了广泛运用。
本课程的设计旨在帮助学生深入了解嵌入式系统的开发和应用,并通过实践环节锻炼学生的设计和开发能力。
2. 课程设计目标本课程的设计目标主要包括以下几点:1.了解嵌入式系统的基本概念、特点和分类;2.掌握嵌入式系统的开发流程和常用的开发环境;3.学习嵌入式系统的编程语言和算法;4.实践设计与开发一个简单的嵌入式系统。
3. 课程内容3.1 嵌入式系统基础•嵌入式系统的概念和特点;•嵌入式系统的分类和应用领域;•嵌入式系统与传统计算机系统的比较。
3.2 嵌入式系统开发环境•嵌入式系统开发工具的介绍;•嵌入式系统开发环境的搭建;•嵌入式系统开发平台的选择。
3.3 嵌入式系统编程语言•嵌入式系统常用的编程语言;•C语言在嵌入式系统中的应用;•其他编程语言的选择和应用场景。
3.4 嵌入式系统算法•嵌入式系统常用的算法;•嵌入式系统中的数据结构;•嵌入式系统算法的优化方法。
3.5 嵌入式系统设计与开发实践•设计一个简单的嵌入式系统;•开发一个嵌入式系统原型;•测试和调试嵌入式系统。
4. 课程教学方法本课程采用理论与实践相结合的教学方法,通过讲授基本知识和案例分析,帮助学生理解嵌入式系统的原理和应用。
同时,通过实践环节锻炼学生的设计和开发能力,提高他们解决实际问题的能力。
5. 课程评估方式本课程的评估主要包括以下几个方面:1.平时表现:包括课堂参与、作业完成情况等;2.实验报告:要求学生完成实践环节,并提交实验报告;3.期末考试:对学生的理论知识进行考核。
6. 参考资料1.。
计算机网络课程设计报告课程设计项目名称:网络协议与应用程序设计系:专业::实验地点:实验日期:一、目的与要求基于典型的网络协议和网络应用的源代码进行分析,通过本科目,使学员了解网络通信流程,掌握网络通信程序的设计以及通信协议的应用技能,培养学员网络协议与网络应用的设计实现能力。
二、实验环境Visual C++6.0三、程序设计3.1 IP报头格式typedef struct tagIPINFO{u_char Ttl; // Time To Liveu_char Tos; // Type Of Serviceu_char IPFlags; // IP flagsu_char OptSize; // Size of options datau_char FAR *Options; // Options data buffer}IPINFO, *PIPINFO生存时间+服务类型+标识字段+数据报大小+数据报缓存区3.2 ICMP报头格式typedef struct tagICMPECHO{u_long Source; // Source addressu_long Status; // IP statusu_long RTTime; // Round trip time in millisecondsu_short DataSize; // Reply data sizeu_short Reserved; // Unknownvoid FAR *pData; // Reply data bufferIPINFO ipInfo; // Reply options}ICMPECHO, *PICMPECHO;源地址+IP状态+往返延迟+返回数据大小+未知接受数据+返回数据缓存+返回IP报头数据函数流程设计//初始化模块:初始化全局标量,初始化加载库。
void main(int argc, char **argv){WSADATA wsaData; // WSADATAICMPECHO icmpEcho; // ICMP Echo reply bufferHANDLE hndlIcmp; // LoadLibrary() handle to ICMP.DLL HANDLE hndlFile; // Handle for IcmpCreateFile() LPHOSTENT pHost; // Pointer to host entry structurestruct in_addr iaDest; // Internet address structure DWORD *dwAddress; // IP Addressint nRet; // General use return codeIPINFO ipInfo; // IP Options structureDWORD dwRet; // DWORD return codeint x;// Check argumentsif (argc != 2){fprintf(stderr,"\nSyntax: pingi HostNameOrIPAddress\n");return;}// Dynamically load the ICMP.DLLhndlIcmp = LoadLibrary("ICMP.DLL");if (hndlIcmp == NULL){fprintf(stderr,"\nCould not load ICMP.DLL\n");return;}// Retrieve ICMP function pointerspIcmpCreateFile = (HANDLE (WINAPI *)(void))GetProcAddress(hndlIcmp,"IcmpCreateFile");pIcmpCloseHandle = (BOOL (WINAPI *)(HANDLE))GetProcAddress(hndlIcmp,"IcmpCloseHandle");pIcmpSendEcho = (DWORD (WINAPI *)(HANDLE,DWORD,LPVOID,WORD,PIPINFO,LPVOID,DWORD,DWORD))GetProcAddress(hndlIcmp,"IcmpSendEcho");// Check all the function pointers//功能控制模块:计算校验和填充数据报文、释放占用资源。
嵌入式系统及应用课程设计报告系别电子与电气工程专业电子信息工程班级0920314学号*********姓名指导教师完成时间2013.01.06评定成绩嵌入式系统及应用课程设计报告一、设计目的1、学会基于ARM与Linux的嵌入式程序开发,学会编写Makefile;2、熟练使用LED、数码管、键盘等基础硬件,掌握它们的编程方法;3、练习C语言编程,初步具备C项目开发经验。
二、设计目标与要求利用Linux系统的交叉编译环境,设计程序,在ARM嵌入式系统实验箱上(主要使用LED、蜂鸣器、数码管、键盘)模拟一个“定时炸弹”。
开始时刻,数码管显示“60”,蜂鸣器不响,8个LED全灭。
接着,数码管从“60”开始倒计时,当计时到“00”时:蜂鸣器长时间响起;8个LED灯轮流点亮8次,最终全亮。
这种状态一直持续到按下“确认”键(键盘上的“E”键)才结束,然后重新开始上述过程。
三、设计方案首先熟悉ARM实验箱,挑选出这些实训所需要的模块并熟悉,然后开始分模块按顺序进行编写程序,先编写LED/蜂鸣器模块的子程序实现控制蜂鸣器的开关和8个LED灯轮流点亮8次,最终全亮;然后是数码管模块的子程序实现从60开始倒数计时到0;而后是编写键盘等模块实现扫描键盘,如有按键,返回键值,当“确认”键(E)按下时执行的功能。
最后编写实现主函数,引用前面几个步骤编写形成的子函数源文件,调用子函数实现本课程设计要求的整体功能。
四、软硬件设计1、LED/蜂鸣器模块实验箱有8只发光二极管:D501~D508,和一只蜂鸣器U502。
发光二极管使用八个ARM处理器IO 口来控制其亮灭。
另外使用一个IO来实现对蜂鸣器的控制。
LED/蜂鸣器模块内部结构LED主程序int Led_Active(int iswork){int i,c;port_write(S3C2440_PIO_PJ5,iswork);port_write(S3C2440_PIO_PJ7,iswork); printf(" on !\r\n"); for(c=0;c<8;c++){ port_write(S3C2440_LED1,1);port_write(S3C2440_LED2,0);for(i=0;i<0x200000;i++);port_write(S3C2440_LED1,0);port_write(S3C2440_LED2,1);for(i=0;i<0x200000;i++);port_write(S3C2440_LED2,0);port_write(S3C2440_LED3,1);for(i=0;i<0x200000;i++);port_write(S3C2440_LED3,0);port_write(S3C2440_LED4,1);for(i=0;i<0x200000;i++);port_write(S3C2440_LED4,0);port_write(S3C2440_LED5,1);for(i=0;i<0x200000;i++); port_write(S3C2440_LED5,0); port_write(S3C2440_LED6,1); for(i=0;i<0x200000;i++); port_write(S3C2440_LED6,0); port_write(S3C2440_LED7,1);for(i=0;i<0x200000;i++);port_write(S3C2440_LED7,0); port_write(S3C2440_LED8,1); for(i=0;i<0x200000;i++); } for(i=0;i<0x200000;i++);port_write(S3C2440_LED1,1); port_write(S3C2440_LED2,1); port_write(S3C2440_LED3,1); port_write(S3C2440_LED4,1); port_write(S3C2440_LED5,1); port_write(S3C2440_LED6,1); port_write(S3C2440_LED7,1); port_write(S3C2440_LED8,1); printf(" off !\r\n");return 0;}蜂鸣器主程序int bsp_init(void);int main(int argc, char *argv[]){bsp_init();int i;printf(" on !\r\n");port_write(S3C2440_BELLCTRL,1); for(i=0;i<0x10000000;i++);port_write(S3C2440_BELLCTRL,0);printf(" off !\r\n");return 0;}int bsp_init(void){open_port_device();return 0;}2、数码管模块实验箱上有8只8段数码管:U503~U510,使用74F164芯片(串入并出芯片)对数码管进行控制。
课程设计说明书
学生信息
系别计算机工程学院专业计算机科学与技术
班级姓名学号
课程设计信息
课程名称嵌入式软件开发课程设计
课程设计题目基于QT的直流电机设计
课程设计时间学期第 1~16 周
小组情况指导教师
批改情况
成绩评阅教师批改时间2012年5月 6 日2011-2012学年第2 学期
目录
1.课程设计内容 (3)
2.课程设计目的 (3)
3.背景知识 (3)
4.工具/准备工作 (3)
5.设计步骤与方法 (3)
5.1.步骤 1:设计直流电机控制界面 (3)
5.1.1. 步骤1.1:添加控件事件代码 (4)
5.2. 步骤2:编译程序 (5)
5.2.1. 步骤2.1:redhat主机下编译程序 (5)
5.2.2. 步骤2.2:在ARM板下测试直流电机界面–嵌入式下运行 (6)
6.软件测试截图 (7)
7.设计结果及分析 (7)
8.设计结论 (7)
9.问题及心得体会 (7)
10.对本设计过程及方法、手段的改进建议 (8)
11.任务分配 (8)
12.参考文献【1】C++ GUI Qt4编程(第2版) 兰切特 (Jasmin Blanchette)、萨默菲尔德(Mark Summerfield)、闫锋欣、曾泉人子工业出版社2008 (8)
13.课程设计评价(教师) (8)
课程设计报告
1. 课程设计内容
本课程设计的内容是设计一个基于QT的直流电机设计,支持电机正反转以及设置参数以控制转速。
2. 课程设计目的
考察自己对课程的掌握程度,以及自己实际的动手能力,编程能力。
3. 背景知识
1.嵌入式linux下驱动程序的基本编译方法
2.掌握直流电机控制基本原理
3.QT软件的应用
4. 工具/准备工作
硬件:
安装有QT的PC机一台
软件:
WindowsXP操作系统
VMware Workstation 7.0
Red Hat
QT 4.6.3
5. 设计步骤与方法
5.1.步骤 1:设计直流电机控制界面
利用QT Creator,ui文件来编写一个良好的用户交互界面:
图5.1电机控制界面
5.1.1. 步骤1.1:添加控件事件代码
使用信号-槽机制在函数添加操作
功能实现:
1、手动启动、停止直流电机
2、显示电机的转速,以及转动的方向,如向左还是向右,顺时针还是逆时针
3、通过设置参数,动态改变电机的转动速度
具体实现代码如下
char *DCM_DEV="/dev/dcm/0raw";
void motor()
{ if((dcm_fd=open(DCM_DEV, O_WRONLY))<0)
{ printf("Error opening %s device\n", DCM_DEV);
}
ioctl(dcm_fd, DCM_IOCTRL_SETPWM, (512 * factor));
}
void MainWindow::on_pushButton_clicked()
{ motor();//电机开始转动
}
void MainWindow::on_pushButton_2_clicked()
{ ioctl(dcm_fd, DCM_IOCTRL_SETPWM, 0);//电机停止转动
}
void MainWindow::on_pushButton_4_clicked()
{ factor = DCM_TCNTB0/1024;//电机逆时针转动
ioctl(dcm_fd, DCM_IOCTRL_SETPWM, (setpwm * factor));
ui->lineEdit_2->setText("Left");;
}
void MainWindow::on_pushButton_5_clicked()
{ factor = DCM_TCNTB0/1024*(-1);//电机顺时针转动
ioctl(dcm_fd, DCM_IOCTRL_SETPWM, (setpwm * factor));
ui->lineEdit_2->setText("Right");
}
void MainWindow::on_pushButton_3_clicked()
{ char str[30];
setpwm=setpwm*(1-0.05);//电机减速
if(setpwm<=0) setpwm=0;
ioctl(dcm_fd, DCM_IOCTRL_SETPWM, (setpwm * factor));
sprintf(str,"%d",setpwm);
ui->lineEdit_3->setText(str);
}
void MainWindow::on_pushButton_6_clicked()
{ char str[30];
setpwm=setpwm*(1+0.05);//电机加速
if(setpwm>=512) setpwm=512;
ioctl(dcm_fd, DCM_IOCTRL_SETPWM, (setpwm * factor));
sprintf(str,"%d",setpwm);
ui->lineEdit_3->setText(str);
}
5.2. 步骤2:编译程序
5.2.1.步骤2.1:redhat主机下编译程序
1.把QT设置好源程序代码拷贝到redhat主机指定的目录下:
/home/sprife/qt4/for_arm/qt-embedded-linux-opensource-src-4.4.
0/examples目录
2.使用qmake产生Makefile:
#/home/sprife/qt4/for_arm/qt-embedded-linux-opensource-src-4.4
.0 /bin/qmake
#make
3.拷贝编译好的QT/E程序到NFS共享目录下
#cp 目标程序名 /arm2410cl/Trolltech/qt-embedded-4.4.0/
5.2.2.步骤2.2:在ARM板下测试直流电机界面–嵌入式下
运行
1.使用串口连接ARM实验箱与PC机
2.ARM 端挂载NFS 共享目录,在串口下输入
#mount -o nolock,rsize=4096,wsize=4096 192.168.1.111:/arm2410cl
/mnt/nfs,其中具体LINUX 主机IP 需要具体设置。
3.设置环境变量 (ARM端)
#cd /mnt/nfs/Trolltech/qt-embedded-4.4.0
#export QTDIR=$PWD
#export LD_LIBRARY_PATH=$PWD/lib
#export TSLIB_TSDEVICE=/dev/input/event0
#export TSLIB_PLUGINDIR=$PWD/lib/ts
#export TSLIB_CONSOLEDEVICE=none
#export TSLIB_CONFFILE=$PWD/etc/ts.conf
#export POINTERCAL_FILE=$PWD/etc/ts-calib.conf
#export QWS_MOUSE_PROTO=tslib:/dev/input/event0
#export TSLIB_CALIBFILE=$PWD/etc/ts-calib.conf
#export LANG=zh_CN
#insmod /mnt/yaffs/touchscreen/ts-uptech.o
4.执行触摸屏校准程序(在qt-embedded-4.4.0下)
5.在ARM下,执行命令
6../motor-control –qws
6. 软件测试截图
图6.1成功运行界面显示
7. 设计结果及分析
本程序成功的实现了直流电机基本操作,手动启动、停止直流电机、显示电机的转速,以及转动的方向,如向左还是向右,顺时针还是逆时针、通过设置参数,动态改变电机的转动速度。
不过虽然实现了上述功能,但该软件仍然还存在改进的地方。
8. 设计结论
经过在windowsXP以及Red Hat上的调试,实现了电机旋转等功能。
9. 问题及心得体会
10. 对本设计过程及方法、手段的改进建议
添加虚拟键盘设置转速
11. 任务分配
·组长:
·系统分析员:
·程序员:
·测试员:
·文档员:
12.参考文献
【1】C++GUI Qt4编程(第2版) 兰切特(Jasmin Blanchette)、萨默菲尔德(Mark Summ erfield)、闫锋欣、曾泉人子工业出版社2008
13. 课程设计评价(教师)
1.符合设计内容,达到设计目的,设计步骤与方法正确,设计结果正确。
是()否()基本正确()2.设计报告格式符合规范,所附图表清晰。
是()否()基本符合()3.源代码书写正确,按时完成设计报告。
是()否()基本正确()。