嵌入式系统课程设计报告书_第1页
嵌入式系统课程设计报告书_第2页
嵌入式系统课程设计报告书_第3页
嵌入式系统课程设计报告书_第4页
嵌入式系统课程设计报告书_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、工业大学课 程 设 计资 料 袋 电气与信息工程 学院(系、部) 20092010学年第2学期 课程名称嵌入式系统指导教师谭会生职称 副教授学生专业班级学号题 目基于ARM微处理器和CLinux的嵌入式温度控制系统的设计 成 绩起止日期 2010年 5 月 10日 2010年 5 月 21 日目 录 清 单序号材 料 名 称资料数量备 注1课程设计任务书2课程设计说明书3课程设计图纸456工业大学课程设计任务书2009 2010 学年度第 2 学期电气与信息工程学院(系、部) 电子信息科学与技术专业 班级课程名称: 嵌入式系统课程设计设计题目:基于ARM微处理器和CLinux的嵌入式温度控制系

2、统的设计完成期限:自2010年5 月10日至2010年5月21日共2周容与任务设计一个基于ARM微处理器和CLinux的嵌入式温度控制系统,要求采用PID增量算法实现对电烤箱的温度控制,并且在达到温度控制要求的同时使用4×4小键盘和触摸屏作为输入,使用了LCD、串口、网口和音频等作为输出,使得系统具有友好的人机界面。系统工作的基本原理为:温度传感器把电烤箱的温度转换成电信号经过测量电路、滤波器和放大器,输入到ARM微处理器的A/D输入端口AIN。然后ARM微处理器执行PID控制程序,根据从AIN输入的电压值,经过PID算法得出输出值。通过PWM脉宽可调功能,把控制量转换成占空比可调的

3、脉宽,经过放大器和功率放大器后驱动电阻,达到控制功能。具体设计任务如下: (1)系统总体设计;(2)系统硬件电路的设计;(3)操作系统的分析与移植;(4)系统应用软件的设计;(5)系统硬件和软件的调试。进度安排起止日期工作容2010512课程设计任务讲解;开发平台的安装构建;2010514开发平台的安装构建;系统总体设计;硬件电路的设计;2010517操作系统的分析、移植、烧写与测试;2010519系统应用开发工具的使用;系统应用软件的设计和调试;2010521系统应用软件的设计和调试;其它时间学生自行查找资料,进行硬件、软件的设计和调试,撰写报告。主要参考资料1卢灵,高岩基于S3C44B0X

4、的温度控制系统J 微计算机信息,2006,22(05-2):0113-01152京梅基于 ARM 微处理器和C/OS-II 实时操作系统的嵌入式数字温度计的设计D,:大学,20043徐晶嵌入式温度实验系统的PID控制D:理工大学,20054马维华嵌入式系统原理与应用M邮电大学,20065TQ2440开发板配套资料,20106田泽嵌入式系统开发与应用M. : 航空航天大学,20057田泽嵌入式系统开发与应用实验教程M: 航空航天大学,2004指导教师(签字): 2010 年 5 月 8 日系(教研室)主任(签字):年 月 日30 / 30附件三嵌入式系统课程设计说明书基于ARM微处理器和CLin

5、ux的嵌入式温度控制系统的设计起止日期:自2010年5 月10日至2010年5月21日共2周学生班级学号成绩指导教师(签字)电气与信息工程学院2010年5 月日设计说明书的主要容1课程设计目的2课程设计要求3系统总体设计4系统硬件电路的设计5操作系统的移植6系统应用软件的设计7系统软件的调试8课程设计收获和体会本课程设计的目的(1)使学生掌握嵌入式开发板(实验箱)各功能模块的基本工作原理; (2)培养嵌入式系统的应用能力与嵌入式软件的开发能力; (3)使学生较熟练地应用嵌入式操作系统与其API开发嵌入式应用软件;(4)培养学生分析、解决问题的能力;(5)提高学生的科技论文写

6、作能力。  设计要求:设计一个基于ARM微处理器和CLinux的嵌入式温度控制系统,要求采用PID增量算法实现对电烤箱的温度控制,并且在达到温度控制要求的同时使用4×4小键盘和触摸屏作为输入,使用了LCD、串口、网口和音频等作为输出,使得系统具有友好的人机界面。系统工作的基本原理为:温度传感器把电烤箱的温度转换成电信号经过测量电路、滤波器和放大器,输入到ARM微处理器的A/D输入端口AIN。然后ARM微处理器执行PID控制程序,根据从AIN输入的电压值,经过PID算法得出输出值。通过PWM脉宽可调功能,把控制量转换成占空比可调的脉宽,经过放大器和功率放大器后驱动电

7、阻,达到控制功能。具体设计任务如下: (1) 系统总体设计;(2)系统硬件电路的设计;(3)操作系统的分析与移植;(4)系统应用软件的设计;(5)系统硬件和软件的调试。Fedora 10的安装修改系统文件,在终端中获取root用户的权限由于FEDORA自带网络设置程序不能正确设置网络信息,所以通过修改网络配置文件来实现网络设置,设置完成后重启linux系统虚拟机工具的安装,可以更方便于widows和Linux的数据交换,打开终端,解压虚拟机工具的安装包:虚拟机工具安装完后,设置共享目录,以实现从widows传递文件到Linux或从Linux传递文件到windows中,设置共享目录操作如下:在w

8、indow建立两个目录放置测试文件,通过LS命令可以访问到这些测试文件测试Linux网络设置在windows中使用ping命令可以在windows中ping到Linux的IP地址到这里就完成的Fedora的安装和设置交叉编译器的安装:Uboot的编译Qtopia-2.2.0编译:Qt-4.5的编译:Linux核的编译:Busybox的编译:Linux应用程序编译:温度控制系统程序如下:#include<stdio.h> #include<intrins.h> #include<math.h> #include<string.h> struct P

9、ID unsigned int SetPoint; / 设定目标 Desired Value unsigned int Proportion; / 比例常数 Proportional Const unsigned int Integral; / 积分常数 Integral Const unsigned int Derivative; / 微分常数 Derivative Const unsigned int LastError; / Error-1 unsigned int PrevError; / Error-2 unsigned int SumError; / Sums of Errors

10、; struct PID spid; / PID Control Structure unsigned int rout; / PID Response (Output) unsigned int rin; / PID Feedback (Input)unsigned char flag,flag_1=0; unsigned char high_time,low_time,count=0;/占空比调节参数 unsigned char set_temper=35; unsigned char temper; unsigned char i; unsigned char j=0; unsigned

11、 int s; int main(void) SystemInitialization();/初始化系统 LCD_printf("系统正在初始化,请稍候",25,8,0);LCD_Refresh(); OSInit();/初始化uC/OS-II / OSTimeSet(0); / LCD_printf("create task.",7,1);LCD_Refresh(); OSTaskCreateExt(Main_Task,(void*)0,&Main_Task_StackSTA CKSIZE*4-1,Main_Task_Prio,Main_Tas

12、k_Prio ,&Main_Task_Stack0,1024,(void*)0,OS_TAS K_OPT_STK_CHK+OS_TASK_OPT_STK_CLR);/创建主任务 OSTaskCreateExt(Key_Scan_Task,(void*)0,&Key_Scan_Stack STACKSIZE-1,Key_Scan_Prio,Key_Scan_Prio ,&Key_Scan_Stack0,256,(void*)0,OS_TASK _OPT_STK_CHK+OS_TASK_OPT_STK_CLR);/创建键盘扫描任务 OSTaskCreateExt(Lcd_F

13、resh_Task,(void*)0,&Lcd_Fresh_Stac kSTACKSIZE*2-1,Lcd_Fresh_Prio,Lcd_Fres h_Prio,&Lcd_Fresh_Stack0,512,(void*)0, OS_TASK_OPT_STK_CHK+OS_TASK_OPT_STK_CLR);/创建显示刷新 任务 initOSGUI();/初始化图形界面 LCDFresh_MBox=OSMboxCreate(NULL);/创建显示刷新 ADFresh_MBox=OSMboxCreate(NULL);/创建AD数据采集 /Para_Sem=OSSemCreate(1

14、); Lcd_Disp_Sem=OSSemCreate(1);/创建刷新显示缓存的信号量 /OSDC_Ctrl_mem=OSSemCreate(1); OSStart();/启动操作系统 return(0);/获取温度子程序/ void get_temper() unsigned char i,j; do i=reset(); /*复位*/ while(i!=0); /*1为无反馈信号*/ i=0xcc; /*发送设备定位命令*/ write_byte(i); i=0x44; /*发送开始转换命令*/ write_byte(i); delay(180); /*延时*/ do i=reset(); /*复位*/ while(i!=0); i=0xcc; /*设备定位*/ write_byte(i); i=0xbe; /*读出缓冲区容*/ write_byte(i); j=read_byte(); i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论