电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

南邮嵌入式系统B实验报告

16页
  • 卖家[上传人]:m****
  • 文档编号:482490201
  • 上传时间:2023-10-11
  • 文档格式:DOCX
  • 文档大小:349.29KB
  • / 16 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、南京邮电大学通信学院实验报告实验名称:基于ADS开发环境的程序设计 嵌入式Linux交叉开发环境的建立 嵌入式Linux环境下的程序设计 多线程程序设计课程名称嵌入式系统B班级学号 姓 名 开课学期 2016/2017 学年 第2学期实验一 基于 ADS 开发环境的程序设计一、实验目的1、学习 ADS 开发环境的使用;2、学习和掌握 ADS 环境下的汇编语言及 C 语言程序设计3、学习和掌握汇编语言及 C 语言的混合编程方法。二、实验内容1、编写和调试汇编语言程序;2、编写和调试 C 语言程序;3、编写和调试汇编语言及 C 语言的混合程序; 三、实验过程与结果1、寄存器 R0 和 R1 中有两个正整数,求这两个数的最大公约数,结果保存 在 R3 中。代码1:使用 C 内嵌汇编#includeint find_gcd(int x,int y)int gcdnum;_asmMOV r0, xMOV r1, yLOOP:CMP r0, r1SUBLT r1, r1, r0SUBGT r0, r0, r1BNE LOOPMOV r3, r0MOV gcdnum,r3 /stop / B sto

      2、p / ENDreturn gcdnum; int main()int a;find_gcd(18,9);printf(gcdnum:%dn,a);return 0;代码 2:使用纯汇编语言AREA example1,CODE,readonlyENTRYMOV r0, #4MOV r1, #9startCMP r0, r1SUBLT r1, r1, r0SUBGT r0, r0, r1BNE startMOV r3, r0stopB stopEND2、寄存器RO、R1和R2中有三个正整数,求出其中最大的数,并将其保存 在R3中。代码 1:使用纯汇编语言AREA examp,CODE,READONLYENTRYMOV R0,#10MOV R1,#30MOV R2,#20StartCMP R0,R1BLE lbl_aCMP R0,R2MOVGT R3,R0MOVLE R3,R2B lbl_blbl_aCMP R1,R2MOVGT R3,R1MOVLE R3,R2lbl_bB.END代码2:使用C内嵌汇编语言#include int find_maxnum(int a,int b,int c

      3、)int x;_asmMOV r0,aMOV r1,bMOV r2,cCMP r0,r1BLE lbl_a/相等跳转CMP r0,r2MOVGT x,r0MOVLE x,r2/MOV r3,xB lbl_blbl_a:CMP r1,r2MOVGT x,r1MOVLE x,r2/MOV r3,xlbl_b:return x;int for_r3(int t)/int t;_asmMOV r3,treturn 0;int main()int a;a = find_maxnum(130,50,70); for_r3(a);printf(max:%drn,a);return 0;3、编程实现将从地址 source 开始的 30 个字节数据复制到地址为 dest 的地 方。代码:NUM EQU 30AREA Init, CODE, READONLY CODE32ENTRYSTARTLDRR0,=SOURCELDRR1,=DESTMOV R2, #NUMMOV SP, #0X400BLKCOPYMOV R3, R2, LSR #3 BEQ COPYWORDSSTMFD SP!, R4-R11OCT

      4、COPYLDMIA R0!, R4-R11 STMIA R1!, R4-R11SUBSR3,R3,#1BNEOCTCOPYLDMFDSP!,R4-R11COPYWORDSANDSR2,R2, #7BEQSTOPWORDCOPYLDRR3,R0,#4STRR3,R1,#4SUBSR2,R2,#1BNEWORDCOPYSTOPB STOPLTORGSOURCE DCD 1,2,3,4,5,6,7,8,1,2,3,4,5,6,7,8,1,2,3,4,5,6,7,8,1,2,3,4,5,6DEST DCD 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 END4、用汇编语言设计实现 10!。代码:使用纯汇编语言AREA Fctrl,CODE,READONLYENTRYCODE32STARTMOV R8 , #10MOV R9 , #0SUB R0,R8,#1LoopMOV R1 , R9UMULL R8 , R9 , R0 , R8MLA R9 , R1 , R0 , R9SUBS R0 , R0 , #1BNE Loop

      5、Stop B StopEND5、实现字符串的逆序复制 TEXT1=”HELLO”= TEXT2=”OLLEH”。 代码:使用纯汇编语言AREA invstring, CODE, READONLYENTRYATARTADR R1, TEXT1ADR R2, TEXT2MOV R3, #0LOOPLDRB R0, R1, #1ADD R3, R3,#1CMP R0, #0BNE LOOPSUB R1, R1, #2LOOP1LDRB R0, R1, #-1STRB R0, R2, #1SUB R3, R3, #1CMP R3, #1BNE LOOP1MOV R5, #&55NOPTEXT1 = HELLO,0ALIGNTEXT2 = OELLHEND6、用调用子程序的方法实现1! +2! +3! +.+10!代码:asmp.sAREA JC, CODE, READONLYEXPORT JCPENTRY JCPADD R3, R0, #1MOV R2, #1MOV R1, #1LOOP MUL R0, R1, R2MOV R1, R0ADD R2, R2, #1CMP R2, R3BNE L

      6、OOPNOPNOP MOV PC, LRENDPROGC.c#include Extern int JCP(int N) int main() int res=0; int m=10; int i;for (i=1;i=m;i+) res=res+JCP(i); printf(“The result =%dn”,res); return 0; 四、实验小结实验二 嵌入式Linux交叉开发环境的建立一、实验目的1、掌握嵌入式Linux交叉开发环境的建立方法2、学习和掌握 Linux 常用命令3、学习和掌握vi编辑器的使用二、实验内容1、搭建嵌入式 Linux 交叉开发环境2、熟悉 Linux 的常用命令3、熟悉vi编辑器的常用命令三、实验原理Linux系统是UNIX系统的分支,是UNIX的微机版。Linux具有异常丰富的 驱动程序资源,支持各种主流的硬件设备与技术。 Linux 包含了现代的 UNIX 操 作系统的所有功能特性,这些功能包括多任务、虚拟内存、虚拟文件系统、进程 间通信、对称所处理器、多用户支持等。Vi编辑器是所有UNIX和Linux下的标准编辑器。它包含3种工作模式。 嵌

      7、入式系统是专用的计算机系统,它对系统的功能、可靠性、成本、体积、 功耗等有严格的要求。大部分嵌入式系统没有大容量存储设备,一般不能安装大 型开发软件,系统的开发需要采用交叉开发模式。四、实验过程与结果实验用的是UP-NetARM2410-S试验箱,里面配有三星的芯片S3c2410X。 打开电脑上 VMWare 软件,在 Windows 系统下启动虚拟机里的 Linux 系统。接着需要1. 宿主机的环境搭建下载并运行VMWare,根据向导创建一台新虚拟机并选择Linux作为客户操 作系统,再根据向导安装 RedHat Linux 9.0。2. 虚拟机中启动Linux操作系统使用root登陆,用户名为root,密码为123456。之后对共享文件设置进 行调整:打开settings界面,打开shared folders功能,同时将路径设置 到有课前下载的软件的目录下。3. 开发工具软件的安装(1)安装 gcc打开 Linux 后,打开终端窗口,在共享的目录下找到 install.sh 并运行, 命令如下:ls. / install.sh安装程序将自动建立 /arm2410s 目录,并将所有的

      8、开发软件包安装到 /arm2410s 目录下,同时自动配置编译环境,建立合适的符号链接。安装完 成后在目录/op t/hos t/armv4l/bin/下应该能看到主编译器。2)配置 PATH 路径vi .bash.profile将里面 PATH 变量改为 PATH=$PATH:$HOME/bin:/opt/host/armv41/bin/; 存盘后执行source .bash_profile以后 armv4l-unknown-linux-gcc 将被自动搜索到4. 宿主机上的开发环境配置(1)配置 IP 地址2)关闭防火墙(3)配置 NFS。单击“Red”菜单一“系统设置”一“服务器设置”一“服务”,在“服务配 置”窗口中勾选nfs,单击“开始”(4) NFS设置单击“Red”菜单一 “系统设置” 一“服务器设置”一 “NFS服务器”,打开 “NFS 服务器配置”窗口,设置 NFS 共享。然后在NFS服务器中增加主机IP地址的链接许可和目录。完成配置。5. 目标机的信息输出Windows 系统下,“开始”一“所有程序”一“附件”一“通讯”一“超级 终端”,新建一个通信终端。区号、电话号码随意输入。设置每秒位数为“ 115200”,数据位为“ 8”,无奇偶校验,停止位为“ 1 ”,无数据流控制。 单击“确定”。6. 程序的运行打开超级终端,启动Linux,屏幕显示:/mnt/yaffs在超级终端上执行挂载命令:/m nt mou nt -t nfs 192.168.0.121:/arm2410s /mnt /nfs 挂载成功后可执行程序。实验三 嵌入式 Linux 环境下的程序设计一、实验目的1、掌握嵌入式Linux环境下的程序设计方法2、学会编写 Makefile 文件二、实验内容1、熟悉嵌入式教学实验箱的使用2、编写 C 程序

      《南邮嵌入式系统B实验报告》由会员m****分享,可在线阅读,更多相关《南邮嵌入式系统B实验报告》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.