RAM实验报告

合集下载

随机存储器实验报告

随机存储器实验报告

一、实验目的1. 掌握随机存储器(RAM)的工作原理及特性。

2. 熟悉RAM的读写操作过程。

3. 了解RAM在计算机系统中的应用。

二、实验原理随机存储器(RAM)是一种易失性存储器,其特点是读写速度快、价格低廉。

RAM 中的数据在断电后会被丢失,因此常用于存储临时数据和程序。

RAM的基本结构由存储单元、地址译码器、读写控制电路和数据总线组成。

地址译码器根据地址信号选择相应的存储单元,读写控制电路控制数据的读写操作,数据总线用于数据的传输。

三、实验仪器与设备1. 计算机一台2. 随机存储器芯片(如6116)3. 数据开关4. 信号灯5. 逻辑分析仪(可选)四、实验内容与步骤1. 搭建实验电路(1)将随机存储器芯片插入计算机扩展槽或使用实验箱。

(2)连接数据开关、信号灯和逻辑分析仪(如有)。

(3)根据实验要求连接地址译码器和读写控制电路。

2. 读写操作(1)编写程序,向RAM中写入数据。

(2)观察信号灯或使用逻辑分析仪查看写入数据的过程。

(3)读取RAM中的数据,观察信号灯或使用逻辑分析仪查看读取数据的过程。

3. 实验验证(1)验证RAM的读写速度。

(2)验证RAM的数据是否正确。

(3)验证RAM的容量。

五、实验结果与分析1. 读写速度通过实验验证,RAM的读写速度较快,满足计算机系统对数据传输速度的要求。

2. 数据正确性通过观察信号灯或使用逻辑分析仪,验证RAM写入和读取的数据一致,说明数据正确。

3. 容量通过实验验证,RAM的容量与芯片标称容量一致。

六、实验总结本次实验成功实现了随机存储器的读写操作,验证了RAM的工作原理和特性。

通过实验,我们掌握了以下知识点:1. 随机存储器(RAM)的工作原理及特性。

2. RAM的读写操作过程。

3. RAM在计算机系统中的应用。

七、思考与改进1. 可以尝试使用不同类型的RAM芯片,比较其性能差异。

2. 可以研究RAM的优化设计,提高读写速度和容量。

3. 可以将实验扩展到其他类型的存储器,如只读存储器(ROM)和闪存(Flash)。

计算机组成原理实验报告(静态随机存储器实验)

计算机组成原理实验报告(静态随机存储器实验)

池州学院数学计算机科学系实验报告专业: 计算机科学与技术班级: 实验课程: 计算机组成原理姓名: 学号: 实验室: 硬件实验室同组同学:实验时间: 2013年5月15日指导教师签字: 成绩:静态随机存储器实验一实验目的和要求掌握静态随机存储器RAM工作特性及数据的读写方法。

二实验环境PC机一台, TD-CMA 实验系统一套三实验步骤及实验记录(1)关闭实验系统电源, 按图连接实验电路, 并检查无误。

(2) 将时序与操作台单元的开关KK1 、KK3 置为运行档、开关KK2 置为‘单步’档(3) 将CON单元的IOR 开关置为1(使IN单元无输出), 打开电源开关。

(4) 给存储器的00H 地址单元中分别写入数据11H 。

由前面的存储器实验原理图可以看出, 由于数据和地址由同一个数据开关给出, 因此数据和地址要分时写入, 先写地址, 具体操作步骤为: 先关掉存储器的读写(WR=0, RD=0), 数据开关输出地址(IOR=0 ), 然后打开地址寄存器门控信号(LDAR=1 ), 按动ST产生T3脉冲, 即将地址打入到AR中。

再写数据, 具体操作步骤为: 先关掉存储器的读写(WR=0, RD=0)和地址寄存器门控信号(LDAR=0 ), 数据开关输出要写入的数据, 打开输入三态门(IOR=0 ), 然后使存储器处于写状态(WR=1, RD=0, IOM=0), 按动ST产生T3脉冲, 即将数据打入到存储器中。

(5)依次读出第00号单元中的内容, 观察上述各单元中的内容是否与前面写入的一致。

同写操作类似, 也要先给出地址, 然后进行读, 地址的给出和前面一样, 而在进行读操作时, 应先关闭IN单元的输出(IOR=1 ), 然后使存储器处于读状态(WR=0, RD=1, IOM=0), 此时数据总线上的数即为从存储器当前地址中读出的数据内容写入:读出四实验结果与分析写入:读。

储存器实验报告

储存器实验报告

储存器实验报告储存器实验报告一、引言储存器是计算机中重要的组成部分,它用于存储和读取数据。

在计算机科学领域,储存器的设计和性能对计算机的运行速度和效率有着重要的影响。

本实验旨在通过设计和实现一个简单的储存器,来深入了解储存器的工作原理和性能指标。

二、实验目的1. 了解储存器的基本概念和分类;2. 掌握储存器的存储原理和读写操作;3. 分析和评估储存器的性能指标。

三、实验过程1. 储存器的分类储存器按照存储介质的不同可以分为随机存储器(RAM)和只读存储器(ROM)。

RAM是一种易失性存储器,它可以随机读写数据。

ROM则是一种非易失性存储器,主要用于存储固定的程序和数据。

2. 储存器的存储原理储存器的存储原理是通过电子元件的状态来表示数据的存储状态。

在RAM中,每个存储单元由一个电容和一个晶体管组成。

当电容充电时表示存储单元存储的是1,当电容放电时表示存储单元存储的是0。

在ROM中,存储单元由一组可编程的开关组成,每个开关的状态决定了存储单元存储的数据。

3. 储存器的读写操作储存器的读操作是通过将地址信号传递给储存器来选择要读取的存储单元,然后将存储单元的数据输出。

储存器的写操作是通过将地址信号传递给储存器来选择要写入的存储单元,然后将要写入的数据输入。

四、实验结果在实验中,我们设计并实现了一个8位的RAM储存器。

通过对储存器进行读写操作,我们成功地将数据存储到储存器中,并成功地从储存器中读取数据。

实验结果表明,储存器的读写操作是可靠和有效的。

五、实验分析1. 储存器的性能指标储存器的性能指标包括存储容量、存取时间和存储器的可靠性。

存储容量是指储存器可以存储的数据量,通常以位或字节为单位。

存取时间是指从发出读写指令到数据可以被读取或写入的时间间隔。

存储器的可靠性是指储存器的故障率和故障恢复能力。

2. 储存器的应用储存器广泛应用于计算机、手机、平板电脑等电子设备中。

在计算机中,储存器用于存储程序和数据,是计算机的核心组件之一。

ram测试报告

ram测试报告

RAM测试报告1. 引言本文是对RAM(Random Access Memory,随机存取存储器)的测试报告。

RAM是计算机中重要的存储设备之一,它能够临时存储数据,并且能够被CPU随机访问。

在本文中,将介绍我们对RAM进行的一系列测试,并对测试结果进行详细分析。

2. 测试目的RAM是计算机系统中的重要组成部分,对系统的性能和稳定性起着重要的作用。

本次测试的目的是评估RAM的性能、稳定性和可靠性,为使用RAM的计算机系统提供参考。

3. 测试步骤步骤一: RAM容量测试通过读取计算机系统的RAM容量信息,确认RAM的实际容量与宣称容量是否一致。

我们使用了专业的RAM测试工具,对RAM进行了容量测试,并记录了测试结果。

步骤二: RAM速度测试我们通过运行一系列的测试程序,测试RAM的读取和写入速度。

测试程序会对RAM进行大量的读写操作,并记录每次操作的耗时。

通过这些测试数据,我们能够评估RAM的速度性能,并与宣称的速度进行对比。

步骤三: RAM稳定性测试为了评估RAM的稳定性,我们运行了一系列的稳定性测试程序。

这些测试程序会对RAM进行长时间的读写操作,以模拟实际使用中的工作负载。

通过观察测试过程中是否出现错误或异常情况,我们能够评估RAM的稳定性和可靠性。

步骤四: RAM兼容性测试我们使用了多种不同的计算机系统进行RAM的兼容性测试。

通过在不同的系统中安装RAM,并测试其是否正常工作,我们能够评估RAM的兼容性。

兼容性测试还包括与不同操作系统和应用程序的兼容性。

步骤五: RAM温度测试为了评估RAM的温度性能,我们使用了专业的温度监测设备对RAM进行了温度测试。

我们记录了在不同负载下RAM的温度变化情况,并对测试结果进行了分析。

4. 测试结果与分析容量测试结果经过容量测试,我们确认了RAM的实际容量与宣称容量一致,说明RAM的容量达到了厂商的宣称。

速度测试结果通过速度测试,我们得出了RAM的读取和写入速度数据。

静态随机存储器实验报告

静态随机存储器实验报告

一、实验目的1. 理解静态随机存储器(RAM)的基本原理和组成结构。

2. 掌握静态随机存储器的读写操作方法。

3. 熟悉静态随机存储器在实际应用中的功能。

二、实验原理静态随机存储器(RAM)是一种易失性存储器,它可以在正常电源供电的情况下保持数据。

RAM具有读、写速度快,功耗低,体积小等优点,广泛应用于计算机、通信、嵌入式系统等领域。

静态随机存储器主要由存储单元、地址译码器、读/写控制逻辑、数据输入/输出电路等部分组成。

存储单元是RAM的基本存储单元,通常由一个触发器组成,用于存储一个二进制位的数据。

地址译码器将地址信号转换为对应的存储单元地址,读/写控制逻辑根据控制信号完成数据的读写操作。

三、实验器材1. 静态随机存储器(RAM)芯片:6116(2Kx8bit)2. 逻辑分析仪3. 信号发生器4. 信号源5. 接线板6. 电路测试仪器四、实验内容1. 静态随机存储器芯片的引脚功能说明6116芯片的引脚功能如下:(1)A0-A10:地址线,用于选择存储单元;(2)D0-D7:数据线,用于数据的输入/输出;(3)CS:片选线,低电平有效;(4)OE:输出使能,低电平有效;(5)WE:写使能,低电平有效。

2. 静态随机存储器的读写操作(1)写操作:首先将地址信号输入到地址线A0-A10,然后将要写入的数据通过数据线D0-D7输入,将CS、OE、WE线置为低电平,即可完成写操作。

(2)读操作:首先将地址信号输入到地址线A0-A10,然后将CS、OE、WE线置为低电平,即可完成读操作。

3. 实验步骤(1)搭建实验电路:根据实验原理图,将6116芯片、逻辑分析仪、信号发生器等设备连接到实验板上。

(2)设置地址信号:通过信号发生器生成地址信号,并将其输入到6116芯片的地址线A0-A10。

(3)设置读写控制信号:将CS、OE、WE线置为低电平,表示进行读写操作。

(4)观察逻辑分析仪的波形:在逻辑分析仪上观察数据线的波形,分析读写操作的正确性。

计算机组成原理存储器实验报告

计算机组成原理存储器实验报告

计算机组成原理存储器实验报告一、实验目的本实验旨在通过实践了解存储器的基本原理和实现方式,掌握存储器的读写操作。

二、实验原理存储器是计算机中用于存储数据和程序的设备,其按照不同的存取方式可分为随机存储器(RAM)和只读存储器(ROM)。

其中RAM是一种易失性存储器,其存储的数据会随着电源关闭而丢失;而ROM则是一种非易失性存储器,其存储的数据在电源关闭后仍能保持不变。

本实验使用的是一个8位RAM,其具有256个存储单元,每个存储单元可以存储8位数据。

RAM可以进行读写操作,读操作是将存储单元中的数据读取到CPU中,写操作是将CPU中的数据写入到存储单元中。

存储单元的地址是由地址线来控制的,本实验中使用的是8位地址线,因此可以寻址256个存储单元。

三、实验仪器本实验使用的主要仪器有:存储器板、八位开关、八位数码管、八位LED灯、地址选择开关和地址计数器等。

四、实验过程1. 准备工作:将存储器板与开发板进行连接,并将八位开关、八位数码管、八位LED灯、地址选择开关和地址计数器等连接到存储器板上。

2. 设置地址:使用地址选择开关来设置需要读写的存储单元的地址。

3. 写操作:将需要存储的数据通过八位开关输入到CPU中,然后将CPU中的数据通过写信号写入到存储单元中。

4. 读操作:将需要读取的存储单元的地址通过地址选择开关设置好,然后通过读信号将存储单元中的数据读取到CPU中。

5. 显示操作:使用八位数码管或八位LED灯来显示读取到的数据或写入的数据。

6. 重复上述操作,进行多次读写操作,观察存储器的读写效果和数据变化情况。

五、实验结果通过本次实验,我们成功地进行了存储器的读写操作,并观察到了存储器中数据的变化情况。

在实验过程中,我们发现存储器的读写速度非常快,可以满足计算机的高速运算需求。

同时,存储器的容量也非常大,可以存储大量的数据和程序,为计算机提供了强大的计算和存储能力。

六、实验总结本次实验通过实践掌握了存储器的基本原理和实现方式,了解了存储器的读写操作。

计算机组成原理存储器实验报告

计算机组成原理存储器实验报告

计算机组成原理存储器实验报告一、实验目的本次实验的目的是通过实际操作,了解存储器的组成和工作原理,掌握存储器的读写操作。

二、实验原理存储器是计算机中的重要组成部分,用于存储程序和数据。

存储器按照存储介质的不同可以分为内存和外存,按照存储方式的不同可以分为随机存储器(RAM)和只读存储器(ROM)等。

本次实验使用的是随机存储器,随机存储器是一种易失性存储器,数据在断电后会丢失。

随机存储器按照存储单元的位数可以分为8位、16位、32位等,按照存储单元的数量可以分为256×8、512×16、1024×32等。

存储器的读写操作是通过地址总线、数据总线和控制总线来完成的。

地址总线用于传输存储单元的地址,数据总线用于传输数据,控制总线用于传输控制信号。

三、实验器材1. 存储器芯片:AT24C022. 单片机:STC89C523. 电源、示波器、万用表等四、实验步骤1. 连接电路将AT24C02存储器芯片和STC89C52单片机按照电路图连接好,接上电源。

2. 编写程序编写程序,实现对AT24C02存储器的读写操作。

程序中需要设置存储器的地址和数据,以及读写操作的控制信号。

3. 烧录程序将编写好的程序烧录到STC89C52单片机中。

4. 运行程序运行程序,观察存储器的读写操作是否正确。

五、实验结果经过实验,我们成功地实现了对AT24C02存储器的读写操作。

在程序中设置了存储器的地址和数据,通过控制信号实现了读写操作。

在读操作中,我们可以看到存储器中的数据被正确地读出;在写操作中,我们可以看到存储器中的数据被正确地写入。

六、实验总结通过本次实验,我们深入了解了存储器的组成和工作原理,掌握了存储器的读写操作。

同时,我们也学会了如何使用单片机来控制存储器的读写操作。

这对于我们深入学习计算机组成原理和嵌入式系统开发都具有重要的意义。

实验RAM的扩展实验报告

实验RAM的扩展实验报告

实验RAM的扩展实验报告实验RAM的扩展实验报告一、引言随着计算机技术的不断发展,人们对于计算机存储器的需求也越来越高。

为了满足这一需求,研究人员不断努力开发新的存储器技术。

在本次实验中,我们将探究实验RAM的扩展实验,以探索如何提高计算机的存储器性能。

二、实验目的本次实验的主要目的是通过扩展实验RAM来提高计算机的存储器性能。

我们将通过增加RAM的容量,以及优化数据访问方式来实现这一目标。

三、实验步骤1. 扩展RAM容量:我们首先将原有的RAM容量扩大两倍,以增加计算机的存储空间。

通过增加RAM的容量,可以提高计算机处理大量数据的能力。

2. 优化数据访问方式:我们将尝试使用不同的数据访问方式,以提高计算机的存储器性能。

例如,我们可以使用缓存技术来减少数据访问的延迟时间。

此外,我们还可以尝试使用预取技术,提前将可能需要的数据加载到RAM中,以减少数据访问的等待时间。

3. 实验数据收集:在实验过程中,我们将记录不同数据访问方式下的存储器性能指标,如访问延迟时间、数据吞吐量等。

通过对比不同数据访问方式下的性能指标,我们可以评估扩展RAM对计算机性能的影响。

四、实验结果与分析根据我们的实验数据,我们发现扩展RAM的容量可以显著提高计算机的存储器性能。

当RAM容量增加时,计算机可以存储更多的数据,从而减少了数据的交换和加载时间,提高了计算机的运行速度。

此外,通过优化数据访问方式,我们也取得了一定的性能提升。

使用缓存技术可以减少数据访问的延迟时间,提高数据的读取速度。

使用预取技术可以提前将可能需要的数据加载到RAM中,减少了数据访问的等待时间。

这些优化措施都对计算机的存储器性能产生了积极的影响。

然而,我们也发现在实验过程中存在一些挑战。

扩展RAM的容量需要更高的成本投入,而且对于某些应用场景来说,并不一定能够带来明显的性能提升。

此外,优化数据访问方式也需要考虑到不同的应用需求,选择合适的优化策略。

五、结论通过本次实验,我们深入探究了实验RAM的扩展实验。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ARM的串行口实验姓名:学号:班级:2010年10月13号目录一、实验目的 (3)二、实验内容 (3)三、预备知识 (3)四、实验设备及工具 (3)五、实验原理及说明 (4)六、实验步骤 (4)七、思考题 (5)1.232串行通讯的数据格式是什么? (5)2.串行通讯最少需要几根线,分别如何连接? (6)3.ARM的串行口有几个,相应的寄存器是什么? (6)一、实验目的1.掌握ARM的串行口工作原理。

2.学习编程实现ARM的UART通讯。

3.掌握CPU利用串口通讯的方法。

二、实验内容学习串行通讯原理,了解串行通讯控制器,阅读ARM芯片文档,掌握ARM的UART相关寄存器的功能,熟悉ARM系统硬件的UART相关接口。

编程实现ARM和计算机实现串行通讯:ARM监视串行口,将接收到的字符再发送给串口(计算机与开发板是通过超级终端通讯的),即按PC键盘通过超级终端发送数据,开发板将接收到的数据再返送给PC,在超级终端上显示。

三、预备知识1、用EWARM集成开发环境,编写和调试程序的基本过程。

2、ARM应用程序的框架结构。

3、了解串行总线四、实验设备及工具硬件:ARM嵌入式开发平台、PC机Pentium100以上、用于ARM920T的JTAG仿真器、串口线。

软件:PC机操作系统Win2000或WinXP、EWARM集成开发环境、仿真器驱动程序、超级终端通讯程序。

五、实验原理及说明异步串行I/O异步串行方式是将传输数据的每个字符一位接一位(例如先低位、后高位)地传送。

数据的各不同位可以分时使用同一传输通道,因此串行I/O可以减少信号连线,最少用一对线即可进行。

接收方对于同一根线上一连串的数字信号,首先要分割成位,再按位组成字符。

为了恢复发送的信息,双方必须协调工作。

在微型计算机中大量使用异步串行I/O方式,双方使用各自的时钟信号,而且允许时钟频率有一定误差,因此实现较容易。

但是由于每个字符都要独立确定起始和结束(即每个字符都要重新同步),字符和字符间还可能有长度不定的空闲时间,因此效率较低。

六、实验步骤1.编写串口驱动函数2.在主函数中实现将从串口0接收到的数据发送到串口0(Main.c):3. 启动H-JTAG 仿真器并进行初始化配置。

4. 启动EWARM新建工程,将“Exp1 ARM串口实验”中的文件添加到工程中并调试运行。

七、思考题1.232串行通讯的数据格式是什么?答:开始前,线路处于空闲状态,送出连续“1”。

传送开始时首先发一个“0”作为起始位,然后出现在通信线上的是字符的二进制编码数据。

每个字符的数据位长可以约定为5 位、6 位、7 位或8 位,一般采用ASCII 编码。

后面是奇偶校验位,根据约定,用奇偶校验位将所传字符中为“1”的位数凑成奇数个或偶数个。

也可以约定不要奇偶校验,这样就取消奇偶校验位。

最后是表示停止位的“1”信号,这个停止位可以约定持续1 位、1.5 位或2 位的时间宽度。

至此一个字符传送完毕,线路又进入空闲,持续为“1”。

经过一段随机的时间后,下一个字符开始传送才又发出起始位。

每一个数据位的宽度等于传送波特率的倒数。

微机异步串行通信中,常用的波特率为50,95,110,150,300,600,1200,2400,4800,9600 等。

接收方按约定的格式接收数据,并进行检查,可以查出以下三种错误:1)奇偶错:在约定奇偶检查的情况下,接收到的字符奇偶状态和约定不符。

2)帧格式错:一个字符从起始位到停止位的总位数不对。

3)溢出错:若先接收的字符尚未被微机读取,后面的字符又传送过来,则产生溢出错。

每一种错误都会给出相应的出错信息,提示用户处理。

2.串行通讯最少需要几根线,分别如何连接?答:TXD/RXD 是一对数据线,TXD 称发送数据输出,RXD 称接收数据输入。

当两台微机以全双工方式直接通信(无MODEM 方式)时,双方的这两根线应交叉联接(扭接)。

所有的信号都要通过信号地线构成耦合回路。

通信线有以上三条(TXD、RXD 和信号地)就能工作了。

其余信号主要用于双方设备通信过程中的联络(握手信号),而且有些信号仅用于和MODEM 的联络。

若采取微型机对微型机直接通信,且双方可直接对异步串行通信电路芯片编程,若设置成不要任何联络信号,则其它线都可不接。

有时在通信线的同一端将相关信号短接以“自握手”方式满足联络要求。

3.ARM的串行口有几个,相应的寄存器是什么?答:ARM 自带三个UART 端口,每个UART 通道都有16 字节的FIFO(先入先出寄存器)用于接受和发送。

用系统时钟最大波特率可达230.4K,如果用外部时钟(UCLK)UART 可以以更高的波特率运行。

UART线控制寄存器包括ULCON0,ULCON1和ULCON2,主要用来选择每帧数据位数、停止位数,奇偶校验模式及是否使用红外模式。

UART控制寄存器包括UCON0, UCON1 and UCON2,主要用来选择时钟,接收和发送中断类型(即电平还是脉冲触发类型),接收超时使能,接收错误状态中断使能,回环模式,发送接收模式等。

UART错误状态寄存器包括UERSTAT0, UERSTAT1 and UERSTAT2,此状态寄存器的相关位表明是否有帧错误或溢出错误发生。

UART 模块中有三个接收/发送状态寄存器,包括UTRSTAT0,UTRSTAT1 和UTRSTAT2。

在UART 模块中有3 个UART 发送缓冲寄存器,包括UTXH0,UTXH1 和UTXH2,UTXHn 有8位发送数据。

在UART 模块中有3 个UART 接收缓冲寄存器,包括URXH0,URXH1 和URXH2,URXHn 有8位接收数据。

UART包括三个波特率因子寄存器UBRDIV0, UBRDIV1 and UBRDIV2,存储在波特率因子寄存器(UBRDIVn)中的值决定串口发送和接收的时钟数率(波特率)4.用中断方式实现串口驱动。

答:/********************************************************** *****************\Copyright (c) 2004-2007 threewater@, All rights reserved.by threewter 2004.5.12\********************************************************** *****************//********************************************************** *****************\#说明: C main 函数,ucos-ii初始化等定义---------------------------------- Bug------------------------------------------------------------------------ TODO list------------------------------------------------------------------------修正--------------------------------------2004-5-12 创建\********************************************************** *****************///#include"../ucos-ii/includes.h" /* uC/OS interface *///#include "../ucos-ii/add/osaddition.h"//#include "../inc/drivers.h"//#include "../inc/sys/lib.h"//#include "../src/gui/gui.h"#define U8 unsigned char#include <string.h>#include <stdio.h>#define TRUE 1#define FALSE 0#pragma import(__use_no_semihosting_swi) // ensure no functions that use semihosting#define rUTRSTAT0 (*(volatile unsigned *)0x50000010)#define rUTRSTAT1 (*(volatile unsigned *)0x50004010)#define WrUTXH0(ch) (*(volatile unsigned char*)0x50000020)=(unsigned char)(ch)#define WrUTXH1(ch) (*(volatile unsigned char*)0x50004020)=(unsigned char)(ch)#define RdURXH0() (*(volatile unsigned char *)0x50000024) #define RdURXH1() (*(volatile unsigned char *)0x50004024) //void Uart_SendByten(int Uartnum, U8 data);void Uart_SendByten(int,U8);char Uart_Getchn(char* Revdata, int Uartnum, int timeout);void ARMTargetInit(void);void hudelay(int time);int main(void){ //int ndev;char c1[1];char input1[1];char input2[1];char input3[1];char err;ARMTargetInit(); // do target (uHAL based ARM system) initialisation //// err=Uart_Getchn(c1,0,0); //从串口采集数据// Uart_SendByten(0,c1[0]); //显示采集的数据while(1){Uart_SendByten(0,0xa);//换行Uart_SendByten(0,0xd);//回车do{err=Uart_Getchn(input1,0,0); //从串口采集数据if(input1[0]=='a'){err=Uart_Getchn(input2,0,0); //从串口采集数据if(input2[0]=='b'){err=Uart_Getchn(input3,0,0); //从串口采集数据if(input3[0]=='c'){Uart_SendByten(0,input1[0]);Uart_SendByten(0,input2[0]);Uart_SendByten(0,input3[0]);}else continue;}else continue;}else continue;Uart_SendByten(0,0xa);//换行Uart_SendByten(0,0xd);//回车}while(1);err=Uart_Getchn(c1,0,0); //从串口采集数据Uart_SendByten(0,c1[0]); //显示采集的数据}void Uart_SendByten(int Uartnum, U8 data)//ok eric rong { //int i;if(Uartnum==0){while(!(rUTRSTAT0 & 0x4)); //Wait until THR is empty.hudelay(10);WrUTXH0(data);}else{while(!(rUTRSTAT1 & 0x4)); //Wait until THR is empty.hudelay(10);WrUTXH1(data);}}char Uart_Getchn(char* Revdata, int Uartnum, int timeout) {if(Uartnum==0){while(!(rUTRSTAT0 & 0x1)); //Receive data read*Revdata=RdURXH0();return TRUE;}else{while(!(rUTRSTAT1 & 0x1));//Receive data read*Revdata=RdURXH1();return TRUE;}}程序中划线部分使我们的程序。

相关文档
最新文档