- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何用C来完成SN8系列芯片的程序设计
松翰 易爱华
松翰科技(深圳)有限公司
SONIX TECHNOLOGY CO.,LTD.
内容概览
C 与Assembly简述
SN8 C studio 的安装与使用
SN8 C studio 的安装
SN8 C studio应用实例
数据类型与运算
专有数据类型
常量与变量
数据的存储类型与存储结构
程序流程控制
顺序结构
分支判断结构
循环控制结构
函数
函数的定义
函数参数传递与返回值
函数参数与全局变量
结构体、联合在SN8 C程序中的应用
结构体
联合
中断
中断函数的定义
中断过程的分析
中断函数的结构
位操作
位的定义
位的运算
位比较在程序流程控制中的应用
内嵌汇编
如何内嵌汇编
内嵌汇编时变量的传递
程序结构
主函数与子函数
构建可复用文件
构建具有实用性的程序
一、C 与Assembly简述
Assembly(汇编)的历史已经有半个多世纪了,从计算机的发明那天开始,汇编就注定要与其结缘,它作为第一种真正意义上的编程语言,在计算机的发展过程中具有无可替代的地位。
汇编具有与机器语言一一对应的高效率,就是由于汇编的高效率,和其紧贴硬件的特性,使其在半个世纪之后的今天依然是目前开发单片机程序的主流工具之一。但是由于编写汇编代码的工作量和难度都比较高,并且要求程序员对硬件必须有较深刻的了解,其入门就相对较难。而汇编的写法各异,不同的程序员编写的代码有着巨大的差异,这就带来了学习的难度,可读性差也成为了其推广的瓶颈,程序的维护更加艰难。随着程序复杂性的增加,开发团队的形成,应用而生的高级语言就逐渐取代了其位置。
C就是高级语言中针对硬件操作最优秀的一种,C也是基于汇编的,其相互关系如图所示。随着人们不断的对C进行改善,使C的效率得到了很大的提升,其编译效率逐渐的逼近汇编。而C以其模块化的编程模式,简洁的代码,良好的可读性和可维护性,成为了另一种单片机开发的主流开发工具,相比汇编而言,其具有无可比拟的优异性。
图1、C与汇编的关系
SN8 C 是基于标准C而又加入SONIX SN8 系列芯片特征的专用C,它面对的是SONIX SN8 系列芯片程序开发,它能产生非常简洁的能直接运行于SN8 系列芯片的优化代码。具有良好的兼容性,易学易用,既方便客户开发,又继承了原有汇编的卓越性能。
在本文当中,我们将结合汇编来讲述C开发的各方面知识,以期通过对比来加深对芯片的编程应用的了解,同时,对熟悉C的程序员来说,可以更加深入了解芯片;而对于熟悉汇编的程序员来说,我们可以从对比中找到从汇编到C的转换方法。
二、SN8 C studio 的安装与使用
SONIX SN8 系列的芯片是RISC内核的高性能芯片。目前,由SONIX提供的SN8 Assembly仅有59条指令,是一种高效的汇编语言,有S8ASM和M2ASM编译器分别支持其1系和2系芯片。在此基础上的SN8 C studio整合了汇编和C的编译器,
SN8 C studio 的安装
在得到SN8 C studio的安装包后,按照标准的Windows程序安装方法安装就可以将软件安装到机器上。
1.2、SN8 C studio应用实例
创建一个工作区
与VC类似,我们的工程管理模式是以工作区方式来管理,在你准备一个项目的时候,
你首先创建一个属于这个项目的工作区:
1、打开IDS-文件-新建,单击出现如下界面:
图2-1 新建对话框
2、单击workSpace 图标,进入workspace创建窗口,单击Location 编辑框后的按钮,选择你需要的工作目录,然后输入新建Workspace的name,在这里如下:
图2-2 新建Workspace对话框
3、单击OK,IDS 的界面生成了工作区的工作界面,出现了Workspace窗口和Output窗口。同时,打开目标文件夹,你会发现在你选定的文件夹下面,生成了一个以Workspace Name 命名的新文件夹,打开文件夹你可以看到一个新生成的.wsp文件,这就是新生成的Workspace 的配置文件:
图2-3 新生成的Workspace配置文件
新建一个工程(Project)
在我们成功创建一个工作区后,你会发现我们的Workspace 窗口中的Projiect数目为0,接着我们就要依据项目所用的芯片母体来创建一个工程项目了,跟创建Workspace相同,打开菜单中的 文件-新建,单击出现新建窗口,此时默认为新建Project。在右边的Project List窗口中选择你要使用的芯片母体和要创建的工程类型(一般为普通项目),此时的目标路径Location 中已经显示为你刚才建立的Workspace目录,建议将工程保存在这个目录下,不修改默认路径。给新建工程取一个有意义的Nam
文档评论(0)