CF020入门指导.ppt
- 文档编号:18763757
- 上传时间:2023-11-02
- 格式:PPT
- 页数:72
- 大小:2.13MB
CF020入门指导.ppt
《CF020入门指导.ppt》由会员分享,可在线阅读,更多相关《CF020入门指导.ppt(72页珍藏版)》请在冰点文库上搜索。
C8051F020/1/2/3混合信号ISPFLASH微控制器,1、概述2、交叉开关配置3、系统时钟源4、系统复位5、JTAG接口的在系统调试6、单片机的初始化设置,1、概述,C8051F020器件是完全集成的混合信号系统级MCU芯片,具有64个数字I/O引脚(C8051F020/2)或32个数字I/O引脚(C8051F021/3)。
下面列出了一些主要特性:
高速、流水线结构的8051兼容的CIP-51内核(可达25MIPS)全速、非侵入式的在系统调试接口(片内)真正12位(C8051F020/1)或10位(C8051F022/3)、100ksps的8通道ADC,带PGA和模拟多路开关真正8位500ksps的ADC,带PGA和8通道模拟多路开关两个12位DAC,具有可编程数据更新方式64K字节可在系统编程的FLASH存储器4352(4096+256)字节的片内RAM,可寻址64K字节地址空间的外部数据存储器接口硬件实现的SPI、SMBus/I2C和两个UART串行接口5个通用的16位定时器具有5个捕捉/比较模块的可编程计数器/定时器阵列片内看门狗定时器、VDD监视器和温度传感器,1.1CIP-51TMCPU,1.1.1与8051完全兼容,C8051F020系列器件使用SiliconLabs的专利CIP-51微控制器内核。
CIP-51与MCS-51TM指令集完全兼容,可以使用标准803x/805x的汇编器和编译器进行软件开发。
CIP-51内核具有标准8052的所有外设部件,包括:
5个16位的计数器/定时器、两个全双工UART、256字节内部RAM、128字节特殊功能寄存器(SFR)地址空间、8/4个字节宽的I/O端口。
CIP-51采用流水线结构,与标准的8051结构相比指令执行速度有很大的提高。
1.1.2速度提高,在一个标准的8051中,除MUL和DIV以外所有指令都需要12或24个系统时钟周期,最大系统时钟频率为12-24MHz。
而对于CIP-51内核,70%的指令的执行时间为1或2个系统时钟周期,只有4条指令的执行时间大于4个系统时钟周期。
1.1.3增加的功能,扩展的中断系统向CIP-51提供22个中断源(标准8051只有7个中断源),允许大量的模拟和数字外设中断微控制器。
MCU可有多达7个复位源:
一个片内VDD监视器、一个看门狗定时器、一个时钟丢失检测器、一个由比较器0提供的电压检测器、一个软件强制复位、CNVSTR引脚及/RST引脚。
MCU内部有一个独立运行的时钟发生器,在复位后被默认为系统时钟。
如果需要,时钟源可以在运行时切换到外部振荡器,外部振荡器可以使用晶体、陶瓷谐振器、电容、RC或外部时钟源产生系统时钟。
1.2片内存储器,CIP-51有标准的8051程序和数据地址配置。
C8051F020中的CIP-51还另有位于外部数据存储器地址空间的4K字节的RAM块和一个可用于访问外部数据存储器的外部存储器接口(EMIF)。
这个片内的4K字节RAM块可以在整个64K外部数据存储器地址空间中被寻址(以4K为边界重叠)。
外部数据存储器地址空间可以只映射到片内存储器、只映射到片外存储器、或两者的组合(4K以下的地址指向片内,4K以上的地址指向EMIF)。
EMIF可以被配置为地址/数据线复用方式或非复用方式。
MCU的程序存储器包含64K字节的FLASH。
该存储器以512字节为一个扇区,可以在系统编程,且不需特别的外部编程电压。
1.3JTAG调试和边界扫描,C8051F020系列具有片内JTAG边界扫描和调试电路,通过4脚JTAG接口并使用安装在最终应用系统中的产品器件就可以进行非侵入式、全速的在系统调试。
该JTAG接口完全符合IEEE1149.1规范,为生产和测试提供完全的边界扫描功能。
SiliconLabs的调试系统支持观察和修改存储器和寄存器,支持断点、观察点、堆栈指示器和单步执行。
1.4可编程数字I/O和交叉开关,可通过设置交叉开关控制寄存器将片内的计数器/定时器、串行总线、硬件中断、ADC转换启动输入、比较器输出以及微控制器内部的其它数字信号配置为出现在端口I/O引脚。
这一特性允许用户根据自己的特定应用选择通用端口I/O和所需数字资源的组合。
该系列MCU具有标准8051的端口(0、1、2和3)。
在F020/2中有4个附加的端口(4、5、6和7),因此共有64个通用端口I/O。
每个端口I/O引脚都可以被配置为推挽或漏极开路输出。
数字交叉开关。
这是一个大的数字开关网络,允许将内部数字系统资源映射到P0、P1、P2和P3的端口I/O引脚。
1.5可编程计数器阵列,除了5个16位的通用计数器/定时器之外,C8051F020MCU系列还有一个片内可编程计数器/定时器阵列(PCA)。
PCA包括一个专用的16位计数器/定时器时间基准和5个可编程的捕捉/比较模块。
时间基准的时钟可以是下面的六个时钟源之一:
系统时钟/12、系统时钟/4、定时器0溢出、外部时钟输入(ECI)、系统时钟和外部振荡源频率/8。
每个捕捉/比较模块都有六种工作方式:
边沿触发捕捉、软件定时器、高速输出、频率输出、8位脉冲宽度调制器和16位脉冲宽度调制器。
PCA捕捉/比较模块的I/O和外部时钟输入可以通过数字交叉开关连到MCU的端口I/O引脚。
1.6串行端口,C8051F020系列MCU内部有两个增强型全双工UART、SPI总线和SMBus/I2C。
每种串行总线都完全用硬件实现,都能向CIP-51产生中断,因此需要很少的CPU干预。
这些串行总线不“共享”定时器、中断或端口I/O等资源,所以可以使用任何一个或全部同时使用。
1.712位模/数转换器,C8051F020/1有一个片内12位SARADC(ADC0),一个9通道输入多路选择开关和可编程增益放大器。
该ADC工作在100ksps的最大采样速率时可提供真正的12位精度,INL为1LSB。
ADC完全由CIP-51通过特殊功能寄存器控制。
有一个输入通道被连到内部温度传感器,其它8个通道接外部输入。
8个外部输入通道的每一对都可被配置为两个单端输入或一个差分输入。
可编程增益放大器接在模拟多路选择器之后,增益可以用软件设置,从0.5到16以2的整数次幂递增。
A/D转换有4种启动方式:
软件命令、定时器2溢出、定时器3溢出和外部信号输入。
这种灵活性允许用软件事件、外部硬件信号或周期性的定时器溢出信号触发转换。
转换结束由一个状态位指示,或者产生中断(如果中断被使能)。
在转换完成后,10或12位转换结果数据字被锁存到两个特殊功能寄存器中。
这些数据字可以用软件控制为左对齐或右对齐。
1.88位模/数转换器,C8051F020有一个片内8位SARADC(ADC1),带有一个8通道输入多路选择器和可编程增益放大器。
该ADC工作在500ksps的最大采样速率时可提供真正的8位精度,INL为1LSB。
有8个用于测量的输入端。
ADC1完全由CIP-51通过特殊功能寄存器控制。
ADC0的电压基准可以在模拟电源电压(AV+)和一个外部VREF引脚之间选择。
1.9比较器和DAC,C8051F020/1/2/3系列MCU内部有两个12位DAC和两个比较器。
MCU与每个比较器和DAC之间的数据和控制接口通过特殊功能寄存器实现。
MCU可以将任何一个DAC或比较器置于低功耗关断方式。
比较器的回差电压可以用软件编程。
每个比较器都能在上升沿、下降沿或在两个边沿都产生中断。
这些中断能将MCU从休眠方式唤醒。
比较器的输出状态可以用软件查询。
可通过设置交叉开关将比较器的输出接到端口I/O引脚。
DAC为电压输出方式,有灵活的输出更新机制。
这一机制允许用软件写和定时器2、定时器3及定时器4的溢出信号更新DAC输出。
C8051F020/2的DAC之电压基准由专用的VREFD输入引脚提供,而C8051F021/3的DAC之电压基准由器件内部的电压基准提供。
DAC在作为比较器的参考电压或为ADC差分输入提供偏移电压时非常有用。
2、交叉开关配置,2.1端口输入/输出,低端口(P0、P1、P2和P3)既可以按位寻址也可以按字节寻址。
高端口(P4、P5、P6和P7)只能按字节寻址。
所有引脚都耐5V电压,都可以被配置为漏极开路或推挽输出方式和弱上拉。
C8051F020/1/2/3器件有大量的数字资源需要通过4个低端I/O端口P0、P1、P2和P3才能使用。
P0、P1、P2和P3中的每个引脚既可定义为通用的端口I/O(GPIO)引脚,又可以分配给一个数字外设或功能(例如:
UART0或/INT1),如图17.2所示。
系统设计者控制数字功能的引脚分配,只受可用引脚数的限制。
这种资源分配的灵活性是通过使用优先权交叉开关译码器实现的。
注意,不管引脚被分配给一个数字外设或是作为通用I/O,总是可以通过读相应的数据寄存器得到端口I/O引脚的状态。
端口1的引脚可以用做ADC1的模拟输入。
2.2端口03和优先权交叉开关译码器,1、优先权交叉开关译码器(“交叉开关”),为数字外设分配端口引脚的优先权顺序列于图17.3,UART0具有最高优先权,而CNVSTR具有最低优先权。
按优先权顺序将端口03的引脚分配给器件上的数字外设(UART、SMBus、PCA、定时器等)。
端口引脚的分配顺序是从P0.0开始,可以一直分配到P3.7。
2、优先权顺序,2.1.1交叉开关引脚分配,当交叉开关配置寄存器XBR0、XBR1和XBR2中外设的对应使能位被设置为逻辑1时,交叉开关将端口引脚分配给外设。
端口03中所有未被交叉开关分配的引脚都可以作为通用I/O(GPI/O)引脚,通过读或写相应的端口数据寄存器访问。
被交叉开关分配的那些端口引脚的输出状态受使用这些引脚的数字外设的控制。
不管交叉开关是否将引脚分配给外设,读一个端口数据寄存器(或端口位)将总是返回引脚本身的逻辑状态。
交叉开关寄存器被正确配置后,通过将XBARE(XBR2.6)设置为逻辑1来使能交叉开关。
在XBARE被设置为逻辑1之前,端口0-3的输出驱动器被明确禁止,以防止对交叉开关寄存器和其它寄存器写入时在端口引脚上产生争用。
被交叉开关分配给输入信号(例如RX0)的引脚所对应的输出驱动器应被明确禁止;以保证端口数据寄存器和PnMDOUT寄存器的值不影响这些引脚的状态。
2.1.2配置端口引脚的输出方式,在XBARE(XBR2.6)被设置为逻辑1之前,端口0-3的输出驱动器保持禁止状态。
每个端口引脚的输出方式都可被配置为漏极开路或推挽方式,缺省状态为漏极开路。
1、推挽方式:
向端口数据寄存器中的相应位:
写逻辑0将使端口引脚被驱动到GND,写逻辑1将使端口引脚被驱动到VDD。
2、漏极开路方式:
向端口数据寄存器中的相应位:
写逻辑0将使端口引脚被驱动到GND,写逻辑1将使端口引脚处于高阻状态。
3、端口0-3引脚的输出方式由PnMDOUT寄存器中的对应位决定。
为逻辑1时,配置为推挽方式;为逻辑0时,配置为漏极开路方式。
不管交叉开关是否将端口引脚分配给某个数字外设,端口引脚的输出方式都受PnMDOUT寄存器控制。
2.1.3配置端口引脚为数字输入,1、通过设置输出方式为“漏极开路”并向端口数据寄存器中的相应位写1将端口引脚配置为数字输入。
例:
设置P3MDOUT.7为逻辑0并设置P3.7为逻辑1即可将P3.7配置为数字输入。
2、如果一个端口引脚被交叉开关分配给某个数字外设,并且该引脚的功能为输入(例如UART0的接收引脚RX0),则该引脚的输出驱动器被自动禁止。
2.1.4外部中断(IE6和IE7),除了外部中断/INT0和/INT1(其引脚由交叉开关分配)之外,P3.6和P3.7可被配置为边沿触发的中断源,用IE6CF(P3IF.2)和IE7CF(P3IF.3)位可以将这两个中断源配置为下降沿或上升沿触发。
2.1.5弱上拉,每个端口引脚都有一个内部弱上拉部件,在引脚与VDD之间提供阻性连接(约100k),在缺省情况下该上拉器件被使能。
弱上拉部件可以被总体禁止,通过向弱上拉禁止位(WEAKPUD,XBR2.7)写1实现。
当任何引脚被驱动为逻辑0时,弱上拉自动取消;即输出引脚不能与其自身的上拉部件冲突。
2.1.6配置端口1的引脚为模拟输入(AIN.7:
0),端口1的引脚可以用作ADC1模拟多路开关的模拟输入。
通过向P1MDIN寄存器中的对应位写0即可将端口引脚配置为模拟输入。
将一个端口引脚配置为模拟输入的过程如下:
1禁止引脚的数字输入路径。
这可以防止在引脚上的电压接近VDD/2时消耗额外的电源电流。
读端口数据位将返回逻辑0,与加在引脚上的电压无关。
2禁止引脚的弱上拉部件。
3使交叉开关在为数字外设分配引脚时跳过该引脚。
1、被配置为模拟输入的引脚的输出驱动器并没有被明确地禁止。
因此输出驱动器禁止的设置方式:
被配置为模拟输入的引脚所对应的P1MDOUT位应被设置为逻辑0(漏极开路方式);对应的端口数据位应被设置为逻辑1(高阻态)。
注意:
2、将一个端口引脚用作ADC1模拟多路开关的输入时并不要求将其配置为模拟输入,但强烈建议这样做。
2.1.8交叉开关引脚分配示例,要求:
1、将配置交叉开关,为UART0、SMBus、UART1、/INT0和/INT1分配端口引脚(共8个引脚)。
2、将外部存储器接口配置为复用方式并使用低端口。
3、将P1.2、P1.3和P1.4配置为模拟输入,以便用ADC1测量加在这些引脚上的电压。
配置步骤如下:
1、按UART0EN=1、UART1E=1、SMB0EN=1、INT0E=1、INT1E=1和EMIFLE=1。
设置XBR0、XBR1和XBR2,则有:
XBR0=0x05,XBR1=0x14,XBR2=0x06。
2、将外部存储器接口配置为复用方式并使用低端口,有:
PRTSEL=0,EMD2=0。
3、将作为模拟输入的端口1引脚配置为模拟输入方式:
设置P1MDIN为0xE3(P1.4、P1.3和P1.2为模拟输入,所以它们的对应P1MDIN被设置为逻辑0)。
4、设置XBARE=1以使能交叉开关:
XBR2=0x46。
-UART0有最高优先权,所以P0.0被分配给TX0,P0.1被分配给RX0。
-SMBus的优先权次之,所以P0.2被分配给SDA,P0.3被分配给SCL。
-接下来是UART1,所以P0.4被分配给TX1。
-由于外部存储器接口选在低端口(EMIFLE=1),所以交叉开关跳过P0.6(/RD)和P0.7(/WR)。
又因为外部存储器接口被配置为复用方式,所以交叉开关也跳过P0.5(ALE)。
-下一个未被跳过的引脚P1.0被分配给RX1。
-/INT0,被分配到引脚P1.1。
-将P1MDIN设置为0xE3,使P1.2、P1.3和P1.4被配置为模拟输入,导致交叉开关跳过这些引脚。
-优先权高的是/INT1,所以下一个未跳过的引脚P1.5被分配给/INT1。
5、配置结果。
6、我们将UART0的TX引脚(TX0,P0.0)、UART1的TX引脚(TX1,P0.4)、ALE、/RD、/WR(P0.7:
3)的输出设置为推挽方式,通过设置P0MDOUT=0xF1来实现。
7、我们通过设置P2MDOUT=0xFF和P3MDOUT=0xFF将EMIF端口(P2、P3)的输出方式配置为推挽方式。
8、我们通过设置P1MDOUT=0x00(配置输出为漏极开路)和P1=0xFF(逻辑1选择高阻态)禁止3个模拟输入引脚的输出驱动器。
2.3端口4-7(仅C8051F020/2),端口4-7的所有端口引脚都可用作通用I/O(GPIO),通过读和写相应的端口数据寄存器访问每个端口,这些端口数据寄存器是一组按字节寻址的特殊功能寄存器。
读端口数据寄存器时,返回的是端口引脚本身的逻辑状态。
1、推挽方式:
向端口数据寄存器中的相应位:
写逻辑0将使端口引脚被驱动到GND,写逻辑1将使端口引脚被驱动到VDD。
2、漏极开路方式:
向端口数据寄存器中的相应位:
写逻辑0将使端口引脚被驱动到GND,写逻辑1将使端口引脚处于高阻状态。
2.3.1配置端口引脚的输出方式,每个端口引脚的输出方式都可被配置为:
漏极开路、推挽方式。
3、端口4-7引脚的输出方式由P74OUT寄存器中的位决定。
P7-4OUT中的每一位控制端口4-7中一组引脚(每组4位)的输出方式。
P7-4OUT.7为逻辑1时将端口7中高4位(P7.7:
4)的输出方式配置为推挽方式;P7-4OUT.7为逻辑0时将端口7中高4位(P7.7:
4)的输出方式配置为漏极开路。
2.3.2配置端口引脚为数字输入,通过设置输出方式为“漏极开路”并向端口数据寄存器中的相应位写1将端口引脚配置为数字输入。
例如:
将P7.7配置为数字输入设置P4OUT.7为逻辑0设置P7.7为逻辑1即可。
2.3.3弱上拉,每个端口引脚都有一个内部弱上拉部件,在缺省情况下该上拉器件被使能,在引脚与VDD之间提供阻性连接(约100k)。
弱上拉部件可以被总体禁止,通过向弱上拉禁止位(WEAKPUD,XBR2.7)写1实现。
当任何引脚被驱动为逻辑0时,弱上拉自动取消;即输出引脚不能与其自身的上拉部件冲突。
3、系统时钟源,每个MCU都有一个内部振荡器和一个外部振荡器驱动电路,每个驱动电路都能产生系统时钟。
MCU在复位后从内部振荡器启动。
内部振荡器可以被使能/禁止,其振荡频率可以用内部振荡器控制寄存器(OSCICN)设置。
当/RST引脚为低电平时,两个振荡器都被禁止。
MCU可以从内部振荡器或外部振荡器运行,可使用OSCICN寄存器中的CLKSL位在两个振荡器之间随意切换。
3.1外部晶体举例,如果使用晶体或陶瓷谐振器作为MCU的外部振荡器源,则电路应为图14.1中的选项1。
当外部晶体振荡器稳定运行时,晶体振荡器有效标志(OSCXCN寄存器中的XTLVLD)被硬件置1。
XTLVLD检测电路要求在使能振荡器工作和检测XTLVLD之间至少有1ms的启动时间。
建议的过程为:
1使能外部振荡器2等待至少1ms3查询XTLVLD=14将系统时钟切换到外部振荡器,4、系统复位,复位电路允许很容易地将控制器置于一个预定的缺省状态。
在进入复位状态时,将发生以下过程:
CIP-51停止程序执行特殊功能寄存器(SFR)被初始化为所定义的复位值外部端口引脚被置于一个已知状态中断和定时器被禁止。
所有的SFR都被初始化为预定值,SFR中各位的复位值在SFR的详细说明中定义。
I/O端口锁存器的复位值为0xFF(全部为逻辑1),内部弱上拉有效,使外部I/O引脚处于高电平状态。
注1:
外部I/O引脚并不立即进入高电平状态,而是在进入复位状态后的四个系统时钟之内。
注2:
在复位期间弱上拉是被禁止的,在器件退出复位状态时弱上拉被使能,在退出复位状态时,程序计数器(PC)被复位,MCU使用内部振荡器运行在2MHz作为默认的系统时钟。
看门狗定时器被使能,使用其最长的超时时间。
有7个能使MCU进入复位状态的复位源:
上电/掉电、外部/RST引脚、外部CNVSTR信号、软件命令、比较器0、时钟丢失检测器及看门狗定时器。
4.1上电复位,C8051F020有一个电源监视器,在上电期间该监视器使MCU保持在复位状态,直到VDD上升到超过VRST电平。
/RST引脚一直被置为低电平,直到100毫秒的VDD监视器超时时间结束,这100毫秒的等待时间是为了使VDD电源稳定。
在退出上电复位状态时,PORSF标志(RSTSRC.1)被硬件置为逻辑1,RSTSRC寄存器中的其它复位标志是不确定的。
4.2掉电复位,通过将MONEN引脚直接连VDD来使能VDD监视器。
这是MONEN引脚的推荐配置。
当发生掉电或因电源不稳定而导致VDD下降到低于VRST电平时,电源监视器将/RST引脚置于低电平并使CIP-51回到复位状态。
4.3外部复位,外部/RST引脚提供了使用外部电路强制MCU进入复位状态的手段。
在/RST引脚上加一个低电平有效信号将导致MCU进入复位状态。
最好能提供一个外部上拉和/或对/RST引脚去耦以防止强噪声引起复位。
在低有效的/RST信号撤出后,MCU将保持在复位状态至少12个时钟周期。
从外部复位状态退出后,PINRSF标志(RSTSRC.0)被置位。
4.4看门狗定时器复位,MCU内部有一个使用系统时钟的可编程看门狗定时器(WDT)。
当看门狗定时器溢出时,WDT将强制CPU进入复位状态。
为了防止复位,必须在溢出发生前由应用软件重新触发WDT。
如果系统出现了软件/硬件错误,使应用软件不能重新触发WDT,则WDT将溢出并产生一个复位,这可以防止系统失控。
什么是看门狗(watchdog)看门狗,又叫watchdogtimer,是一个定时器电路,一般有一个输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给WDT清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT定时超过,就回给出一个复位信号到MCU,是MCU复位.防止MCU死机.看门狗的作用就是防止程序发生死循环,或者说程序跑飞。
工作原理:
在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。
所以在使用有看门狗的芯片时要注意清看门狗。
硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位。
如果出现死循环,或者说PC指针不能回来,那么定时时间到后就会使单片机复位。
常用的WDT芯片如MAX813,5045,IMP813等软件看门狗:
编程方法。
通过程序对定时器进行设定,在从任何一种复位退出时,WDT被自动使能并使用缺省的最大时间间隔运行。
系统软件可以根据需要禁止WDT或将其锁定为运行状态以防止意外产生的禁止操作。
看门狗的功能可以通过看门狗定时器控制寄存器(WDTCN)控制。
使能/复位WDT,向WDTCN寄存器写入0xA5将使能并复位看门狗定时器。
用户的应用软件应周期性地向WDTCN写入0xA5,以防止看门狗定时器溢出。
每次系统复位都将使能并复位WDT。
禁止WDT,向WDTCN寄存器写入0xDE后再写入0xAD将禁止WDT。
下面的代码段说明禁止WDT的过程。
CLREA;禁止所有中断MOVWDTCN,#0DEh;禁止软件看门狗定时器MOVWDTCN,#0ADhSETBEA;重新允许中断,写0xDE和写0xAD必须发生在4个时钟周期之内,否则禁止操作将被忽略。
禁止WDT锁定,向WDTCN写入0xFF将使禁止功能无效。
一旦锁定,在下一次复位之前禁止操作将被忽略。
写0xFF并不使能或复位看门狗定时器。
设置WDT定时间隔,WDTCN.2:
0控制看门狗超时间隔。
超时间隔由下式给出:
5、JTAG接口的在系统调试,每个MCU内部都有JTAG和调试电路,可以通过JTAG接口使用安装在最终应用系统上的产品MCU进行非侵入式、全速、在系统调试。
SiliconLabs的调试系统支持观察和修改存储器和寄存器、断点和单步执行;不需要额外的目标RAM、程序存储器或通信通道。
在调试时,所有的模拟和数字外设都全功能正确运行(保持同步)。
当MCU因单步执行或执行到断点而停机时,WDT被禁止。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CF020 入门 指导