瑞萨单片机启动文件介绍

瑞萨单片机启动文件介绍
瑞萨单片机启动文件介绍

瑞萨单片机启动文件介绍

1.NC30介绍

NC30的组件:

nc30----------------编译驱动器

cpp30---------------预处理器

ccom30--------------编译器

aopt30--------------汇编优化器

sbauto--------------SB寄存器自动更新工具

stkviewer & stk-----STK查看器与堆栈大小计算工具

utl30---------------SBDATA声明及SPECIAL页函数声明工具

mapview-------------映射查看器

看下NC30处理流程:

程序开发流程,生成X30文件的流程:

以上就是编译器所做的工作和流程。看了之后大家有了大概的了解。具体的大家可以参看NC30编译器手册,待会会上传附件给大家下载。

2:启动程序介绍

ncrt0.a30

这个程序在程序启动或复位后立即运行,它主要执行下列处理:

.设置SBDATA区

.设置处理器的操作模式

.初始化堆栈指针

.初始化SB寄存器

.初始化INTB寄存器

.初始化NEAR数据区

.初始化FAR数据区

.初始化堆区

.初始化标准I/O函数程序库

.初始化FB寄存器

.调用MAIN函数

ncrt0.a30汇编文件,在建立工程的时候会自动生成。以下附带详细注释,附件也可下载。;***************************************************************************

; C Compiler for R8C/Tiny, M16C/60,30,20,10

; Copyright(C) 1999(2000-2006). Renesas Technology Corp.

; and Renesas Solutions Corp., All rights reserved.

;

; ncrt0.a30 : Startup Program for M16C family

;

; $Date: 2006/11/22 04:13:23 $

; $Revision: 1.1.4.1 $

;***************************************************************************

;---------------------------------------------------------------------

; include files ;包含文件

;---------------------------------------------------------------------

.list OFF ;控制行输出数据输出到列表文件OFF:停止ON:开始

.include nc_define.inc ;包含宏文件

.include sect30.inc ;包含存储器映射文件

.list ON

;---------------------------------------------------------------------

; BankSelect definition for 4M mode

;---------------------------------------------------------------------

; .glb __BankSelect

;__BankSelect .equ 0BH

;===================================================================== ; Interrupt section start ;中断段起始

;---------------------------------------------------------------------

.insf start,S,0

.glb start

.section interrupt

start: ;复位后从这个标签开始运行

;---------------------------------------------------------------------

; after reset,this program will start ;复位后程序将启动

;---------------------------------------------------------------------

ldc #istack_top,isp ;设置istack指针(中断堆栈) ldc向专用寄存器ISP传递数据

mov.b #02h,0ah ;保护寄存器PRCR PRC1=1 允许写PM0

mov.b #00h,04h ;设置处理器模式PM0

mov.b #00h,0ah ;关闭写保护

.if __STACKSIZE__ != 0

ldc #0080h,flg ;设置FLG寄存器IPL和其他状态FLG是16位标志寄存器堆栈指针选择USP

ldc #stack_top,sp ;设置堆栈指针

.else

ldc #0000h,flg

.endif

ldc #data_SE_top,sb ;设置SB静态基址寄存器

ldintb #__VECTOR_ADR__ ;向INTB寄存器传送指令,所以这里省了目标操作数intb

;=====================================================================

; NEAR area initialize. ;NEAR区初始化

;---------------------- -----------------------------------------------

; bss zero clear ;bss零清除

;---------------------------------------------------------------------

N_BZERO bss_SE_top,bss_SE ;清除NEAR bss段至零

N_BZERO bss_SO_top,bss_SO ;N_BZERO清零宏定义

N_BZERO bss_NE_top,bss_NE ;sect30.inc中有定义

N_BZERO bss_NO_top,bss_NO

;---------------------------------------------------------------------

; initialize data section ;初始化数据段

;---------------------------------------------------------------------

N_BCOPY data_SEI_top,data_SE_top,data_SE ;将NEAR数据段和SBDA TA数据段的初始值转移到RAM

N_BCOPY data_SOI_top,data_SO_top,data_SO ;N_BCOPY拷贝宏定义

N_BCOPY data_NEI_top,data_NE_top,data_NE ;sect30.inc中有定义

N_BCOPY data_NOI_top,data_NO_top,data_NO

;=====================================================================

; FAR area initialize. ;FAR区初始化

;---------------------------------------------------------------------

; bss zero clear ;bss零清除

;---------------------------------------------------------------------

.if __FAR_RAM_FLG__ != 0

BZERO bss_FE_top,bss_FE

BZERO bss_FO_top,bss_FO

.endif

;---------------------------------------------------------------------

; initialize data section ;将FAR段数据段的初始值移到RAM中

;---------------------------------------------------------------------

.if __FAR_RAM_FLG__ != 0 ;从edata_EI(OI)段复制edata_E(O)段

BCOPY data_FEI_top,data_FE_top,data_FE

BCOPY data_FOI_top,data_FO_top,data_FO

ldc #stack_top,sp

.stk -40

.endif

;===================================================================== ; heap area initialize ;堆区初始化

;---------------------------------------------------------------------

.if __HEAPSIZE__ != 0

.glb __mnext

.glb __msize

mov.w #(heap_top&0FFFFH),__mnext

mov.w #(heap_top>>16),__mnext+2

mov.w #(__HEAPSIZE__&0FFFFH),__msize

mov.w #(__HEAPSIZE__>>16),__msize+2

.endif

;===================================================================== ; Initialize standard I/O ;初始化标准I/O

;---------------------------------------------------------------------

.if __STANDARD_IO__ == 1

.glb __init

.call __init,G

jsr.a __init

.endif

;===================================================================== ; Call main() function ;调用MAIN函数

;---------------------------------------------------------------------

ldc #0h,fb ; for debuger 用于调试器

.glb _main

jsr.a _main

;===================================================================== ; exit() function ;推出函数

;---------------------------------------------------------------------

.glb _exit

.glb $exit

_exit: ; End program 结束程序

$exit:

jmp _exit

.einsf

;===================================================================== ; dummy interrupt function ;虚设的中断处理函数

;---------------------------------------------------------------------

.glb dummy_int

dummy_int:

reit

.end

;***************************************************************************

; C Compiler for R8C/Tiny, M16C/60,30,20,10

; Copyright(C) 1999(2000-2006). Renesas Technology Corp.

; and Renesas Solutions Corp., All rights reserved.

;***************************************************************************

映射文件:sect30.inc

.映射各个段

.设置段的起始地址

.定义堆栈和堆段的大小

.设置中断向量表

.设置固定向量表

.宏定义

;***************************************************************************

; C Compiler for R8C/Tiny, M16C/60,30,20,10

; Copyright(C) 1999(2000-2006). Renesas Technology Corp.

; and Renesas Solutions Corp., All rights reserved.

;

; sect30.inc : section definition for M16C family

;

; $Date: 2007/01/09 04:38:46 $

; $Revision: 1.1.4.1 $

;***************************************************************************

;===================================================================== ;

; Arrangement of section ;段的排列

;

;---------------------------------------------------------------------

; Near RAM data area ;Near RAM数据区

;---------------------------------------------------------------------

; SBDATA area

.section data_SE,DATA

.org 400H

data_SE_top:

.section bss_SE,DATA,ALIGN

bss_SE_top:

.section data_SO,DATA

data_SO_top:

.section bss_SO,DATA

bss_SO_top:

; SBDATA area definition

.glb __SB__

__SB__ .equ data_SE_top

; near RAM area

.section data_NE,DATA,ALIGN

data_NE_top:

.section bss_NE,DATA,ALIGN

bss_NE_top:

.section data_NO,DATA

data_NO_top:

.section bss_NO,DATA

bss_NO_top:

;--------------------------------------------------------------------- ; Stack area ;堆栈区

;--------------------------------------------------------------------- .section stack,DATA,ALIGN

.blkb __ISTACKSIZE__ ;.blkb分配一字节ram istack_top:

.if __STACKSIZE__ != 0

.blkb __STACKSIZE__

stack_top:

.endif

;--------------------------------------------------------------------- ; heap section ;heap段

;--------------------------------------------------------------------- .if __HEAPSIZE__ != 0

.section heap,DATA

heap_top:

.blkb __HEAPSIZE__

.endif

;--------------------------------------------------------------------- ; Near ROM data area ;NEAR rom数据区

;--------------------------------------------------------------------- .if __NEAR_ROM_FLG__ != 0

.section rom_NE,ROMDATA,ALIGN

rom_NE_top:

.section rom_NO,ROMDATA

rom_NO_top:

.endif

;--------------------------------------------------------------------- ; Far RAM data area ;FAR RAM 数据区

;--------------------------------------------------------------------- .if __FAR_RAM_FLG__ != 0

.section data_FE,DATA

.org 10000H

data_FE_top:

.section bss_FE,DATA,ALIGN

bss_FE_top:

.section data_FO,DATA

data_FO_top:

.section bss_FO,DATA

bss_FO_top:

.endif

;--------------------------------------------------------------------- ; Far ROM data area ;FAR ROM 数据

;--------------------------------------------------------------------- .section rom_FE,ROMDATA

.org __ROM_TOPADR__

rom_FE_top:

.section rom_FO,ROMDATA

rom_FO_top:

;--------------------------------------------------------------------- ; Initial data of 'data' section ;far rom数据初始化

;--------------------------------------------------------------------- .section data_SEI,ROMDATA,ALIGN

data_SEI_top:

.section data_SOI,ROMDATA

data_SOI_top:

.section data_NEI,ROMDATA,ALIGN

data_NEI_top:

.section data_NOI,ROMDATA

data_NOI_top:

.if __FAR_RAM_FLG__ != 0

.section data_FEI,ROMDATA,ALIGN

data_FEI_top:

.section data_FOI,ROMDATA

data_FOI_top:

.endif

;--------------------------------------------------------------------- ; Switch Table Section

;--------------------------------------------------------------------- ; .section switch_table,ROMDATA

;switch_table_top:

;--------------------------------------------------------------------- ; code area ;代码区

;--------------------------------------------------------------------- .section program,CODE,ALIGN

.section interrupt,CODE,ALIGN

.section program_S,CODE,ALIGN

;---------------------------------------------------------------------

; variable vector section ;变量向量段

;---------------------------------------------------------------------

.section vector,ROMDATA

.org __VECTOR_ADR__

.if 0

.lword dummy_int ; vector 0 BRK

.lword dummy_int ; vector 1

.lword dummy_int ; vector 2

.lword dummy_int ; vector 3

.lword dummy_int ; vector 4 (for user) int3

.lword dummy_int ; vector 5 (for user) timerB5

.lword dummy_int ; vector 6 (for user) timerB4

.lword dummy_int ; vector 7 (for user) timerB3

.lword dummy_int ; vector 8 (for user) si/o4/int5

.lword dummy_int ; vector 9 (for user) si/o3/int4

.lword dummy_int ; vector 10 (for user) Bus collision detection .lword dummy_int ; vector 11 (for user) DMA0

.lword dummy_int ; vector 12 (for user) DMA1

.lword dummy_int ; vector 13 (for user) Key input interrupt

.lword dummy_int ; vector 14 (for user) A-D

.lword dummy_int ; vector 15 (for user) uart2 transmit

.lword dummy_int ; vector 16 (for user) uart2 receive

.lword dummy_int ; vector 17 (for user) uart0 transmit

.lword dummy_int ; vector 18 (for user) uart0 receive

.lword dummy_int ; vector 19 (for user) uart1 transmit

.lword dummy_int ; vector 20 (for user) uart1 receive

.lword dummy_int ; vector 21 (for user) timer A0

.lword dummy_int ; vector 22 (for user) timer A1

.lword dummy_int ; vector 23 (for user) timer A2

.lword dummy_int ; vector 24 (for user) timer A3

.lword dummy_int ; vector 25 (for user) timer A4

.lword dummy_int ; vector 26 (for user) timer B0

.lword dummy_int ; vector 27 (for user) timer B1

.lword dummy_int ; vector 28 (for user) timer B2

.lword dummy_int ; vector 29 (for user) int0

.lword dummy_int ; vector 30 (for user) int1

.lword dummy_int ; vector 31 (for user) int2

.lword dummy_int ; vector 32 (for user or MR30)

.lword dummy_int ; vector 33 (for user or MR30)

.lword dummy_int ; vector 34 (for user or MR30)

.lword dummy_int ; vector 35 (for user or MR30)

.lword dummy_int ; vector 36 (for user or MR30)

.lword dummy_int ; vector 37 (for user or MR30)

.lword dummy_int ; vector 38 (for user or MR30)

.lword dummy_int ; vector 39 (for user or MR30)

.lword dummy_int ; vector 40 (for user or MR30)

.lword dummy_int ; vector 41 (for user or MR30)

.lword dummy_int ; vector 42 (for user or MR30)

.lword dummy_int ; vector 43 (for user or MR30)

.lword dummy_int ; vector 44 (for user or MR30)

.lword dummy_int ; vector 45 (for user or MR30)

.lword dummy_int ; vector 46 (for user or MR30)

.lword dummy_int ; vector 47 (for user or MR30) .lword dummy_int ; vector 48

.lword dummy_int ; vector 49

.lword dummy_int ; vector 50

.lword dummy_int ; vector 51

.lword dummy_int ; vector 52

.lword dummy_int ; vector 53

.lword dummy_int ; vector 54

.lword dummy_int ; vector 55

.lword dummy_int ; vector 56

.lword dummy_int ; vector 57

.lword dummy_int ; vector 58

.lword dummy_int ; vector 59

.lword dummy_int ; vector 60

.lword dummy_int ; vector 61

.lword dummy_int ; vector 62

.lword dummy_int ; vector 63

.endif

;--------------------------------------------------------------------- ; fixed vector section ;固定向量段

;--------------------------------------------------------------------- .section fvector,ROMDATA

.org 0fffdcH

UDI:

.lword dummy_int

OVER_FLOW:

.lword dummy_int

BRKI:

.lword dummy_int

ADDRESS_MATCH:

.lword dummy_int

SINGLE_STEP:

.lword dummy_int

WDT:

.lword dummy_int

DBC:

.lword dummy_int

NMI:

.lword dummy_int

RESET:

.lword start

;===================================================================== ; ID code & ROM code protect //密码保护设置

;---------------------------------------------------------------------

; ID code check function

.id "#FFFFFFFFFFFFFF"

; ROM code protect control address

; .protect 00H

;===================================================================== ; Initialize Macro declaration //宏定义,ncrt0.30中有使用到

;---------------------------------------------------------------------

N_BZERO .macro TOP_,SECT_

mov.b #00H,R0L

mov.w #(TOP_ & 0FFFFH),A1

mov.w #sizeof SECT_,R3

sstr.b

.endm

N_BCOPY .macro FROM_,TO_,SECT_

mov.w #(FROM_ & 0FFFFH),A0

mov.b #(FROM_ >> 16),R1H

mov.w #TO_,A1

mov.w #sizeof SECT_,R3

smovf.b

.endm

BZERO .macro TOP_,SECT_

push.w #sizeof SECT_ >> 16

push.w #sizeof SECT_ & 0ffffh

pusha TOP_ >> 16

pusha TOP_ & 0ffffh

.stk 8

.glb _bzero

.call _bzero,G

jsr.a _bzero

.endm

BCOPY .macro FROM_ ,TO_ ,SECT_

push.w #sizeof SECT_ >> 16

push.w #sizeof SECT_ & 0ffffh

pusha TO_ >> 16

pusha TO_ & 0ffffh

pusha FROM_ >> 16

pusha FROM_ & 0ffffh

.stk 12

.glb _bcopy

.call _bcopy,G

jsr.a _bcopy

.endm

;*************************************************************************** ; C Compiler for R8C/Tiny, M16C/60,30,20,10

; Copyright(C) 1999(2000-2006). Renesas Technology Corp.

; and Renesas Solutions Corp., All rights reserved.

;***************************************************************************

nc_define.inc头文件定义

;------------------------------------------------------------------------

; |

; FILE :nc_define.inc |

; DATE :Fri, Dec 18, 2009 |

; DESCRIPTION :interrupt program. |

; CPU GROUP :29 |

; |

; This file is generated by Renesas Project Generator (Ver.4.8). |

; |

;------------------------------------------------------------------------

; Macro Symbol definition

__NEAR_ROM_FLG__ .equ 0 ; NEAR ROM flag definition

__FAR_RAM_FLG__ .equ 0 ; FAR RAM flag definition

__STANDARD_IO__ .equ 0 ; STANDARD I/O flag definition

__HEAPSIZE__ .equ 0300H ; HEEP SIZE definition

__STACKSIZE__ .equ 0300H ; STACK SIZE definition

__ISTACKSIZE__ .equ 0300H ; INTERRUPT STACK SIZE definition

__VECTOR_ADR__ .equ 0ffd00H ; INTERRUPT VECTOR ADDRESS definition

__ROM_TOPADR__ .equ 0F4000H ; ROM TOP ADDRESS definition

__SPECIAL_PRG__ .equ 0f8000H ; Special page program address

瑞萨MCU产品技术解析.

瑞萨MCU产品技术解析 2005年7月,伴随《瑞萨论坛2005》即中国三城市(北京、上海、深圳)巡回研讨会的召开,瑞萨科技将其世界占有率第一的MCU隆重介绍给三地近八百位与会来宾。使中国用户充分了解到瑞萨科技MCU强大产品族群以及为中国用户在不同应用领域而提供的整体解决方案。 据赛迪顾问对中国消费类MCU市场规模的预测:未来三年内,中国市场MCU的销售量将以超过15%的速度稳步递增,这正是全球MCU厂商将着眼点落在中国市场的最重要因素。而立足为中国设计最适合MCU的瑞萨科技,其广泛的产品线涵盖了MCU在移动电话、汽车电子、电脑/影视以及家电等各种领域中的需求。从低端的4位、8位产品到高端的16位、32位产品中,都有瑞萨科技的身影。并且,瑞萨科技还将在面向下一代市场的开发方面继续加大投入力度,展开以“世界份额NO.1的MCU”为核心的业务强化政策。通过与各类事业伙伴共同合作,以提供功能强大的CPU核心和丰富的周边IP为基础开发ASSP,并且努力为用户提供最完善的应用技术服务和软件开发环境,使得瑞萨科技在中国MCU市场的份额进一步扩大。在当前被普遍看好的闪存MCU领域,瑞萨科技更是以累计达7亿个的出货量独占同行业第一。瑞萨拥有28个产品群、超过200种的丰富产品阵容,但在中国市场上是以Tiny家族系列产品和内置瑞萨最新存储器的QzROM为最鲜明的产品代表。 低成本、少管脚、小型封装的Tiny家族 由H8/ Tiny 系列、R8C/ Tiny 系列、M16C/ Tiny 系列和 SH/ Tiny 系列组成的Tiny家族是适用于家电、AV、PC周边、工业机器等的系统控制器。该系列是有着低成本、少管脚、小型封装等特征的瑞萨MCU品牌。从20管脚到80管脚的少管脚、小型封装产品均拥有高性能CPU和可靠的Flash存储器,并且产品的高性能周边功能模块的统一帮助客户实现了削减系统成本的目的。同时,瑞萨科技还通过提供低成本的开发工具、通用周边机器的统一、Web上的技术支持,以及Simple OS、中间件的支持保证了系列产品之间的兼容性。 就产品而言,以R8C/ Tiny 系列为例,其产品特性很鲜明地体现在低功耗、高速运作(最大工作频率可达到20MHz)、低成本闪存内置MCU、高性能周边模块内置、丰富的应用技术信息提供上。并且,R8C/ Tiny 系列还能够为用户提供在线仿真器、CPU板等低成本的开发环境。 内置瑞萨最新存储器的QzROM QzROM单片机是瑞萨采用了细微化工艺的PROM技术的可编程存储器。 QzROM 中的“Q”就是Quick(及时出货),“z”就是Easy(简单编程),所以QzROM最鲜明的产品特性也就集中体现在缩短出货周期和简单编程上。而对QzROM最形象的描述是它实现了Mask ROM的成本、Flash ROM般的使用便利性。由于QzROM添加了高附加值功能,并可将同一单片机作为开发用产品(即程序未写入品)和量产用产品(即程序写入品),从而可省略以前必需的,对Mask ROM版样品的测试。这样从ROM受理到出货时间的缩短,使得程序评价时间可相对延长,可以有更充分的调试和评价时间,可确保其程序的高质量

瑞萨H8_3048单片机资源

16位集成定时器 H8_3048系类单片机内还有一个16位的集成定时单元ITU,有五个16位定时通道0到4。 1.结构与特点 1.1内部结构 每个通道还有三个16为寄存器:定时计数器TCNT,通用寄存器GRA 和GRB;四个8为寄存器:定时控制寄存器TCR,定时I/O控制寄存器TIOR,定时中断允许寄存器TIER和定时状态寄存器TSR. ITU有TCLKA到TCLKD等四个外部时钟输入,以及四种频率的内部时钟输入。可以从这八个时钟源中选定一个座位通道定时计数器TCNT 的计数源。 TCNT可以产生计数溢出中断,与通用寄存器GRA或GRB 比较中断,捕捉到有效信号时TCNT 值传给GRA或GRB,也可同时请求IMIA或IMIB中断。 通道3和通道4还多了两个寄存器BRA和BRB,它们是16位的缓冲寄存器。 通道4还多了两条输出比较引脚——TOCXA4和TOCXB4. 1.2 ITU的特点 1)可以处理多达12个脉冲输出或10个脉冲输入; 2)10个通用寄存器可单独赋予输出比较或输入捕获功能; 3)每个通道均可从8个时钟源中任选一个; 4)5个通道中,对每个都有5种运作方式可供选择。 1.3 输入输出引脚(这里只说明工作在PWM方式下) 通道0到通道2都有两个输入/输出引脚 通道0 TIOCA0 GRA0输出比较或输入捕捉引脚,PWM方式下的PWM输出引脚 TIOCB0 GRB0输出比较或输入捕捉引脚; 通道1和通道2和通道0一样,这里就不在作详解。 通道3和通道4在联合使用输出互补或复位同步PWM是有六个引脚都可以作为PWM的输出引脚。 1.4 寄存器配置 2 寄存器功能 2.1 定时器启动寄存器TSTR(八位寄存器) 5,6,7位恒为1; 4至0为依次为五个通道计数器开启停止的控制位置1开启,置0停止。

瑞萨单片机启动文件介绍

瑞萨单片机启动文件介绍 1.NC30介绍 NC30的组件: nc30----------------编译驱动器 cpp30---------------预处理器 ccom30--------------编译器 aopt30--------------汇编优化器 sbauto--------------SB寄存器自动更新工具 stkviewer & stk-----STK查看器与堆栈大小计算工具 utl30---------------SBDATA声明及SPECIAL页函数声明工具 mapview-------------映射查看器 看下NC30处理流程: 程序开发流程,生成X30文件的流程: 以上就是编译器所做的工作和流程。看了之后大家有了大概的了解。具体的大家可以参看NC30编译器手册,待会会上传附件给大家下载。 2:启动程序介绍 ncrt0.a30 这个程序在程序启动或复位后立即运行,它主要执行下列处理:

.设置SBDATA区 .设置处理器的操作模式 .初始化堆栈指针 .初始化SB寄存器 .初始化INTB寄存器 .初始化NEAR数据区 .初始化FAR数据区 .初始化堆区 .初始化标准I/O函数程序库 .初始化FB寄存器 .调用MAIN函数 ncrt0.a30汇编文件,在建立工程的时候会自动生成。以下附带详细注释,附件也可下载。;*************************************************************************** ; C Compiler for R8C/Tiny, M16C/60,30,20,10 ; Copyright(C) 1999(2000-2006). Renesas Technology Corp. ; and Renesas Solutions Corp., All rights reserved. ; ; ncrt0.a30 : Startup Program for M16C family ; ; $Date: 2006/11/22 04:13:23 $ ; $Revision: 1.1.4.1 $ ;*************************************************************************** ;--------------------------------------------------------------------- ; include files ;包含文件 ;--------------------------------------------------------------------- .list OFF ;控制行输出数据输出到列表文件OFF:停止ON:开始 .include nc_define.inc ;包含宏文件 .include sect30.inc ;包含存储器映射文件 .list ON ;--------------------------------------------------------------------- ; BankSelect definition for 4M mode ;--------------------------------------------------------------------- ; .glb __BankSelect ;__BankSelect .equ 0BH ;===================================================================== ; Interrupt section start ;中断段起始 ;--------------------------------------------------------------------- .insf start,S,0 .glb start .section interrupt start: ;复位后从这个标签开始运行 ;--------------------------------------------------------------------- ; after reset,this program will start ;复位后程序将启动

瑞萨MCU型号速查手册.

致尊敬的顾客 关于产品目录等资料中的旧公司名称 NEC电子公司与株式会社瑞萨科技于2010年4月1日进行业务整合(合并), 整合后的新公司暨“瑞萨电子公司”继承两家公司的所有业务。因此,本资料中虽还保留有旧公司名称等标识,但是并不妨碍本资料的有效性,敬请谅解。 瑞萨电子公司网址:https://www.360docs.net/doc/2918954420.html, 2010年4月1日 瑞萨电子公司 【发行】瑞萨电子公司(https://www.360docs.net/doc/2918954420.html,) 【业务咨询】https://www.360docs.net/doc/2918954420.html,/inquiry Notice 1. All information included in this document is current as of the date this document is issued. Such information, however, is subject to change without any prior notice. Before purchasing or using any Renesas Electronics products listed herein, please confirm the latest product information with a Renesas Electronics sales office. Also, please pay regular and careful attention to additional and different information to be disclosed by Renesas Electronics such as that disclosed through our website. Renesas Electronics does not assume any liability for infringement of patents, copyrights, or other intellectual property rights of third parties by or arising from the use of Renesas Electronics products or technical information described in this document. No license, express, implied or otherwise, is granted hereby under any patents, copyrights or other intellectual property rights of Renesas Electronics or others. You should not alter, modify, copy, or otherwise misappropriate any Renesas Electronics product, whether in whole or in part. Descriptions of circuits, software and other related information in this document are provided only to illustrate the operation of semiconductor products and application examples. You are fully responsible for the incorporation of these circuits, software, and information in the design of your equipment. Renesas Electronics assumes no responsibility for any losses incurred by you or third parties arising from the use of these circuits, software, or information. When exporting the products or technology described in this document, you should comply with the applicable export control laws and regulations and follow the procedures required by such laws and regulations. You should not use Renesas Electronics products or the technology described in this document for any purpose relating to military applications or use by the military, including but not limited to the

51单片机C语言入门教程详细解说

单片机c语言入门 相信很多爱好电子的朋友,对单片机这个词应该都不会陌生了吧。不过有些朋友可能只听说他叫单片机,他的全称是什么也许并不太清楚, 更不用说他的英文全称和简称了。单片机是一块在集成电路芯片上集成了一台有一定规模的微型计算机。简称为:单片微型计算机或单片机 (Single Chip Computer)。单片机的应用到处可见,应用领域广泛,主要应用在智能仪表、实时控制、通信、家电等方面。不过这一切都没 什么关系,因为我(当然也包括任何人)都是从不知道转变成知道的,再转变成精通的。现在我只想把我学习单片机的经历,详细地讲叙给大 家听听,可能有些大虾会笑话我,想:那么简单的东西还在这里卖弄。但是你错了,我只是把我个人学习的经历讲述一遍而已,仅仅对那些想 学习单片机,但又找不到好方法或者途径的朋友,提供一个帮助,使他们在学习过程中,尽量少走些弯路而已! 首先,你必须有学习单片机的热情,不是说今天去图书馆看了一个下午关于单片机的书,而明天玩上半天,后天就不知道那个本书在讲什 么东西了。还是先说说我吧,我从大二的第一个学期期末的时候才开始接触单片机,但在这之前,正如上面所说的:我知道有种芯片叫单片机, 但是具体长成什么样子,却一点也不知道!看到这里很多朋友一定会忍不住发笑。嘿嘿,你可千万别笑,有些大四毕业的人也同样不知道单片 机长成什么样子呢!而我对单片机的痴迷更是常人所不能想象的地步,大二的期末考试,我全放弃了复习,每当室友拿着书在埋头复习的时候, 我却捧着自己从图书馆借的单片机书在那看,虽然有很多不懂,但是我还是坚持了下来,当时我就想过,为了单片机值不值得我这样去付出, 或许这也是在一些三流学校的好处吧,考试挂科后,明年开学交上几十元一门的补考费,应该大部分都能过了。于是,我横下一条心,坚持看 我的单片机书和资料。 当你明白了单片机是这么一回事的时候,显而易见的问题出来了:我要选择那种语言为单片机编写程序呢?这个问题,困扰了我好久。具 体选择C51还是A51呢?汇编在我们大二之前并没有开过课,虽然看着人家的讲解,很容易明白单片机的每一时刻的具体工作情况,但是一合上 书或者资料,自己却什么也不知道了,根本不用说自己写程序了。于是,我最终还是决定学C51,毕竟C51和我们课上讲的C语言,有些类似, 编程的思想可以说是相通的。而且C51还有更大的优点就是编写大程序时的优越性更不言而喻,当然在那时,我并没有想的那么深远,C51的特 点,还是在后来的实践过程中,渐渐体会到的!朋友如果你选择了C51,那么请继续往下看,如果你选择了A51,那么你可以不要看了!因为下面讲 的全是C方面的,完全在浪费你的时间! 呵呵^_^ 第二,既然你想学好单片机,你必须得舍得花钱,如果不买些芯片回来自己动手焊焊拆拆的(但是在后期会介绍给大家一个很好用的硬件 仿真软件,并不需要你用实验板和仿真器了,直接在你的PC上完成,但是软件毕竟是软件,从某个特定的意义上来说是并不能代替硬件的),即使

2-瑞萨汇编指令简介

瑞萨汇编指令简介 汇编伪指令简介: 《Assembler User's Manual》page 144~213 Address control .ORG Declares address. .BLKB Allocates RAM area in units of 1 bytes. .BLKW Allocates RAM area in units of 2 bytes. .BLKA Allocates RAM area in units of 3 bytes. .BLKL Allocates RAM area in units of 4 bytes. .BLKF Allocates RAM area in units of 4 bytes. .BLKD Allocates RAM area in units of 8 bytes. .BYTE Stores data in ROM in 1-byte length. .WORD Stores data in ROM in 2-byte length. .ADDR Stores data in ROM in 3-byte length. .LWORD Stores data in ROM in 4-byte length. .FLOAT Stores data in ROM in 4-byte length. .DOUBLE Stores data in ROM in 8-byte length. .ALIGN Corrects odd addresses to even addresses. Assemble control .EQU Defines symbol. .BTEQU Defines bit symbol. .END

瑞萨MCU

瑞萨电子MCU在华“单飞”,三年千款新品更懂中国 长久以来,日系半导体公司总是让人又爱又恨:他们出色的技术、优异的性能无不令人垂涎,而他们保守的运作方式、迟缓的反应速度又每每让人恨得牙痒——这种因为决策周期过长带来的弊端,在08年金融危机之后市场剧烈震荡时表现得尤为明显。而现在,瑞萨电子决定改变这一切。 “从10月起我们把面向中国MCU市场的决策权从日本总部转移到了中国,今后研发什么产品、如何生产、与谁合作都由瑞萨中国自己说了算。可以说,以后我们就是一家彻头彻尾的本地MCU供应商了。” 日前在瑞萨电子中国MCU业务全新战略新闻发布会上,瑞萨电子大中华区MCU产品中心总监邱荣丰公布了这一振奋人心的消息。 瑞萨电子大中国区MCU产品中心总监邱荣丰先生 从“世界工厂”到“中国市场” 瑞萨电子之所以做出这一重大改变,主要是为了顺应中国市场的角色变化。在过去很长一段时间里,中国一直是以“世界工厂”的角色活跃在世界舞台上,瑞萨电子中国MCU业务更多的精力也是用于支持在中国设有制造网点的跨国制造商,而近几年,随着经济的高速发展,加上政府强有力的政策推动,中国已成为全球最大的电子设备制造与消费市场, 瑞萨电子也面对越来越多来自中小型本地制造商的需求。 “我们看到,已经有越来越多的中国本地设计公司参与到产品的设计中来,他们对半导体产品的需求更加多样化、细分化、专业化,这就要求我们更快速、更准确地把握急剧变化的市场需求,并以最快的速度研发出满足中国市场客户需求的产品,而本地化MC U业务体制无疑将使决策过程更加快速。”邱荣丰说,“打个比方,比如说现在我找到一个新的领域,这个新的领域在中国有自己的特点,10月之前如果说我想要求一个新产品的话,需要提交到日本总部,日本要考虑到全球的要求,而新决策实施之后,如果中国自己判断这个市场可以做,我们马上就做,而且生产、设计、产品、推广全部是一个部门,这样时间会缩短很多。这是新决策实施前后最大的不同。” 瑞萨电子高级副总裁水垣重生也表示:“强化中国MCU部门机能、体制,使其拥有相当于事业部的同等职能权限,这样就能保证在对应中国本地需求时的快速与实时性。像这样将决策权直接放在海外,在瑞萨电子还是第一次”。 瑞萨电子期望强化后的大中国区MCU产品中心能加速推动瑞萨电子MCU业务进一步深入扎根飞速发展的中国市场,并通过中国本地管理人员对市场的理解和判断将适合于中国市场的产品更快速更广泛地推向中国市场。同时,瑞萨电子也希望能以最重要的中国市场带动海外销售,使瑞萨电子MCU业务的在日本以外市场的销售从目前的50%提高到60%。这也是瑞萨电子于7月底推出的“百日计划”中的重要方针之一。 三管齐下实现“本地化”转型 具体而言,瑞萨电子未来会从三个方面强化中国MCU业务的本地化:首先,是实现生产本地化。邱荣丰指出,过去瑞萨电子一直强调“High Quality”,但是中国市场有其自身鲜明的发展特点,例如本地制造商倾向于选择供

瑞萨单片机M32C NC308WA有效的编程技术(培训资料)

第 5 节有效的编程技术 在 NC308WA 编译程序执行它本身的优化的同时,聪颖而又富有智慧的编程也可以产生提高的性能。本章将描述数种用户用于建立更有效率之程序的技术。程序的评估可以使用两个标准进行:它可以多快执行,以及它有多小。以下是建立有效程序的重要原理: (1) 最大化执行速度 执行速度同时由经常执行的语句和复杂的语句决定。了解这些语句的处理方式以及如何选择性地改进它们,是非常重要的。 (2) 最小化程序大小 要使程序保持尽可能的小,应该共享相似的处理段以及尽可能简化复杂的函数。 由于编译程序的优化功能,有关执行速度的结果可能不同于它们在理论上的执行速度。因此,在过程中请使用编译程序上的各种方法来提高性能和测试它们。 表 5.1 列出本章所说明的有效编程技术。 表 5.1 有效编程技术的列表 编号项目RAM 效率ROM 效率执行速度5.1 参数的寄存器传递!!! 5.2 使用寄存器变量!!! 5.3 使用 M16C 指定的指令-- !! 5.4 使用位运算转移的“进位”(carry)标志-- !! 5.5 将循环内的确定项目移到循环外-- -- ! 5.6 SBDATA 声明和 SBDATA 声明-- !-- SPECIAL 页函数 SPECIAL 页函数声明-- !" 声明实用程序 5.7 使用 “switch” 而不是 “else if” -- -- ! 5.8 循环 counter 的比较运算符-- !! 5.9 限制-- !! 5.10 使用 _Bool -- !-- 5.11 明确地初始化自动变量!!! 5.12 初始化数组-- -- ! 5.13 增量/减量!!! 5.14 Switch 语句-- -- ! 5.15 紧靠浮点-- !! 5.16 零清除外部变量-- !! 5.17 编排启动-- !! 5.18 使用循环内的临时值"-- ! 5.19 使用32位数学函数-- !!

关于STC单片机的一些牢骚

关于STC单片机的一些牢骚 STC 1T系列单片机,是目前为止,我个人认为最适 合灯光调光类产品的单片机IC。但是目前市场上,对 STC的骂声一片,至少在我经常上的一些关于单片机的 论坛也好,经常聊的一些关于单片机、电子技术的Q群 也好并不怎么看好STC单片机。至于原因嘛,有目共睹的,STC因吹牛皮不慎,引犯众恶。比如: 一、数据手册、规格书做得不专业,很严谨的数据手册、规格书被做得很像宣传手册一样,很奇怪,怎么不参照 一下Microchip或者ATMEGA AVR这些牌子的数据手册、规格书呢。 二、产地不详。STC号称中国大陆本土品牌,中国 人自己的单片机。既不能提供产地的资料,又不明确表 态所用的技术是出自哪里的。客户打电话过去咨询,说 是美国的技术,上海制造,但是打电话到美国咨询却没 人接听。官网上却宣称是中国自己的技术。有点矛盾。 不过最近STC官网发布了一些TSMC生产现场的照片,说明的确是上海制造。 三、STC的官网也搞得太不像样了,很简单的一个 页面,而且从我留意STC到现在版面一点点改变都没有。 四、ISP烧录软件不像样,经常出错,在装有

AUTOCAD上的电脑启动,将会一起启动AUTOCAD的安装程序。巨郁闷…… 五、自吹自擂,号称无法解密的单片机,现在最新 的15F都用第八代加密技术了,但是市场上随便三两千 元都能解密了。还悬赏十万请专家帮忙查找有无漏洞。 你说会不会有这么笨的人,我要是知道你的解密方法, 我也不去做这么蠢的事,断自己的财路,这么等同于杀 鸡取卵么? 综上所述,STC的确缺点多多。但不得不承认STC仍拥有很多的优点、很强大的功能。比如说: 一、STC是1T单片机,速度十分的快。使用如此高速的单片机进行灯光PWM调光(多数为软件PWM,硬件PWM 在选型、移植、设计都有较多的不便,但软件PWM要求 较高的速度),能让光线柔和无闪烁感。这是其它单片机无法比拟的。也是STC适合于灯光调光类产品最主要的 原因。当然,1T、4T的单片机比比皆是。如Microchip、AVR、Silicon Labs。但STC可以用到30~40MHZ的单片机,Microchip、AVR的中低档单片机中根本没有。高档 就算啦,不是同一个价位的。而且进口货,也贵得惊人。有一次,Microchip一代理商给我打电话说,你们现在 用的单片机也几块钱啊,我们Microchip也有一块两块 美金的单片机啊。*,几块美金是多少人民币了?至于

瑞萨单片机在线升级操作说明

瑞萨单片机在线升级操作说明 说明:共有两个程序代码,上电复位运行Bootload程序,然后检查EEPROM里面是否置位,如果置位,则需要进行APP代码更新,否则运行已有的APP代码。 一、使用瑞萨单片机R5F2L357C为例 该单片机ROM资源如下, 1、块A-D为数据闪存,未用。 2、默认ROM空间起始地址为0x4000h 3、中断向量分为固定向量和可变向量,默认地址分别为: 固定向量Fvector:0xFFD8-0xFFFF 可变向量vector:0xFED8(至偏移256字节处) 工程文件中可查:

在fvector.c文件中 #pragma sectaddress fvector,ROMDATA 0xFFD8 我们要修改的两个程序代码空间分配为 1、APP 用户程序代码编译出来有35.4K的空间,存放在块 2、块3和块4,共40K的空间,地址为04000h-0DFFFh 2、Bootload程序代码编译出来有5.2K的空间,存放在块0和块1,共8K的空间,地址为0E000h-0FFFFh。 二、Bootload程序代码制作 1、修改ROM空间的起始地址,默认为0x4000,改为0xE000,如下所示。

编译完成后,可直接烧录该文件。 三、APP用户代码制作(I_Collector_Update) 1、修改APP用户代码的固定向量和可变向量地址:

将vector地址由0xFED8改为0x0DED8 在fvector.c文件中 #pragma sectaddress fvector,ROMDATA 0xffd8改为 #pragma sectaddress fvector,ROMDATA 0xdfd8 重新编译下,可以看出,地址不超出0x0e000,在块2范围内 将编译的mot文件用FDT4.09工具打开另存为.bin文件, 用UltraEdit打开.bin文件,将0x4000-0xe000地址以外的数据删除,保存。此文件为在线烧录更新的文件。 这个文件可以用电脑串口发给单片机,单片机接收后IAP,自动运行。 四、系统运行 1、上电后,系统从bootload程序地址为0FFFCh上电复位,检测EEPROM存储器是否置位,如置位,则需要更新APP应用程序,否则从APP应用程序的复位地址0DFFC处执行。 2、上位机和单片机通信使用了X-mode协议。每个数据帧为128个字节。

51单片机及C语言入门教程

51单片机 及C语言入门教程 注:排成16开版式,是为了方便自已打印阅读。请不要用于非法用途。 2007.12.20

51单片机及C语言入门教程 第一课 建立您的第一个C项目 使用C语言肯定要使用到C编译器,以便把写好的C程序编译为机器码,这样单片机才能执行编写好的程序。KEIL uVISION2是众多单片机应用开发软件中优秀的软件之一,它支持众多不同公司的MCS51架构的芯片,它集编辑,编译,仿真等于一体,同时还支持,PLM,汇编和C语言的程序设计,它的界面和常用的微软VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。因此很多开发51应用的工程师或普通的单片机爱好者,都对它十分喜欢。 以上简单介绍了KEIL51软件,要使用KEIL51软件,必需先要安装它。KEIL51是一个商业的软件,对于我们这些普通爱好者可以到KEIL中国代理周立功公司的网站上下载一份能编译2K的DEMO版软件,基本可以满足一般的个人学习和小型应用的开发。(安装的方法和普通软件相当这里就不做介绍了) 安装好后,你是不是迫不及待的想建立自己的第一个C程序项目呢?下面就让我们一起来建立一个小程序项目吧。或许你手中还没有一块实验板,甚至没有一块单片机,不过没有关系我们可以通过KEIL软件仿真看到程序运行的结果。 首先当然是运行KEIL51软件。怎么打开?噢,天!那你要从头学电脑了。呵呵,开个玩笑,这个问题我想读者们也不会提的了:P。运行几秒后,出现如图1-1的屏幕。 图1-1启动时的屏幕

接着按下面的步骤建立您的第一个项目: (1)点击Project菜单,选择弹出的下拉式菜单中的New Project,如图1-2。接着弹出一个标准Windows文件对话窗口,如图1-3,这个东东想必大家是见了N次的了,用法技巧也不是这里要说的,以后的章节中出现类似情况将不再说明。在"文件名"中输入您的第一个C程序项目名称,这里我们用"test",这是笔者惯用的名称,大家不必照搬就是了,只要符合Windows文件规则的文件名都行。"保存"后的文件扩展名为uv2,这是KEIL uVision2项目文件扩展名,以后我们可以直接点击此文件以打开先前做的项目。 图1-2New Project菜单 图1-3文件窗口 (2)选择所要的单片机,这里我们选择常用的Ateml公司的AT89C51。此时屏幕如图1-4

瑞萨单片机基础软件安装(R8C)

学习瑞萨单片机,M16族下的R8C-2L、R8C-2K群单片机开发环境的安装 由于仅仅有瑞萨的16位单片机R8C-2L、R8C-2K族(具体型号是R5F212L4,16K的FLASH 程序区,2K的RAM区),所以以下的均已R8C-2L、R8C-2K群为主,其实关于瑞萨的其他几款单片机,都是大同小异的,只需要认真按照教程操作一遍即可。 安装开发软件包括三项,分别是C和C++的编译器,IDE开发环境,下载工具软件。 第一项:C和C++的编译器,这是首先需要安装的,如果不按照这个顺序,安装IDE时会提示缺少相关元件的错误。从瑞萨的官网下载名为nc30v600r00_ev的安装软件。现在可以看出最新版本为V6.00版,安装过程中没有其它的注意事项,一路NEXT的就可以了,另外这个版本是兼容WIN7的!~ 第二项:IDE开发环境,这是第二个安装的,我们也可以从官网下载的,不过需要说明的是,下载这个软件时需要注_册瑞萨的会员,而且是不能使用迅雷的,注_册完毕便可以顺利的下载。其它的注意事项也没有太多,这个软件是可以开发瑞萨的整个M16族的,其中就包括我们谈到的R8C族。文件名为hewv40900u_full_update,同样上面的版本号码是V4.09,不过这个软件好像是有64K的代码限制,由于工程并不需要这么大的代码量,所以我没有破_解。如果有网友有破_解方式的,也可以在这里分享一下吧!~ 第三项:下载工具软件,这是给单片机下载程序和仿真使用的。但是瑞萨的E8A的调试器太贵了,动辄就要1000多元。不过乐观一点是,好多类型的单片机提供了串口的下载方式,M16群也如此,而且它还是支持串口仿真的,现在你只需要一片MAX232或者PL2303即可。 M16cFousbDebuggerV103R00这是它的文件名,通常称这个软件为Fousb。由于我们所使用的R8C-2L、R8C-2K群单片机为瑞萨较新的单片机,我们需要更新一下这个软件,你可以开着电脑,重启一下就会发现软件的官网同步更新了,不过更快捷的方式我们可以下载更新包R8C_UART_MCU_INST_E解压安装完之后,瑞萨的Fousb串口仿真和调试方式就此结束。 以上三项结束之后,就可以完全的开发瑞萨的单片机了,可以在M16族中尽情遨游了!~ 新手第一次写教程,我也是从上个星期开始学习这款单片机的,就是大学的时光太闲了,没事干玩玩单片机什么的呢。呵呵,大侠们就尽情的拍砖吧!~

蜂鸣器和弦音实现基于瑞萨单片机实现电路+代码

蜂鸣器和弦电路 以下是基于瑞萨单片机实现代码: /****************************************************************************** ** 文件:Beep.c 功能:蜂鸣器和弦音,定义三种音,关机,开机,单音 Author:DB.YAN,i_restart@https://www.360docs.net/doc/2918954420.html, Time:2013.10.15 Recent Modify:2013.10.16 ******************************************************************************/ /*=======================以下是音调定义======================*/ #define Tone_C6 1 #define Tone_CS6 2 #define Tone_D6 3 #define Tone_DS6 4 #define Tone_E6 5 #define Tone_F6 6 #define Tone_FS6 7 #define Tone_G6 8 #define Tone_GS6 9 #define Tone_A6 10 #define Tone_AS6 11 #define Tone_B6 12

#define Tone_C7 13 #define Tone_CS7 14 #define Tone_D7 15 #define Tone_DS7 16 #define Tone_E7 17 #define Tone_F7 18 #define Tone_FS7 19 #define Tone_G7 20 #define Tone_GS7 21 #define Tone_A7 22 #define Tone_AS7 23 #define Tone_B7 24 #define END 0//音频结束位 #define SYS_FREQ 8 // MHZ 系统时钟 #define TIMER_CNT_BASE 1000000*SYS_FREQ/2 //定时器计数基数 #define BUZZER_IO P3_bit.no1 //BEEP IO #define BUZZER_OUT PM3_bit.no1=0 //Mode OUT #define BUZZER_PULL PU3_bit.no1=1 //Pull up #define PWR_CTRL P13_bit.no0 //蜂鸣器供电控制脚 #define BUZZERIO_INIT {BUZZER_OUT;BUZZER_PULL;} /*=========================音调频率表=======================*/ const uint Tune_Tbl[24]= { //C6,CS6, D6 ,DS6 ,E6 F6 ,FS6 ,G6 ,GS6 ,A6 ,AS6 ,B6 1047,1109,1175,1245,1319,1397,1480,1568,1661,1760,1865,1976, //C7,CS7, D7 ,DS7 ,E7 F7 ,FS7 ,G7 ,GS7 ,A7 ,AS7 ,B7 2093,2217,2349,2489,2637,2794,2960,3136,3322,3520,3729,3951, }; /*======================关机和弦1,2,3...====================*/ const uchar Sound_ShutDown[10]= { Tone_C7,2,14,Tone_D7,2,6,Tone_E7,6,60,END }; /*======================开机和弦3,2,1...====================*/ const uchar Sound_PowerOn[10]= { Tone_E7,2,6,Tone_D7,2,14,Tone_C7,6,60,END

瑞萨R5F系列单片机型号R5F21346

瑞萨R5F系列单片机型号R5F21346 瑞萨电子是由原三菱电子、日立半导体、NEC半导体重组的世界大型半导体厂商,R5F系列单片机是瑞萨电子最有代表性的单片机,致芯科技提供全系列R5F单片机解密服务。 R5F1006 R5F1007 R5F1008 R5F100A R5F100B R5F100C R5F100E R5F100F R5F100G R5F100J R5F100L R5F100M, R5F100P R5F100P R5F100S解密 R5F21102 R5F21103 R5F21104 R5F21112 R5F2113 R5F2114 R5F21122 R5F21123 R5F21133 R5F21134 R5F21142 R5F21143 R5F21144 R5F21152 R5F21153 R5F21162 R5F21163 R5F21164 R5F21172 R5F21174 R5F21206 R5F21207 R5F21208 R5F2120A R5F2120C R5F21216 R5F21218 R5F2121A R5F2121C R5F2121J R5F21227 R5F21228 R5F2122A R5F2122C R5F21236 R5F21237 R5F21238 R5F2123A R5F2123C R5F21244 R5F21245 R5F21246 R5F21247 R5F21248 R5F21254 R5F21256 R5F21257 R5F21258 R5F21262 R5F21264 R5F21265 R5F21266 R5F21272 R5F21274 R5F21275 R5F21276 R5F21282 R5F21284 R5F21292 R5F21294 R5F212A7 R5F212A8 R5F212AA R5F212B R5F212D R5F212H R5F212J R5F212K R5F212L解密 R5F21346 R5F21356 R5F21358 R5F2L367 R5F2L368 R5F2L387 R5F2L3A7 R5F363A R5F364 R5F3650 R5F562T R5F615 R5F61653 R5F6172 R5F64110 R5F6411 R5F6175 R5F6179 R5F6185 R5F6460 R5F64175芯片解密型号: R5F64175DFD,R5F64185DFD,R5F64187HPFD,R5F64600KFP R5F64175NFB,R5F64185HDFB,R5F64187NFB,R5F64600LFP R5F64175NFD,R5F64185HDFD,R5F64187NFD,R5F64601JFP R5F64175PFB,R5F64185HNFB,R5F64187PFB,R5F64601KFP R5F64175PFD,R5F64185HNFD,R5F64187PFD,R5F64601LFP R5F64176DFB,R5F64185HPFB,R5F64188DFB,R5F6460EJFP R5F64176DFD,R5F64185HPFD,R5F64188DFD,R5F6460EKFP R5F64176NFB,R5F64185NFB,R5F64188HDFB,R5F6460ELFP R5F64176NFD,R5F64185NFD,R5F64188HDFD,R5F6460FJFP R5F64176PFB,R5F64185PFB,R5F64188HNFB,R5F6460FKFP R5F64176PFD,R5F64185PFD,R5F64188HNFD R5F6416JADFD R5F6416JADFE R5F6416JAPFD R5F6416JAPFE R5F6416KADFD R5F6416KADFE R5F6416KAPFD R5F6416KAPFE R5F6416LADFD R5F6416LADFE R5F6416LAPFD R5F6416LAPFE R5F6416MADFD R5F6416MADFE R5F6416MAPFD R5F6416MAPFE R5F6417JADFD R5F6417JADFE R5F6417JAPFD R5F6417JAPFE R5F6417KADFD R5F6417KADFE R5F6417KAPFD R5F6417KAPFE R5F6417LADFD R5F6417LADFE R5F6417LAPFD R5F6417LAPFE R5F6417MADFD R5F6417MADFE R5F6417MAPFD R5F6417MAPFE R5F6418JADFD R5F6418JADFE R5F6418JAPFD R5F6418JAPFE

相关文档
最新文档