江苏大学嵌入式课设报告
更新时间:2023-10-19 07:38:01 阅读量: 综合文库 文档下载
- 嵌入式课设报告总结推荐度:
- 相关推荐
嵌入式课程设计报告
班级:电信0801
学号:3080503005 姓名:唐娟
一、 基础内容
1 、Linux内核移植实验
问题回答
1. 交叉编译环境包括哪些工具,它的作用是什么? 答:GNU的交叉编译器,包括以下组件:
(1). Gcc交叉编译器,即在宿主机上开发编译目标上可运行的二进制文件; (2). Binutils辅助工具,它是一组二进制工具程序集,包括objdump、objcopy等,能够对二进制文件进行处理;
(3). Gdb调试器,能够对执行程序进行源码或汇编级调试。 2. 简述Linux的启动过程。
答:1.加载BIOS;2.读取MBR;3.Boot Loader;4.加载内核;5.用户层init根据inittab文件设定运行等级;6.init进程执行rc.sysinit;7.启动内核模块;8.执行不同运行级别的脚本程序;9.执行/etc/rc.d/rc.local。
2、Linux基本应用程序编写实验
问题回答
1. 简述交叉编译的基本概念,简述x86平台和ARM平台编译环境的异同; 答:通常,程序是在一台计算机上编译,然后再分布到将要使用的其他计算机上。当主机系统(运行编译器的系统)和目标系统(产生的程序将在其上运行的系统)不兼容时,该过程就叫做交叉编译。 2. 简述Makefile文件的作用和基本组成;
答:Makefile文件的作用有点类似于DOS下的批处理文件,通过编写Makefile文件,用户可以将一个很复杂的程序(可能包含上百个甚至更多的源文件或者目录)通过简单的make命令进行编译。。Makefile文件描述了整个工程的编译,连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译;需要创建那些库文件以及如何创建这些库文件、如何最后产生我们想要的可执行文件。 规则:用于说明如何生成一个或多个目标文件, 规则格式如下:
targets: prerequisites command 目标 依赖 命令
3. CVT-PXA270中怎样将编写的应用程序下载到Linux中,怎样在Linux中运行该程序?
答:CVT-PXA270通过NFS将主机的/tftpboot/目录挂接到目标机的/mnt/nfs目录中,因此需要将交叉编译的应用程序拷贝到主机的/tftpboot/目录。在bin文件所在目录下使用./bin文件名运行该程序。
3、 Linux驱动程序编写实验
问题回答
1. 简述Linux设备驱动程序的基本概念和编写方法;
答:在Linux中,设备驱动程序是操作系统内核和机器硬件之间的接口。设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序看来,硬件设备只是一个设备文件,应用程序可以操作普通文件一样对硬件设备进行操作。设备驱动程序是内核的一部分。编写方法:1) 包含文件;2) 模块初始化;3) 设备文件操作函数实现;4) 模块退出操作。 2. 简述Linux应用程序怎样访问设备驱动程序;
答:Linux应用程序调用Linux系统调用,Linux系统调用“调用”驱动程序中实现的文件操作集。Linux用户程序通过设备文件(又名:设备节点)来使用驱动程序操作字符设备和块设备。
二、拓展内容
6、 Linux串口通信实验
问题回答
1. 简述Linux下的串口编程;
答:1). 包含串口编程相关头文件;2). 打开串口:Linux 下串口文件是位于/dev 下,串口一为/dev/ttyS0 ,串口二为/dev/ttyS1 ,打开串口是通过使用标准的文件打开函数open操作;3). 设置串口:最基本的设置串口包括波特率设置,效验位和停止位设置。串口的设置主要是设置struct termios结构体的各成员值;4).读写串口:设置好串口之后,读写串口就很容易了,把串口当作文件读写就可以了。发送数据用write函数,读取串口数据使用文件操作read 函数读取;5). 关闭串口:关闭串口就是关闭文件,用close函数。
代码及注释如下:
#include
#include
#include
#define TRUE 1 #define FALSE 0
/***@brief 设置串口通信速率
*@param fd 类型 int 打开串口的文件句柄 *@param speed 类型 int 串口速度 *@return void*/
int speed_arr[] = { B38400, B19200, B9600, B4800, B2400, B1200, B300, B38400, B19200, B9600, B4800, B2400, B1200, B300,};
int name_arr[] = {38400, 19200, 9600, 4800, 2400, 1200, 300, 38400, 19200, 9600, 4800, 2400, 1200, 300, };
/* 设置波特率 */
void set_speed(int fd, int speed) {
int i;
int status;
struct termios Opt; tcgetattr(fd, &Opt);
for ( i= 0; i < sizeof(speed_arr) / sizeof(int); i++) {
if (speed == name_arr[i]) {
tcflush(fd, TCIOFLUSH);
cfsetispeed(&Opt, speed_arr[i]); cfsetospeed(&Opt, speed_arr[i]);
status = tcsetattr(fd, TCSANOW, &Opt); if (status != 0)
perror(\ return; }
tcflush(fd,TCIOFLUSH); } } /**
*@brief 设置串口数据位,停止位和效验位
*@param fd 类型 int 打开的串口文件句柄*
*@param databits 类型 int 数据位 取值 为 7 或者8* *@param stopbits 类型 int 停止位 取值为 1 或者2* *@param parity 类型 int 效验类型 取值为N,E,O,,S */
/* 设置串口数据位,停止位和效验位 */
int set_Parity(int fd,int databits,int stopbits,int parity) {
struct termios options;
if ( tcgetattr( fd,&options) != 0) {
perror(\ return(FALSE); }
options.c_cflag &= ~CSIZE;
switch (databits) /* 设置数据位数 */ {
case 7:
options.c_cflag |= CS7; break; case 8:
options.c_cflag |= CS8; break; default:
fprintf(stderr,\ return (FALSE); }
switch (parity) /* 设置校验位 */ {
case 'n': case 'N':
options.c_cflag &= ~PARENB; /* Clear parity enable */ options.c_iflag &= ~INPCK; /* Enable parity checking */ break; case 'o': case 'O':
options.c_cflag |= (PARODD | PARENB); /* 设置为奇效验 */
options.c_iflag |= INPCK; /* Disnable parity checking */ break; case 'e': case 'E':
options.c_cflag |= PARENB; /* Enable parity */ options.c_cflag &= ~PARODD; /* 转换为偶效验*/
options.c_iflag |= INPCK; /* Disnable parity checking */ break; case 'S':
case 's': /*as no parity*/ options.c_cflag &= ~PARENB; options.c_cflag &= ~CSTOPB; break; default:
fprintf(stderr,\ return (FALSE); }
/* 设置停止位 */ switch (stopbits) {
case 1:
正在阅读:
江苏大学嵌入式课设报告10-19
日本国概况试题及答案11-10
光谱分析作业指导书08-31
高中物理 第5章 经典力学的成就与局限性教师用书 教科版必修204-05
七年级地理下册第八章第四节澳大利亚教案4(新版)新人教版01-11
3.振荡波电压法试验规范09-17
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 江苏大学
- 嵌入式
- 报告
- matlab大作业
- 江苏省二级VB笔试三年真题及答案
- 航空器法律制度习题
- 如何组织好乡镇人民代表大会会议
- 医疗技术分类 - 图文
- 上海市科技创业导师活动-手牵手活动通知
- 公共事业管理概论
- 盐务局“不担当不作为”问题自查报告
- 2015年中国藻类产品市场分析报告 - 图文
- 教育实习通讯稿2篇-word范文(2页)
- 环境法学1234
- 2.2《管理运筹学》考试试卷(B)
- 专业技术人员外出进修培训管理办法
- 2013年全国名校中考模拟试卷分类汇编11方程的应用
- 模拟电子技术试题1(A)05-06
- 巩固退耕还林成果建设项目实施情况汇报
- 放射B超学
- 数学知识点重庆南开中学初级八年级数学下学期期中试题(精选资料)
- 考研新概念必备36篇
- 党的基础知识考试题及答案