北航研究生arm9嵌入式系统实验报告

北航研究生arm9嵌入式系统实验报告

ID:11870935

大小:1.50 MB

页数:40页

时间:2018-07-14

北航研究生arm9嵌入式系统实验报告_第1页
北航研究生arm9嵌入式系统实验报告_第2页
北航研究生arm9嵌入式系统实验报告_第3页
北航研究生arm9嵌入式系统实验报告_第4页
北航研究生arm9嵌入式系统实验报告_第5页
资源描述:

《北航研究生arm9嵌入式系统实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、北京航空航天大学ARM9嵌入式系统实验报告实验一、ARM基础知识和开发环境一、实验目的1.掌握ARM的串行口工作原理。2.学习编程实现ARM的UART通讯。3.掌握S3C2410寄存器配置方法。二、实验内容1.熟悉打开已有工程的步骤,掌握仿真调试的方法。2.建立一个新工程,熟练掌握编译器和链接器的设置方法。3.从串口输入字符串,将0~9数字在超级终端上连续显示,“Enter”键换行。4.将第三步得到的字符转换成BCD码,限制在0~1023,用于控制直流电机。三、预备知识1.了解EWARM集成开发环境的基本功能2.学习串口

2、通讯的基本知识3.熟悉S3C2410串口有关的寄存器四、实验设备及工具1.2410s教学实验箱2.S3C2410的JTAG仿真器3.ARMEWARM5.3集成开发环境4.串口连接线五、实验原理及说明1.异步串行I/O异步串行方式是将传输数据的每个字符一位接一位(例如先低位、后高位)地传送。数据的各不同位可以分时使用同一传输通道,因此串行I/O可以减少信号连线,最少用一对线即可进行。接收方对于同一根线上一连串的数字信号,首先要分割成位,再按位组成字符。为了恢复发送的信息,双方必须协调工作。在微型计算机中大量使用异步串行I/

3、O方式,双方使用各自的时钟信号,而且允许时钟频率有一定误差,因此实现较容易。但是由于每个字符都要独立确定起始和结束(即每个字符都要重新同步),字符和字符间还可能有长度不定的空闲时间,因此效率较低。-40-北京航空航天大学ARM9嵌入式系统实验报告图1异步串行I/O示意图1.RS-232C接口通信的两种基本连接方式这是美国电子工业协会推荐的一种标准(ElectronicindustriesAssociationRecoil-mendedStandard)。它在一种25针接插件(DB—25)上定义了串行通信的有关信号。这个标

4、准后来被世界各国所接受并使用到计算机的I/O接口中。两种连接方式如图2:图2RS-232C接口通信的两种基本连接方式2.信号电平规定1)EIA电平:双极性信号逻辑电平,它是一套负逻辑定义Ø-3V到-25V之间的电平表示逻辑“1”Ø+3V到+25V之间的电平表示逻辑“0”2)TTL电平:计算机内部(S3C2410)使用LVTTL电平3)电平转换电路:常用专门的RS-232接口芯片,如SP3232、SP3220等,在LVTTL电平和EIA电平之间实现相互转换。3.异步串行口接口电路-40-北京航空航天大学ARM9嵌入式系统实

5、验报告图3异步串行口接口电路1.发送数据和接收数据1)发送数据voidUart_SendByten(intUartnum,U8data)//往串口发送数据WrUTXH0(data);//往串口数据寄存器写数据2)接收数据charUart_Getchn(char*Revdata,intUartnum,inttimeout)//接收数据RdURXH0();//读取串口数据寄存器数据voidUart_SendByten(intUartnum,U8data{if(Uartnum==0){while(!(rUTRSTAT0&0x4

6、));//WaituntilTHRisempty.hudelay(10);WrUTXH0(data);}else{while(!(rUTRSTAT1&0x4));//WaituntilTHRisempty.hudelay(10);WrUTXH1(data);}}charUart_Getchn(char*Revdata,intUartnum,inttimeout){if(Uartnum==0){if((rUTRSTAT0&0x1)==0x01)//Receivedataread{*Revdata=RdURXH0();ret

7、urnTRUE;}else{returnFALSE;}}-40-北京航空航天大学ARM9嵌入式系统实验报告else{while(!(rUTRSTAT1&0x1));//Receivedataread*Revdata=RdURXH1();returnTRUE;}}voidinit_MotorPort(){rGPBCON=rGPBCON&0x3ffff0

8、0xa;//DeadZone=24,PreScalero1=2;rTCFG0=(0<<16)

9、2;//dividertimer0=1/2;rTCFG1=0;rTCNTB0=

10、MOTOR_CONT;rTCMPB0=MOTOR_MID;rTCON=0x2;//updatemodeforTCNTB0andTCMPB0.rTCON=0x19;//timer0=autoreload,start.DeadZone}voidSetPWM(intvalue){rTCMPB0=MOTOR_MID+valu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。