瑞萨单片机内部培训
——R8C/Tiny系列单片机硬件接口
5 © 2010 Renesas Electronics Corporation. All rights reserved.
R8C/Tiny系列单片机的主要优点
R8C/Tiny——
Renesas最新推出的小型化封装、高性能的16位单片机 ➢ 低功耗设计 ➢ 减少外部电路 ➢ 安全设计 ➢ 代码效率高 ➢ 优化的CPU寄存器结构 ➢ 优秀的电磁兼容性 ➢ 可靠的FLASH存储器 ➢ On-chip调试
(使用该功能时,主时钟频率须大于2MHz)
未定义指令中断
程序失控时
CPU
重要寄存器
“跑飞”
程序区
FF FF FF
错误恢复 程序
未使用区
9 © 2010 Renesas Electronics Corporation. All rights reserved.
R8C/Tiny系列单片机的主要优点
安全设计
5 振荡停止检测功能
当主时钟意外停止时,CPU时钟自动切换到内部振荡器!
00000-A
2 © 2010 Renesas Electronics Corporation. All rights reserved.
MCU training
R8C MCU core
R8C peripheral & I/O
HEW and NC30 Sample Code
单片机工作的要素
通常运行模式, f(XIN)= 20MHz
1/200
等待模式, f(XIN)= 125 KHz
1/11000
停止模式
4 A/D 参考电压可切断
Vref Vref
Off
切断
AVss
电阻
模拟输入
A/D转换器
5 定时器时钟源可选
XIN
外部信号 输入
时钟发生电路 内部振荡器
定时器
7 © 2010 Renesas Electronics Corporation. All rights reserved.
6 © 2010 Renesas Electronics Corporation. All rights reserved.
R8C/Tiny系列单片机的主要优点
低功耗设计
1
可选择多种时钟分频比 (1,2,4,8,16分频)
2 低速/高速高精度内部振荡器
高速:40MHz 低速:125KHz
3 强大的功耗控制能力 1
SH-2
SH/Tiny
Processor type SH-4A
SH3-DSP
SH-4
SH-3
Superscalar
MMU
H8S/2600
H8S Family
1 instruction in
H8S/2500
1 clock cycle H8S/2400
H8S/2300
Under development
R32C/100
32-bit RISC
SuperH Family Core development
32-bit CISC 16-bit
H8SX Family
1 instruction in
H8SX/1600
1 clock cycle H8SX/1500
SH-2A
Controller type SH2-DSP
SH-1
32 to 100 pins Under development
R8C/Tiny
M16C/Tiny
48 to 80 pins
R8C/Lx
16 to 80 pins
Super Low Power
H8 Family 740 Family 7600
4-bit
38000
4500
740
720
4 © 2010 Renesas Electronics Corporation. All rights reserved.
R8C/Tiny系列单片机的主要优点
安全ห้องสมุดไป่ตู้计
多种安全设计使单片机系统更加稳定!
1 强大的看门狗定时器
✓ 复位后硬件启动功能 ✓ 时钟源保护功能(永不停止的看门狗)
VSS VCC
2 Vcc和Gnd引脚的安全处理
3 保护寄存器
正常
工作时 CPU
保护寄存器
重要寄存器
其它任意信号
4 特殊指令BRK (H’00) & UND (H’FF)
复位 电路
VCC
RESET POR / LVD
Vref
数据 闪存
-减少元件 -增加了有效引脚
EEPROM
减少元件
高速内部 振荡器
GND
MODE 单线调试 系统接口*
调试接口
串行写入器接口
-减少元件 -增加了有效引脚
增加了有效引脚
注: R8C/14群以后的单片机可以实现单线调试
8 © 2010 Renesas Electronics Corporation. All rights reserved.
R8C/Tiny系列单片机的主要优点
减少外部电路
✓ 高速、高精度内部振荡器 (外接晶振引脚可用作输入端口) ✓ 内部上电复位电路 ✓ 低电压检测电路 ✓ 数据闪存(可代替E2PROM)
[现有产品]
复位 电路
VCC RESET
GND
Vref MODE
EEPROM 调试 接口
串行写入器接口
[R8C/Tiny]
M16C Family
1 instruction in M32C/90 1clock cycle M32C/80
M32R Family
M32R/ECU
H8S/2200
M16C/80
H8S/2100
M16C/60
H8/300H
8-bit
H8/300L
H8/300L
H8/Tiny
M16C/30
R8C Family (H8S,300H)
MCU培训(基于R8C/1B)
SH Field Application B Team EG, MCU Product Center Huang Han
Renesas Electronics Corporation MCU Product Center
2010-5-7
Rev. 0.1
© 2010 Renesas Electronics Corporation. All rights reserved.
工作模式(Operation MODE) 时钟(Clock) 复位(Reset) 向量(Vecter Table)及中断(Interrupter)
Ru-Stick
3 © 2010 Renesas Electronics Corporation. All rights reserved.
Roadmap of Pre-Renesas Microcomputers
瑞萨学习工具包培训活动(上海站)
等等 ,每一步都讲 解的非常细致 。 在讲座末节, 与会工程师分别就在开发过
20 年 1 月 9日,来 自 2 07 1 8
家企业的 3 7名工 程 师 会聚 在 上 程中可能遇到的问题 同讲师进行 了交流。除了 海 市 中小 企 业 总会 大 楼 4 7室 , 0
一
些技术问题外 ,工程 师们对于产 品的价格 、
上 海 拉 开 了 序 幕 ,参 加 培 训 的 幻 灯 片形 式 对 瑞 萨 MC U基 本 知识 进 行 讲 解 后 , 工 程 师 覆 盖 了 工 业 控 制 、消 费 开始分 步指导现场 工程师对学 习工具包 的使
电子 、 医疗 器 械 、 灯光 控 制 、 汽 用 ,从 建 立基 本 工 程 项 目到 编 译 、仿 真 、执 行 车 电 子 等 领域 。
共 同 学 习并 体 验 了 由瑞 萨科 技 技术支持 、样片、供货等业务方面的信 息,也 公 司 提 供 的 , 搭 载 着
其 公 司 R C C U主板 闪存MC 8/ P U主板
表1
表现 出特 别 的 关心 。
参加讲座的工程师与讲师合影留念
T in Y 和 仿真器
面 , 简 便 地 进 行 系 统 开 泛 的单片机 。 从会 后采 访可 知,体验者不 发 。 单 易 懂且 功 能 强 大 仅 对 瑞 萨 MCU产 品 有 了一 定 的 了解 ,还 简 的 系 统 加 上 讲 师 的 耐 心 对瑞萨学 习工具包产生 了强烈的好感 , 并 指导 , 加 体验 的工 程 师 纷纷表示 出对这两款产品的浓厚兴趣 , 参 当 很快 通 过 计 算机 操 作 , 用 即 向 瑞 萨 销 售 及 技 术 人 员 询 问 起 瑞 萨
司的 张 玉 梅 、刘正 两 位工 程 师 针
IRS中文客控培训
• • • • • • •
IRS-PWS242
• 24伏 2安培 直流电源供应模块 • IRS-PWS242是一款24伏的直 流RoomNet电源供应模块。它 拥有过压及短路保护机制。能 支持系统通电瞬间的电流冲击。 • DIN 导轨安装 • IRS-PWS242采用标准DIN导轨 方式安装在嵌墙式设备箱内。 DIN导轨式安装允许模块化安装 在IRS导轨自动化控制模块及第 三方导轨安装设备。所有接线 均采用菊花链式连接,并分配 直流电源到每个IRS模块。 • > 48瓦RoomNet电源供应模块 • >供电给IRS模块及其他第三方 设备 • >双线电源输出端口 • 技术规范 • 连接 • L : (1) 固定螺钉端子@ 100 ~ 240 伏特交流电 • N : (1) 固定螺钉端子 @ 100 ~ 240 伏特交流电 • E:(地线): (1) 固定螺钉端子 每个输出端口: 48瓦(2安@24伏 特 稳定直流)有限电源模块总供 电: 2个端口最大48瓦(2安@24 伏特,稳定直流电)电源输出
IRS-DIM4
• • 4通道调光模块 IRS-DIM4是一款带4通道调光的DIN系 列灯光控制模块。此模块支持100V到 240V交流电压。每个通道支持3A负载, 4个通道总共支持10A负载。 安全强切继电器 当任一通道调到最暗时,内置在四个通 道的相对应的继电器会自动关闭该物理 通道,以确保对灯具进行安全地维护及 更换。 DIN导轨安装 IRS-DIM4是采用标准DIN导轨方式安装 在嵌墙式设备箱内。线路连接通过顶部 和底部的插栓进行拆卸,清楚、便于安 装和维修的前面板。所有的控制及指示 灯都被安置在前面板的中央位置。当接 线端被隐藏时候,IRS-DIM4前面板还 能保持可读状态。
• • RoomNet IRS-PI4032通过RoomNet控制系 统与其他的IRS模块通信。一对在 IRS-PI4032上的RoomNet端口允 许多个DIN轨道IRS自动控制模块 以菊花链的形式进行连接。 技术规范 连接 网络: (2)个4-针 3.5 毫米可拆卸接 线端子;可并联;RoomNet端口 数字输入: (4)个10-针快锁接线端子 数字输出: (4) 个8-针快锁接线端子 12V直流电源: (7)个1-针快锁接线 端子 参考地: (1)个1-针快锁接线端子
瑞萨单片机入门教程
瑞萨单片机入门教程本教程以R7F0C002L单片机为例一、开发环境下载安装与工程注意:该工程目录和工程名不能含有中文1.1、 CubeSuite+环境的下载:官网下载地址将安装环境下载到本地,该文件大小532M在安装过程中有提示需要填写注册码,请输入以下注册码,如果无效请联系供应商。
查看是否已经注册:在IDE环境中选择 Help->About后有下面窗口:注册码:67DCS-V3Q7L-XMGL9-FI6L9-EE1BJ该注册码有限制台数的,一旦注册了就会把MAC绑定,重装无需注册!当有以下报错时:请查看是否已经注册。
1.2、按照一般的软件安装方法安装好IDE环境,下面介绍IDE环境的配置:1、将DIF_RFP文件夹下的Device_Custom文件夹拷贝到安装目录下的C:\Program Files\Renesas Electronics\CubeSuite+下(这里是默认的安装目录,另外注意:DIF_RFP中Readme_Device_Custom.txt说将Device_Custom文件夹拷贝到C:\Program Files\Renesas Electronics\CubeSuite+\Device下,但是实际上不可以!)。
DIF_RFP文件夹安装根目录当配置成功以后会在芯片族里面多出R7F系列的单片机,如下图示:2、将DIF_RFP文件夹下的RFP_R7F0C002L_V10000子目录下面的两个文件(Device_Custom文件夹和Custom_Productlist.xml文件)拷贝到安装目录下的C:\Program Files\Renesas Electronics\Programming Tools\Renesas Flash Programmer V2.01\Device下(这里是默认安装路径)。
1.3、开发环境新建工程:1、启动CubeSuite+环境,会弹出如下启动界面:2、创建Project工程,在上述启动界面中,点击Creat New Project栏中GO按钮,将会弹出以下对话框:选择工程路径创建输入工程名选择芯片型号选择芯片族3、点击Create创建工程,会得到如下工程界面:4、通过生成工具生成一个简单的代码:5、将芯片型号换成R7F0C002单片机,并且将选项字节配置好!详细设置请参考第三章代码生成与编码。
瑞萨RL78单片机和开发工具(培训教程)[RL78 Tool introduce]
© 2011 Renesas Electronics Corporation. All rights reserved.
5
© 2011 Renesas Electronics Corporation. All rights reserved.
The basic operation of E1
User program execution Reset Tracing Break Performance measurement
E1
In-line programming by OCD OCD with programming function
E1
OS
Itron Compliance
Debugging by High Function Emulator In-circuit Emulator
IECUBE
REBJ-AN-MC-10001
RL78 Family Development Tool Lineup Useful tools at every development stage
Coding
Debugging
Debugging on PC
Programming
Programming by Renesas Ele.
RL7 8 / G 1 3
CubeSuite
Programmed
CPU Simulator Coding/ Building/ Device Driver IDE
In Renesas Electronics’s Factory
CubeSuite
Debugging by OCD On-Chip-Debugger with Programming function
我的瑞萨单片机入门
我的瑞萨单片机入门关于瑞萨单片机,就在两周前我一无所知。
由于工作的需要,使我不得不转入对瑞萨单片机的学习。
刚开始的学习有点枯燥,一点头绪都没有。
通过一天的了解(通过看应用资料),大致掌握了瑞萨单片机的开发流程。
到现在为止两个礼拜过去了,现对过去两个礼拜的学习总结如下:第一:学习要有兴趣,同时也要有压力。
说实话,兴趣是最好的老师。
在学瑞萨单片机之前,我也是仅仅对51 系列的单片机有一定的了解,记得我曾经一直学PIC 单片机,资料也找了很多,可时时入不了门,现在看来是自己没有学习动机。
第二:要从全局上把握瑞萨单片机开发环境所需资料。
关于瑞萨单片机开发环境,一个是硬件环境,一个是软件环境。
软件环境包括:1.IAR。
使用IAR 软件的用户,必须使用E8、E8a 或者E10 等专业的仿真器,将不支持通过串口进行调试,EWM16C 没有注册的版本有16K 代码的限制。
2.HEW+NC30+FoUSB。
HEW: High-performance Embedded Workshop 是瑞萨单片机代码编写软件环境。
NC30:瑞萨单片机R8C 系列的C 语言编译器。
FoUSB:R8C 系列单片机的串口调试软件,通过这个软件,可以在HEW 软件内通过单片机的串口UART1 对单片机进行DEBUG 或者烧写。
硬件环境包括:单片机最小系统板(可以到网上购买),编程器,电脑,数据资料手册等。
第三:坚持看两天的数据手册(根据自己的基础,大部分资料都是英文)。
这包括的手册有:相关单片机数据手册,c 编译环境手册,汇编编译环境手册(了解,有时间深入更好),单片机系统板手册,编程器手册。
第四:安装相关软件,建立开发环境撰写代码进行调试(有参考程序入门更快)。
先写个io 口驱动软件,能够驱动了,说明已经入门。
(两个礼拜我先后调试了看门狗,基本io,定时器,ad,串口,液晶0802,按键中断,实时时钟等等)补充:总的来说,学习就是一个总分总的过程,每步过程就是积累,积累多了,转化为应用也就得心应手。
瑞萨电子M16C族系列单片机
瑞萨电子M16C族系列单片机致芯科技最具实力的芯片解密、IC解密、单片机解密等解密服务机构,致芯科技拥有多年的解密服务经验和超高水平的解密技术,一直从客户利益出发,为每位客户提供最科学最合理最低成本的解密方案与解密服务,深受客户的信赖与喜爱。
瑞萨电子M16C平台:M16C族是提供32/16位CISC单片机的强大平台,此平台具有高效率ROM编码、大范围EMI/EMS噪声对策、超低功耗、实际应用中的高速处理和各种完善的外围设备等特点。
该族为单体结构,具有管脚兼容性和外围功能兼容性,提供从低档到高档的各种芯片,应用领域广泛。
另外,低成本开发环境和程序修正功能将帮助用户缩短产品开发时间,大幅度降低整个系统的开发成本。
M16C族由以下系列构成:R32C/100系列、M32C/80系列、M16C/60系列、M16C/30系列、M16C/Tiny系列、M16C/20系列、M16C/10系列和R8C/Tiny系列。
M32C/84系列M30840MC-XXXFP,M30840MC-XXXGP,M30840SFP ,M30840SGP,M30842MC-XXXGP,M3 0842SGPM30843FHFP,M30843FHGP,M30843FJFP,M30843FJGP,M30843FWGP,M30843MW-XXXF P,M30843MW-XXXGPM30845FHGP,M30845FJGP,M30845FWGP,M30845MW-XXXGP,M30840MCT-XXXGP,M308 42MCT-XXXGPM30843FJTGP,M30843FJTGP,M30843MGT-XXXGP,M30843MGU-XXXGP,M30843MHT-XX XGPM30843MHU-XXXGP,M30843MWT-XXXGP,M30843MWU-XXXGP,M30845FHUGPM32C/85系列M30853FHGP,M30853FJFP,M30853FJGP,M30853FWFP,M30853FWGPM30853MW-XXXFP,M30853MW-XXXGP,M30855FHGP,M30855FJGP,M30855FWGP,M3085 5MW-XXXGPM30853FHTGP,M30853FHUGP,M30853FJTGP,M30853FJUGP,M30853FWTGP,M30853MG T-XXXGPM30853MGU-XXXGP,M30853MHT-XXXGPM30853MHU-XXXGPM30853MWT-XXXGP,M30853 MWU-XXXGP。
瑞萨用于消费类电子的QzRO单片机解决方案
C电e hC 中N i网 n at E
● 内容 , 请 登 录 ht:s mi r h a c e. m。 的 敬 t / e n . i e nt o p/ ac n c
瑞萨用于消费类电子的Q O M z R 单片机解决方案
R n s sQz OM igl - i S l t r e ea R Sn e- p o ui f ch on o
COns l um e I 。 t■ 一 - r eCtoni cs
■ R n s s公司 eea
瑞萨 半 导 体 推 出 了集 成 Qz OM R 并 进 一步 降 低 了 待 机 功 耗 。 R 更 快 。 工 厂 编 程 的 Q R M 单 片机 Qz OM zO 的 单 片机 ,Q R z OM既 有 F s OM 提 供 高 的 附 加 值 功 能 ,其价 格 与 现 具 有与R CT y l hR a 8 /i 单片机一样快 的交 n
X X × Xh
l l 0
0
X X× × h
0
I , 一 l妒
功 能
Q 謦 捌 一0 0 一 EFFFh _
F0 h 0 0 F F h F F F Fh F F
f 磅 √. 瓣f j 。 。0 囊
的 易 用性 , 具 有 掩 膜 R M的 低 成 有 掩 膜 R 又 O OM 的 价格 相 当 , 且 其 已 货 速 度 。采 用 Qz OM 工 艺 , 以 从 并 R 可 本 。 一般 的 掩 膜 R M 产 品 易 导 致 编 程 品与 未编 程 的空 白品价格 相 同 。 收 到 R O OM起 两 周 内交 货 , 比 R C 这 8/
维普资讯
O ■ 】 .●I ■◆, ce nI ■ If ■● .I t
瑞萨d70f3529芯片解密教程
瑞萨d70f3529芯片解密教程一、软件攻击该技术通常使用处理器通信接口并利用协议、加密算法或这些算法中的安全漏洞来进行攻击。
软件攻击取得成功的一个典型事例是对早期ATMELAT89C51系列单片机的攻击。
攻击者利用了该系列单片机擦除操作时序设计上的漏洞,使用自编程序在擦除加密锁定位后,停止下一步擦除片内程序存储器数据的操作,从而使加过密的单片机变成没加密的单片机,然后利用编程器读出片内程序。
目前在其他加密方法的基础上,可以研究出一些设备,配合一定的软件,来做软件攻击。
近期国内出现了了一种51单片机解密设备,这种解密器主要针对瑞萨d70f3529在生产工艺上的漏洞,利用某些编程器定位插字节,通过一定的方法查找芯片中是否有连续空位,也就是说查找芯片中连续的FF FF字节,插入的字节能够执行把片内的程序送到片外的指令,然后用解密的设备进行截获,这样芯片内部的程序就被解密完成了。
二、电子探测攻击该技术通常以高时间分辨率来监控处理器在正常操作时所有电源和接口连接的模拟特性,并通过监控它的电磁辐射特性来实施攻击。
因为单片机是一个活动的电子器件,当它执行不同的指令时,对应的电源功率消耗也相应变化。
这样通过使用特殊的电子测量仪器和数学统计方法分析和检测这些变化,即可获取单片机中的特定关键信息。
目前RF编程器可以直接读出老的型号的加密MCU中的程序,就是采用这个原理。
三、过错产生技术该技术使用异常工作条件来使处理器出错,然后提供额外的访问来进行攻击。
使用最广泛的过错产生攻击手段包括电压冲击和时钟冲击。
低电压和高电压攻击可用来禁止保护电路工作或强制处理器执行错误操作。
时钟瞬态跳变也许会复位保护电路而不会破坏受保护信息。
电源和时钟瞬态跳变可以在某些处理器中影响单条指令的解码和执行。
四、探针技术该技术是直接暴露芯片内部连线,然后观察、操控、干扰单片机以达到攻击目的。
为了方便起见,人们将以上四种攻击技术分成两类,一类是侵入型攻击(物理攻击),这类攻击需要破坏封装,然后借助半导体测试设备、显微镜和微定位器,在专门的实验室花上几小时甚至几周时间才能完成。
单片机培训(1)
Proteus仿真电路
实际温度测量板
COMPIM模型
PC串行口 串行电缆
PROTEUS仿真:物理接口模型
使用以太网物理接口模型 (EPIM),可以实现虚拟仿真 电路通过本地网卡与局域网内 其他计算机的双向网络通信。
ENC28J60 模型
电脑#1 LAN
ARES PCB设计平台
原 理 图 设 计
原 理 图 调 试
VSM 嵌入式仿真器
单片机仿真 8086仿真 ARM仿真 PLD仿真
设 计
预 览
生 成 光 绘 文 件
PCB
PCB 3D
PROTEUS仿真
从原理图设计、单片机编程、 系统仿真到PCB设计,实现从 概念到产品的完整设计。
ISIS原理图设计与仿真
三、关于单片机仿真
Proteus软件是英国Labcenter electronics公司开发的EDA工具 软件。它不仅具有其它EDA工具软件的仿真功能,主要特点在 于仿真单片机及外围器件。
PROTEUS仿真
ProSPICE 混合模式仿真器
模拟电路仿真
数字电路仿真
ISIS 设计仿真平台
Proteus Design Suite
更多单片机应用实例
二、认识单片机设计与开发
【例】某工厂有一条如图所示的装 小球生产线,小球被传送带运送并 掉入下方的纸箱中,纸箱在另一条 传送带上被运送,每个纸箱装满10 个小球后就换下一个纸箱装球。
需求:设计一个单片机控制系统, 实现以上的小球装箱要求,并实时 显示当前装球的纸箱序号和已装的 小球数。
二、认识单片机设计与开发
小球包装生产线控制系统框图
瑞萨单片机M16C, R8C 有效的编程技术(培训资料)
M16C族编程技巧(M3T-NC30WA 工具链)2005年2月M3T-NC30WA 特点•支持MCU M16C 族-M16C/60, 30, 20, 10, R8C/Tiny 系列.•性能(Performance) 可以减小ROM大小的辅助功能强大的提高代码效率的优化功能•存储器型号(Memory model) 支持每个变量的near/far限定词•扩展功能(Extended functions)支持嵌入式系统的#pragma指令 •附加工具(Attached tools)IDE -TM 和HEW, 结构汇编器(Structured assembler) 和模拟器(Simulator).M3T-NC30WA存储器分配(Memory allocation )near/far#pragma ADDRESS #pragma BITADDRESS #pragma SECTION #pragma STRUCTetc减小ROM 大小(Reducing ROM size )#pragma SBDATA #pragma SPECIAL #pragma JSRA/JSRW#pragma BIT UTLxx etc 其他#pragma INTERRUPT #pragma PARAMETER #pragma ASM/ENDASM #pragma INTCALLasm( ) etcRTOS#pragma ALMHANDLER #pragma CYCHANDLER #pragma INTHANDLER #pragma TASK提高性能!减小系统消耗(Reduce OS overhead )给不同系统分配存储器!#pragma 扩展功能(Extended Functions)NEAR 修饰符–000000H ~ 00FFFFH 区域FAR 修饰符–000000H ~0FFFFFH 区域每个变量都有Near 和far指定near/far默认ROM areaSFRRAM areanear RAM far ROMFFFF1Mbytesnear areafar areaint near i;int far j;注意: 程序已固定far 属性FFFF默认是NEAR 指针j i *i int * i ;k*k int far * k;FFFFint far * far j ;*j#pragma ADDRESS port 03ECH#pragma ADDRESS base 100H extern int base;#pragma ADDRESS base2 _base+2H extern int base2;#pragma ADDRESS base3 _base+4H extern int base4;不仅对I/O 变量,对RAM 中的变量也很方便.Same as#define base *(volatile int *)0x100#pragma 地址指定变量的绝对地址 可以被用作设定SFR 区#pragma INTERRUPT /B func()Using bank registersvoid func( void ){}R0FB R1R2A0R3A1将后寄存器切换到前寄存器R0FB R1R2A0R3A1R0FBR1R2A0R3A1SB将寄存器切换到后寄存器R0FB R1R2A0R3A1SB声明中断处理器(interrupt handler) /B 使中断处理加快#pragma INTERRUPT /E func() 允许中断(FSET I) 保存寄存器获得自动变量区 释放自动变量区 恢复寄存器 REITvoid func(void){}出口入口/E 允许多个中断支持可以通过下列方式指定中断向量表号#pragma INTERRUPT Vector number Function_nameOr#pragma INTERRUPT Function_name(vect= Vector number )使用编译选项–fmake_vector_table 自动生成变量中断表.#pragma INTERRUPT timerA0(vect=21)void timerA0(void){}.section __NC_rvector,ROMDATA .rvector 21,_timerA0asm function汇编语言可以被直接包含在C 程序中格式是asm(““). 例如: asm(“FSETI”); 使用“$$, $b, $@”来参考参数或自动变量.用户不需要考虑变量的存储类(storage class).asm(“mov.w R0,$@”, value );FB offsetSymbol Register-2[FB]_value R0对于变量:对于位字段:asm(“bset $b”, bit.b1 );Bit position,Symbol1,_bit可以在C 中编写长汇编源代码.int asmRoutine(int arg){return work;分配工作区供汇编代码使用.int work;将工作区的偏移(offset)设置在堆栈上asm (“在#pragma ASM 和#pragma ENDASM 之间编写长汇编源程序.#pragma ASMmov.w R0,work[FB]...#pragma ENDASM注意1 : 不要破坏asm 函数中的寄存器.int func(long arg){register int ret=0;#pragma ASMmov.l #00000000H,R2R0mov.l #_addr,A0mov.l #_addr2,A1mov.w _counter,R3rmpa.wmov.l R2R0,_result #pragma ENDASM………..return ret;}参考并修改寄存器保存寄存器恢复寄存器pushm R0,R2,R3,A0,A1popm R0,R2,R3,A0,A1注意2 : 不要写入会引起汇编源程序控制流混乱的转移(branch)指令。
