第一篇:ARM嵌入式教学实验系统项目合作意向书
项目合作意向书
项目名称:“arm嵌入式教学实验系统”
甲方:深圳信息职业技术学院
乙方:深圳市旋极历通科技有限公司
甲乙双方经友好协商,同意以“深圳市旋极历通科技有限公司”作为产业化基地,进行“arm嵌入式教学实验系统”的产业化实施,具体条款如下:
1、甲乙双方同意将该项目技术作价人民币贰佰万元;由甲方及参与研发人员提供技术服务,乙方负责产品化及市场营销的实施。
2、乙方每支付技术费人民币贰万元给甲方,将取得该项目的1%股权。乙方具体出资金额及控股比例,双方另行沟通并签定合作合同书,本合作意向于甲乙双方的合作合同书签定后生效。
3、若乙方支付的技术费高于人民币壹佰零贰万元,即乙方对该项目的控股比例高于51%,甲方不得对项目剩余作价比例进行再转让等处理;若乙方支付的技术费低于人民币肆拾万元,即乙方对该项目的控股比例低于20%,甲方有权独自继续对项目剩余作价比例进行再转让等处理。
4、在合作意向书生效后,该项目所有知识产权属甲乙双方共同所有。甲方不得再对该项目的扩充版、升级版、变形版本单独转让,且对该项目的核心及相差技术负有保密的义务,违约将追究法律责任。
5、甲乙双方将根据具体情况签署阶段性实施计划书。
6、未尽事宜,将友好协商解决。
甲方:深圳信息职业技术学院乙方:深圳市旋极历通科技有限公司
代表签字: 代表签字:
日期: 日期:
第二篇:嵌入式系统ARM实验报告
南京邮电大学通信与信息工程学院
实验报告
实验名称:实验一基于ADS开发环境的设计
实验二嵌入式Linux交叉开发环境的建立 实验三嵌入式Linux环境下的程序设计
课程名称嵌入式系统B
班级学号B13010711 姓名马俊民
开课时间 2015/2016学年第1学期
实验一基于ADS开发环境的程序设计
一、实验目的
1、学习ADS开发环境的使用;
2、学习和掌握ADS环境下的汇编语言及C语言程序设计;
3、学习和掌握汇编语言及C语言的混合编程方法。
二、实验内容
1、编写和调试汇编语言程序;
2、编写和调试C语言程序;
3、编写和调试汇编语言及C语言的混合程序;
4、编写程序测试多寄存器传送指令的用法。
三、实验原理
ADS全称为ARM Developer Suite,是ARM公司推出的新一代ARM集成开发工具。现在常用的ADS版本是ADS1.2,它取代了早期的ADS1.1和ADS1.0。
ADS用于无操作系统的ARM系统开发,是对裸机(可理解成一个高级单片机)的开发。ADS具有极佳的测试环境和良好的侦错功能,它可使硬件开发工作者更深入地从底层去理解ARM处理器的工作原理和操作方法,为日后自行设计打基础,为BootLoader的编写和调试打基础。
1.ADS软件的组成
ADS由命令行开发工具、ARM运行时库、GUI开发环境(CodeWarrior和AXD)、实用程序、支持软件等组成。
2.GUI开发环境
ADS GUI开发环境包含CodeWarrior和AXD两种,其中Code Warrior是集成开发工具,而AXD是调试工具。
使用汇编语言进行编程简单、方便,适用于初始化硬件代码、启动代码等。汇编语言具有一些相同的基本特征:
1.一条指令一行。
2.使用标号(label)给内存单元提供名称,从第一列开始书写。3.指令必须从第二列或能区分标号的地方开始书写。4.注释必须跟在指定的注释字符后面,一直书写到行尾。
在ARM汇编程序中,每个段必须以AREA作为段的开始,以碰到下一个AREA作为该段的结束,段名必须唯一。程序的开始和结束需以ENTRY和END来标识。嵌入式C语言设计是利用基本的C语言知识,面向嵌入式工程实际应用进行程序设计。为了使单独编译的C语言程序和汇编程序之间能够相互调用,必须为子程序之间的调用规定一定的规则。ATPCS就是ARM程序和Thumb程序中子程序调用的基本规则。
四、实验过程与关键代码分析
1.创建项目工程
在File菜单中选择New命令,打开一个新建工程对话框。在Project选项卡下,选择ARM Executable Image, 然后在Project name文本框里输入项目名称,点击确定。弹出工程窗口。
选择File菜单中的New命令,选择File标签页,在File name文本框中输入要创建的文件名。汇编程序以.s结尾,c程序以.c结尾。在Location文本框中指定文件的存放位置,选中Add to Project,在Targets中选中DebugRel,单击确定关闭窗口。
2.用汇编语言设计程序实现10的阶乘
AREA EXAMPLE, CODE, READONLY ENTRY start MOV R0, #10 MOV R1, #1 LOOP MUL R0, R0, R1 SUB R0, R0, 1 CMP R0, #1 BHI LOOP END 在这个程序中,我们首先对R0和R1赋值,将R0作为一个变量,而R1作为一个存贮阶乘值的寄存器。在每进行一次乘法之后,将R0减1。同时在做完减法后进行判断,如果此时R0大于1,则返回继续乘法,否则结束程序,输出结果。
3.用调用子程序的方法实现1!+2!+3!+„+10!,代码如下: asmp.s
AREA JC, CODE, READONLY
EXPORT JCP
ENTRY JCP
ADD R3, R0, #1
MOV R2, #1
MOV R1, #1 LOOP MUL R0, R1, R2
MOV R1, R0
ADD R2, R2, #1
CMP R2, R3
BNE LOOP
NOP
NOP
MOV PC, LR
END
PROGC.c #include
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;} 在这个程序中,主程序由c语言完成作求和,子程序由汇编语言写成作阶乘。
5.实现字符串的逆序复制TEXT1=“HELLO”=>TEXT2=“OLLEH”
AREA invstring, CODE, READONLY start
ADR R1,TEXT1
ADR R2,TEXT2
MOV R3, #0 LOOP
LDRB R0,[R1], #1
ADD R3,R3,#1
CMP R0,#0
BNE LOOP
SUB R1,R1,#2
LOOP1
LDRB R0,[R1], #-1
STRB R0,[R2], #1
SUB R3,R3, #1
CMP R3,#1
BNE LOOP1
MOV R5,#&55
TEXT1
TEXT2 NOP =“HELLO”,0 ALIGN =“OELLH” END
五、实验小结
在这次实验中,学会了如何使用汇编程序进行编程。对汇编程序编程一些基本的要求有了一定的了解,学习了C语言的语法和在其中调用汇编程序的方法。学会了利用CodeWarrior IDE开发C和ARM汇编代码。学会了在AXD中进行代码调试的方法和过程,对AXD的调试有初步的了解。,实验二嵌入式Linux交叉开发环境的建立
一、实验目的
1、掌握嵌入式Linux交叉开发环境的建立方法
2、学习和掌握Linux常用命令
3、学习和掌握vi编辑器的使用
二、实验内容
1、搭建嵌入式Linux交叉开发环境
2、熟悉Linux的常用命令
3、熟悉vi编辑器的常用命令
三、实验原理
Linux系统是UNIX系统的分支,是UNIX的微机版。Linux具有异常丰富的驱动程序资源,支持各种主流的硬件设备与技术。Linux包含了现代的UNIX操作系统的所有功能特性,这些功能包括多任务、虚拟内存、虚拟文件系统、进程间通信、对称所处理器、多用户支持等。
Vi编辑器是所有UNIX和Linux下的标准编辑器。它包含3种工作模式。嵌入式系统是专用的计算机系统,它对系统的功能、可靠性、成本、体积、功耗等有严格的要求。大部分嵌入式系统没有大容量存储设备,一般不能安装大型开发软件,系统的开发需要采用交叉开发模式。
四、实验过程与关键代码分析
实验用的是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目录,并将所有的开发软件包安装到/arm2410s 目录下,同时自动配置编译环境,建立合适的符号链接。安装完成后在目录/opt/host/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地址
ifconfig eth0 192.168.0.121 命令配置了宿主机的IP地址。然后打开网络配置窗口,重新探测MAC地址。重新激活。(2)关闭防火墙
单击“Red”菜单→“系统设置”→“安全级别”→打开“安全级别配置”窗口,选择“无防火墙选项。”(3)配置NFS。
单击“Red”菜单→“系统设置”→“服务器设置”→“服务”,在“服务配置”窗口中勾选nfs,单击“开始”(4)NFS设置
单击“Red”菜单→“系统设置”→“服务器设置”→“NFS服务器”,打开“NFS服务器配置”窗口,设置NFS共享。
然后在NFS服务器中增加主机IP地址的链接许可和目录。完成配置。
5.目标机的信息输出
Windows系统下,“开始”→“所有程序”→“附件”→“通讯”→“超级终端”,新建一个通信终端。区号、电话号码随意输入。设置每秒位数为“115200”,数据位为“8”,无奇偶校验,停止位为“1”,无数据流控制。单击“确定”。
6.程序的运行
打开超级终端,启动Linux,屏幕显示:
[/mnt/yaffs] 在超级终端上执行挂载命令:
[/mnt] mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 挂载成功后可执行程序。
五、实验小结
在这次实验中,学会建立Linux交叉开发环境,学会了ls和vi,cd等常用的Linux命令,并掌握了Vi编辑器的使用方法。同时知道了如何在搭建失败时寻找错误进行排错。
实验三嵌入式Linux环境下的程序设计
一、实验目的
1、掌握嵌入式Linux环境下的程序设计方法
2、学会编写Makefile文件
二、实验内容
1、熟悉嵌入式教学实验箱的使用
2、编写C程序和Makefile文件
3、编译程序产生可执行程序
4、完成主机的挂载和程序的执行
三、实验原理
在嵌入式Linux环境下的程序设计方法有一下几个步骤:
1.编写源程序
2.编写Makefile文件 3.编译程序
4.运行和调试程序
5.将生产的可执行文件加入文件系统。
前三个步骤在宿主机上完成,后面的步骤在目标机上完成。
四、实验过程与关键代码分析
1.建立工作目录
mkdir hello cd hello
2.编写源程序
用vi编辑器编辑Hello.c文件
vi Hello.c 在Vi中输入源程序如下:
#include
printf(“hello world n”);}
3.编写Makefile文件
vi Makefile 在vi中编辑Makefile文件如下:
CC= armv4l-unknown-linux-gcc EXEC = hello OBJS = hello.o CFLAGS += LDFLAGS+=-static all: $(EXEC)$(EXEC):(OBJS)$(CC)$(LDFLAGS)–o $@ $(OBJS)clean:
-rm –f $(EXEC)*.elf *.gdb *.o
4.编译程序
在hello目录下运行“make”来编译程序。
make clean
make 编译成功后,生成可执行文件Hello.o。
5.下载调试
在宿主机上启动nfs服务,并将/arms2410s设置为共享目录。接下来启动超级终端,建立通讯,挂载。
[/mnt] mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 挂载成功后,进入/mnt/nfs,再进入/mnt/nfs/hello,直接运行刚刚编译生成的可执行文件Hello.o,查看运行结果
cd hello./hello 可以看见“Hello world”
只需要挂载一次便可,只要实验箱没有重启,就可以一直保持连接。反复修改、编译、调试,直至程序调试通过。
6.可执行文件加入文件系统
程序调试通过后,可以把可执行文件拖放到usr/bin目录下,然后使用mkcramfs制作工具生成新的文件系统。当系统启动后,就可以在相应目录下执行可执行程序hello.五、实验小结 在这次实验中,学会了在嵌入式Linux环境下设计程序。同时知道了如何对目标机进行挂载。以及如何在发现挂载不成功寻找错误进行修改。另外在编译文件时需要注意的也都有所了解。
实验四多线程程序设计
一、实验目的1、2、二、实验内容1、2、3、4、三、实验原理
四、实验过程与关键代码分析
五、实验小结
3+
第三篇:嵌入式系统实验
南京信息工程大学 实验(实习)报告
实验(实习)名称
电机转动控制及中断实验 实验(实习)日期
2016.5 得分
指导教师 谢胜东
学院 计算机与软件 专业 计算机科学与技术 年级
2013 班次 3 姓名
叶正舟 学号
20131308072 实验名称
电机转动控制及中断实验 实验目的
(1)熟悉ARM本身自带的六路即三对PWM,掌握相应寄存器的配置
(2)编程实现 ARM系统的PWM 输出和I/O 输出,前者用于控制直流电机,后者用于控制步进电机。
(3)了解直流电机和步进电机的工作原理,学会用软件的方法实现步进电机的脉冲分配,即用软件的方法代替硬件的脉冲分配器。
(4)掌握带有PWM 和I/O 的CPU 编程实现其相应功能的主要方法。实验环境
(1)ADS1.2开发环境(2)PC(3)串口线 实验内容及要求
学习步进电机和直流电机的工作原理,了解实现两个电机转动对于系统的软件和硬件要求。学习ARM知识,掌握PWM 的生成方法,同时也要掌握I/O 的控制方法。
(1)编程实现ARM芯片的一对PWM 输出用于控制直流电机的转动,通过A/D 旋钮控制其正反转及转速
(2)编程实现ARM的四路I/O 通道实现环形脉冲分配用于控制步进电机的转动,通过A/D 旋钮转角控制步进电机的转角。
(3)通过超级终端来控制直流电机与步进电机的切换。实验设计与实验步骤
(1)新建工程,将“电机转动控制实验”中的文件添加到工程(2)编写直流电机初始化数(MotorCtrl.c)(3)控制直流电机与步进电机 实验过程与分析
(1)通过把从串口中得到控制信息的代码修改成从zlg7289芯片中读取小键盘信息,从而利用试验台的小键盘来控制步进电机和直流电机的切换
(2)A/D转换可以把电信号转换成数字信号来控制电机的转速。for(;;)
{ loop:
//if((rUTRSTAT0 & 0x1))//有输入,则返回
if(rPDATG&ZLG7289_KEY)//17键小键盘控制电机
{
*Revdata=RdURXH0();
goto begin;
}
Delay(10);ADData=GetADresult(0);
if(abs(lastADData-ADData)<20)
goto loop;Delay(10);count=-(ADData-lastADData)*3;
//(ADData-lastADData)*270/1024为ad旋钮转过的角度,360/512为步距角,//由于接了1/8减速器,两者之商再乘以8为步进电机相应转过的角度
if(count>=0)
{//转角大于零
for(j=0;j { for(i=0;i<=7;i++) { SETEXIOBITMASK(stepdata[i], 0xf0); Delay(200); } } } lastADData=ADData; } } 实验结果总结 利用A/D转换器实现了对直流电机和步进电机的控制,利用实验设备上自带的小键盘实现了A/D转换器对两个电机控制的切换。心得体会 通过本次实验,熟悉了ARM自带的六路(三对)PWM,并对直流电机和步进电机的工作原理有了进一步的了解。 影城广告发布合作意向书 甲方: 乙方: 双方就_广告投放_项目的合作事宜,经过初步协商,达成如下合作意向: 一、双方同意就__广告投放 项目开展合作。 二、该项目的基本情况是: 1、甲方意向在乙方影院投放 1、映前广告 2、LED大屏广告 3、灯箱广告 2、意向协议签订后乙方同意在广告投放过程中意向客户广告播放排序尽可能靠前 三、本合同有效期自签订之日起一个月内有效,在甲乙双方完成前期工作基础上,双方商定于 ****年**月**日签订正式合同。 四、到期还未签订正式合同,意向书所列权利义务自动失效。 五、具体合作内容以 双方的正式合同为准。 甲方: 乙方: 代表: 代表: 盖章: 盖章: 日期: 日期: 项目合作意向书 就2013呼铁局煤炭铁路运力项目合作意向书 甲方:包头市星海煤炭运销有限公司 乙方:李海、王立强 双方就2013呼铁局煤炭铁路运力项目的合作事宜,经过初步协商,达成如下合作意向: 一、双方同意就2013呼铁局煤炭铁路运力项目放置包头市星海煤炭运销有限公司展开互 助合作。该项目的基本情况是:将2013呼铁局煤炭铁路运力60万吨(以实际核准数量为准)放置包头市星海煤炭运销有限公司,如得到铁路部门的批准,双方共同努力使之在最短的时间内, 使双方获得最大、最合理的经济效益。 二、工作期间由甲乙双方各自负责。 甲方应做好以下工作: 1.甲方提供公司合法有效的公司各项注册备案资料。确保公司无债权债务及其它的因素,影响 2013呼铁局煤炭铁路运力项目的顺利审批及落实后的工作。 2.在2013呼铁局煤炭铁路运力项目工作的过程中。对煤炭铁路运力项目审批需要签订的,各项文件、协议、合同在不违反国家法律及规定,不损害甲方经济利益的条件下,甲方无条件的即时签订。 3.如呼铁局煤炭铁路运力批准落实后。甲方应积极配合乙方寻求公司及呼铁局煤炭铁路运力(或)转让、(或)合作的伙伴。在确保双方均获得合理的利益条件下,甲方无条件的配 合乙方,做好呼铁局煤炭铁路运力(或)转让、(或)合作、(或)自用的等各项工作。 4.未经双方同意,甲方不得单独私自将公司及呼铁局煤炭铁路运力(或)转让、(或)合作、(或)自用。甲方在工作中的费用由甲方自己承但。 乙方应做好以下工作: 1.乙方负责组织和实施好呼铁局煤炭铁路运力的申报、审批、落实工作。甲方应应积极配合。 2.乙方负责签订在煤炭铁路运力项目审批中,需要签订的各项文件、协议、合同,须经甲方审核 同意。甲方应积极配合。 3.呼铁局煤炭铁路运力批准落实后。乙方应尽快主动积极寻求公司及呼铁局煤炭铁路运 力(或)转让、(或)合作的伙伴。在确保双方获都得合理的利益条件下,乙方无条件的做好,呼铁局煤炭铁路运力(或)转让、(或)合作、(或)自用的等各项工作。 4.未经双方同意,乙方不得单独将私自呼铁局煤炭铁路运力(或)转让、(或)合作、(或)自用。乙方在工作中的费用由乙方自己承但。 三、在铁路部门2013全国煤炭产运衔接合同总核准后,双方商定在七个工作日内。签订煤炭铁路运 力实际应用及双方利益合理分配的细则合同。 甲方: 代表人: (盖章) 乙方:代表人:2012年12月25日第四篇:项目合作意向书范本格式
第五篇:项目合作意向书格式