湖南文理学院课程设计报告课程名称:嵌入式系统课程设计专业班级:通信工程12101班学号(18)学生姓名:陆颖指导教师:杨峰完成时间:2015年6月9日报告成绩:湖南文理学院制评阅意见:评阅教师日期1一、设计要求.............................................................................................2二、设计作用和目的................................................................................3三、所用设备及软件................................................................................32、........................................................................................................43、........................................................................................................5四、系统设计方案....................................................................................61、.........................................................................................................62、.........................................................................................................6五、系统硬件设计....................................................................................71、.........................................................................................................72、.........................................................................................................8六、系统软件设计..................................................................................141、串口操作需要的头文件............................................................152、打开串口....................................................................................163、串口设置....................................................................................164、串口读写......................................................................................195、关闭串口......................................................................................21七、仿真调试分析..................................................................................21八、设计中的问题及解决方法..............................................................23九、嵌入式系统学习心得......................................................................23十、参考文献...........................................................................................242嵌入式Linux系统的串口通信研究一、设计要求所谓串口通信,是指外设和计算机间使用一根数据信号线(另外需要地线),数据在一根数据信号线上一位一位进行传输,每一位数据都占据一个固定的时间长度。串口传输是二进制代码序列在一条信道上以位(元码)为单位,按时间顺序且按位传输的通信方式。串行传输时,发送端按位发送,接收端按位接受,同时还要对所传输的位加以确认,所以收发双方要采取同步措施,否则接受端将不能正确区分出所传输的数据。串口通信不但能实现计算机与嵌入式开发板之间的数据传输,而且还能实现计算机对嵌入式开发板的控制。若采用普通单片机,对外部设备的访问就需要利用复杂的汇编语言进行编程或者使用C51自己编写设备的初始化以及读写访问程序,这样的过程不仅复杂,而且不利于大规模的开发和设计。ARM与8051等普通单片机相比,具有开发简单、灵活,而且性能稳定、功能易于扩展等一系列优势,因而在汽车电子、手持设备、无线领域和航空航天等嵌入式系统中得到广泛的应用。将Linux移植到ARM嵌入式处理器后,可以利用操作系统中提供的系统调用把串口及其他外设当成普通文件进行操作,读写方便,因此进行相应开发可以提高系统编程效率,而且还可以简化调试的复杂程度。串行端口的本质功能是作为CPU和串行设备间的编码转换器。当数从CPU经过串行端口发送出去时,字节数据转换为串行的位。在接收数据时,串行的位被转换为字节数据。串口是系统资源的一部分,应用程序要使用串口进行通信,必须在使用之前向操作系统提出申请要求(打开串口),通信完成后必须释放资源(关闭串口)。3二、设计作用和目的串口通信是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。嵌入式系统的硬件平台构架、实时嵌入式操作系统的移植,为今后嵌入式系统的后继开发提供了一个嵌入式平台。基于嵌入式系统设计原理的嵌入式开发平台的设计的总体方案,从硬件和软件两个方面讲述了嵌入式系统的设计思想和方法,及其可行性的论证。嵌入式系统硬件平台的设计与调试,着重叙述了硬件平台的整体设计方案,包括各个设计模块的选型与接口电路的设计。随着世界科技水平的发展,嵌入式系统以其小型、专用、易携带、可靠性高的特点,已经在各个领域得到了广泛的应用,如军事国防、消费电子、通信设备、工业控制等。随着嵌入式系统软硬件技术的飞速发展,其应用领域必将更为广阔,嵌入式系统的研究将会有非常广泛的前景。本课题既可以使电子专业学生对ARM920T的嵌入式串口通信系统的实际应用有深入的了解,更重要的是培养了我们的软硬件动手能力,是我们所学专业知识、理论、技能和培养学生独立完成基本科研任务能力的一个综合检验,具有一定的效果和意义。三、所用设备及软件本次开发采用的硬件平台是ARM920T处理器的2410F,开发系统平台是Linux系统。1、1、2410F硬件平台简介2410F是基于三星ARM9嵌入式处理器S3C2410处理器的一款开发平台,“F”指基于2410的第六代开发套件。系统运行在202M的主2410F是基于三星ARM9嵌入式处理器S3C2410处理器频下发挥出色的性能。可以完成MP3,MPG,VOIP等工作。2410资源丰富适合ARM处理器的初学者学习使用。2410F上面使用的核心模块体积小资源丰富,IO充足还可以应用在二次开发的产品当中。这款设备主要包括核心板与底板两个部分,核心板采用6层PCB设计、底板采用2层PCB板设计,核心器件是基于目前4业内主流使用的SAMSUNGARM9S3C2410处理器,主频202MHz,配套的存储器,网卡等设备;底板主要是各类型的接口。S3C2410处理器是Samsung公司基于ARM公司的ARM920T处理器核,采用0.18um制造工艺的32位微控制器。该处理器拥有:独立的16KB指令Cache和16KB数据Cache,MMU,支持TFT的LCD控制器,NAND闪存控制器,3路UART,4路DMA,4路带PWM的Timer,I/O口,RTC,8路10位ADC,TouchScreen接口,IIC-BUS接口,IIS-BUS接口,2个USB主机,1个USB设备,SD主机和MMC接口,2路SPI。S3C2410处理器最高可运行在203MHz。它是基于ARM920T内核的16/32位RISC处理器,主要应用于嵌入式系统中。S3C2410拥有强大的数据处理能力,又有着低成本,低功耗等优点,在各种手持及移动设备上的应用越来越广泛,基于其平台的程序功能也越来越复杂。于是,在其平台上架构多线程的操作系统已成为越来越多系统设计者的诉求,本文介绍多线程在S3C2410上的具体实现过程。2、ARM简介ARM(AdvancedRISCMachines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM技术知识产权(IP)核的微处理器,即通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统、军用系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器70%以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可,由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。目前全世界有几十家大的半导体公司都使用ARM公司的授权,因此既使得ARM技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产品更容易进入市场并被消费者所接受,更具有竞争力。5ARM微处理器一般具有如下特点:�(1)体积小、低功耗、低成本、高性能;�(2)支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8/16位器件;�(3)大量使用寄存器,指令执行速度更快;�(4)大多数数据操作都在寄存器中完成;�(5)寻址方式灵活简单,执行效率高;�(6)指令长度固定。3、Linux系统简介Linux是一类Unix计算机操作系统的统称。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。Linux一般有四个主要部分:内核、Shell、文件结构和实用工具。(1)Linux内核内核是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。它从用户那里接受命令并把命令送给内核去执行。(2)LinuxShellShell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,She