M0bi1e:13922805190(姚永平)Te1:0755-82948409fax:0755-82944243 系统工作时钟 TC1C5410AD系列是1T的8051单片机.系统时钟非空传统8051 现出厂标准配置是使用芯片内部的R/C振 单片机常温下频率是5M -6,9H2,因为随着温度 的变化 ,内部R/C振荡器的频率会有一些温,应认为是4z一-8。故内部R/C振荡器只适用于对时 钟频率要求不敏感的场合。 在对STCI2C5410D系列单片机进行ISP下载用户程序时,可以在选项中选择: “下次冷启动后时钟源为外部晶体或时钟” 这样下载完用户程序后,停电,再冷启动后单片机的工作时钟使用的就不是内部/C振荡器,而是外部品体振 荡后产生的高精度时钟了(接在XTA1/XTAL2管脚上),也可以直接从XTL1脚输入外部时钟,XTAL2脚浮空。 如果还要设置成使用内部R/C振荡器,在对STC12C5410AD系列单片机进行ISP下载用户程序时,可 以在洗项中洗择 “下次冷启动后时钟题为内部R/C振荡器” te2/步2:0pem11e/打开文件 40) W设五本和右方文件夹选”中的各西 t5/步5:D 10d/下载先点下致衣钮再上电复位-冷启动 Dovnload/下载 Stop/停上a-Dom1oad/重复下 的文件,方便调试使用 系统时钟分频寄存器,可将系统时钟分成较低频率工作 系统时钟分频及分频寄存器 76543 Reset value CLK DIV CTh Cloek Divder CLKS2 CLKSI CLKS0 xxxx,x000 如用户系统希望大幅降低功耗,还可对系统时钟进行分频。 CLKS0CP的实际工作时钟 系统时钟(外部时钟或内部R/心振荡时钟 系统时钟☑ 系统时钟/4 系统时许/8 0 系统时钟/16 系统时钟/32 系结对钟64 系袋时钟/128 左品科技:专业单片机/存储器供应商 www.MCU-Meaory.com STC12C5410AD系列1T8051单片机中文指南26
宏晶科技:www.MCU-Memory.com Mobile:13922805190(姚永平) Tel:0755-82948409 Fax: 0755-82944243 宏晶科技:专业单片机 / 存储器供应商 www.MCU-Memory.com STC12C5410AD 系列 1T 8051 单片机中文指南 26 系统工作时钟 STC12C5410AD 系列是 1T 的 8051 单片机,系统时钟兼容传统 8051。 现出厂标准配置是使用芯片内部的 R/C 振荡器,5V 单片机常温下频率是 5MHz - 6.9Hz,因为随着温度 的变化,内部 R/C 振荡器的频率会有一些温飘,应认为是 4MHz - 8MHz。故内部 R/C 振荡器只适用于对时 钟频率要求不敏感的场合。 在对 STC12C5410AD 系列单片机进行 ISP 下载用户程序时,可以在选项中选择: “下次冷启动后时钟源为外部晶体或时钟” 这样下载完用户程序后,停电,再冷启动后单片机的工作时钟使用的就不是内部R/C振荡器,而是外部晶体振 荡后产生的高精度时钟了(接在XTAL1/XTAL2管脚上),也可以直接从XTAL1脚输入外部时钟,XTAL2脚浮空。 如果还要设置成使用内部 R/C 振荡器,在对 STC12C5410AD 系列单片机进行 ISP 下载用户程序时,可 以在选项中选择: “下次冷启动后时钟源为内部 R/C 振荡器” Mnemonic Add Name 7 6 5 4 3 2 1 0 Reset value CLK_DIV C7h Clock Divder - - - - - CLKS2 CLKS1 CLKS0 xxxx,x000 系统时钟分频及分频寄存器 CLKS2 CLKS1 CLKS0 CPU的实际工作时钟 0 0 0 系统时钟(外部时钟或内部R/C振荡时钟) 0 0 1 系统时钟/2 0 1 0 系统时钟/4 0 1 1 系统时钟/8 1 0 0 系统时钟/16 1 0 1 系统时钟/32 1 1 0 系统时钟/64 1 1 1 系统时钟/128 如用户系统希望大幅降低功耗,还可对系统时钟进行分频。 系统时钟分频寄存器,可将系统时钟分成较低频率工作
宏品科技:m.MCU-eory.com Mbi1e:13922805190(水平)Tel:0755-82948409Fax:0755-8294243 1/0口结构 I/0口配置 STC12C5410AD系列单片机其所有1/0口均可由软件配置成4种工作类型之一,如下表所示。4种 类型分别为:准双向口(标准8051输出模式)、推挽输出、仅为输入(高阻)或开漏输出功能。每个口由 2个控制寄存器中的相应位控制每个引脚工作类型。STC12C5410D系列单片机上电复位后为准双向口(标 准8051输出模式)模式。2V以上时为高电平,0.8V以下时为低电平。 I/0口工作类型设定 P3口设定<P3.7,P3.6,P3.5,P3.4,P3.3,P3.2,P3.1,P3.0> P3M0【7:0】P3M1【7:0】 1口蓝见 准双向口(传统80511/0口模式)】 0 0 灌电流可达0mA拉电流为230A 1 尽量少用) 仅为输入(高用) 1 开漏(Open Drain),内部上拉电阻断开,要外加 P2口设定<P2.7,P2.6,P2.5,P2.4,P2.3,P2.2,P2.1,P2.0> P2M0【7:0】P2N1【7:0】 0口模重 0 0 向(传统8051 式), 30μA 160u 输出(上拉输出,可达20mA,尽量少用) 开漏Open Drain),内部上拉电阻断开,要外加 P1口设定<P1.7,P1.6,P1.5,P1.4,P1.3.P1.2,P1.1,P1.0> PIMI【7:】 0口模式p 如做AWD使用,需先将其设置成开漏或高阻输入) 0 0 出流可达20mA由流为230A 由于制造误差,实际为250uA~160uA 0 出(强 拉输出, (高阻 ,可选此模 开漏(Open Drain),如果该1O口需作为AWD使用,可选此模式 P0口设定<P0.7,P0.6,P0.5,P0.4,P0.3,P0.2,P0.1,P0.0> P0M07:0】P0N1【7:0】 0口模式 准双向口(传统8051V0口模式), 0 0 20mA,拉电流为230μA 推挽输出上拉输 250法达20A尽量少用) 仅为输入(高阻) 开漏(onen drain)。内部上拉电阻断开,要外加 举例: M0VP1M0.#11000000B MOVP1W1,#10100000B :P1.7为开漏,P1.6为高阻输入,P1.5为强推挽输出,P1.4/P1.3/P1.2/P1.1/P1.0为弱上拉 注意 虽然每个1/0口在弱上拉时都能承受20mA的灌电流(还是要加限流电阻,如1K,560Q等),在强推挽 输出时都能输出20mA的拉电流,但是整个芯片的工作电流推荐不要超过55mA。 密品科技:专业单片机/存储器供应商 www.MCU-Memory.con STC12C5410AD系列1T8051单片机中文指南27
宏晶科技:www.MCU-Memory.com Mobile:13922805190(姚永平) Tel:0755-82948409 Fax: 0755-82944243 宏晶科技:专业单片机 / 存储器供应商 www.MCU-Memory.com STC12C5410AD 系列 1T 8051 单片机中文指南 27 I/O 口结构 I/O 口配置 STC12C5410AD 系列单片机其所有 I/O 口均可由软件配置成 4 种工作类型之一,如下表所示。4 种 类型分别为:准双向口(标准 8051 输出模式)、推挽输出、仅为输入(高阻)或开漏输出功能。每个口由 2 个控制寄存器中的相应位控制每个引脚工作类型。STC12C5410AD 系列单片机上电复位后为准双向口(标 准 8051 输出模式)模式。2V 以上时为高电平,0.8V 以下时为低电平。 I/O 口工作类型设定 P 3 M 0【 7: 0】 P 3 M 1【 7: 0】 I/O 口模式 0 0 准双向口 (传 统 8051 I/O 口模式 ) , 灌电流可达 20mA , 拉电流为 230 µA , 由于制造误差 , 实际为 250 uA ~ 160 uA 0 1 推挽输出 ( 强上拉输出 , 可 达 20mA , 尽量少用 ) 1 0 仅为输入 ( 高 阻 ) 1 1 开 漏 (Open Drain), 内部上拉电阻断开 , 要外加 P1M0【7:0】 P1M1【7:0】 I/O 口模式(P1.x 如做A/D使用,需先将其设置成开漏或高阻输入) 0 0 准双向口(传统8051 I/O 口模式), 灌电流可达20mA , 拉电流为230µA , 由于制造误差,实际为250uA~160uA 0 1 推挽输出(强上拉输出,可达20mA,尽量少用) 1 0 仅为输入(高阻),如果该I/O口需作为A/D使用,可选此模式 1 1 开漏(Open Drain) ,如果该I/O口需作为A/D使用,可选此模式 P3 口设定 <P3.7,P3.6,P3.5,P3.4,P3.3,P3.2,P3.1,P3.0> P2 口设定 <P2.7,P2.6,P2.5,P2.4,P2.3,P2.2,P2.1,P2.0> P1 口设定 <P1.7,P1.6,P1.5,P1.4,P1.3,P1.2,P1.1,P1.0> P0 口设定 <P0.7,P0.6,P0.5,P0.4,P0.3,P0.2,P0.1,P0.0> 举例: MOV P1M0,#11000000B MOV P1M1,#10100000B ;P1.7 为开漏,P1.6 为高阻输入,P1.5 为强推挽输出,P1.4/P1.3/P1.2/P1.1/P1.0 为弱上拉 P2M0【 7: 0】 P2M1【 7: 0】 I/O 口模式 0 0 准双向口 (传 统 8051 I/O 口模式 ) , 灌电流可达 20mA , 拉电流为 230µA , 由于制造误差 , 实际为 250uA~ 160uA 0 1 推挽输出 ( 强上拉输出 , 可 达 20mA, 尽量少用 ) 1 0 仅为输入 ( 高 阻 ) 1 1 开 漏 (Open Drain), 内部上拉电阻断开 , 要外加 P 0 M 0【 7: 0】 P 0 M 1【 7: 0】 I/O 口模式 0 0 准双向口 (传 统 8051 I/O 口模式 ) , 灌电流可达 20mA , 拉电流为 230µA , 由于制造误差 , 实际为 250 uA ~ 160 uA 0 1 推挽输出 ( 强上拉输出 , 可 达 20mA , 尽量少用 ) 1 0 仅为输入 ( 高 阻 ) 1 1 开 漏 (Ope n Drain), 内部上拉电阻断开 , 要外加 注意: 虽然每个 I/O 口在弱上拉时都能承受 20mA 的灌电流(还是要加限流电阻,如 1K,560 Ω等),在强推挽 输出时都能输出 20mA 的拉电流,但是整个芯片的工作电流推荐不要超过 55mA
宏晶科技:mMU-Me0ry.c0mobi1e:1392805190(永平)Tel:0755-82948409fax:075-8294243 1.准双向口输出配置 准双向口输出类型可用作输出和输入功能而不需重新配置口线输出状态。这是因为当口线给出为] 时驱动能力很弱,允许外部装置将其拉低。当引脚输出为低时,它的驱动能力很强, 可吸收相当大的 不同的需 3个上拉品体管中,有1 上拉品休管称 为“弱上拉”,当口线寄存器为1且引脚本身也为1时打开 此上拉提供基本驱动电流使准双向口输出为1如果一个引脚输出为1而由外部装置下拉到低时,弱上拉关闭而 “极弱上拉”维持开状态,为了把这个引脚强拉为低,外部装置必须有足够的灌电流能力使引脚上的电压降到门 槛电压以下。 第2个上拉晶体管,称为“极弱上拉”,当口线锁存为1时打开。当引脚悬空时,这个极弱的上 拉源产生很弱的上拉电流将引脚上拉为高电平。 第3个上拉晶体管称为“强上拉”。当口线锁存器由0到1跳变时,这个上拉用来加快准双向口由逻 辑0到逻辑1转换。当发生这种情况时,强上拉打开约2个机器周期以使引脚能够迅速地上拉到高电平。 准双向口输出如下图所示 时 口镀存数粥 用低时 输入数据 STC12LE5410系列单片机为3V器件,如果用户在引脚加上5V电压,将会有电流从引脚流向VDD,这样 导致额外的功率消耗。因此,建议不要在准双向口模式中向3V单片机引脚施加5V电压,如使用的话,要加 限流电阻,或用二极管做输入隔离,或用三极管做输出隔离。 准双向口带有一个施密特触发输入以及一个干扰抑制电路。 2.推挽输出配置 挽输出配置的下拉结构与开漏输出以及准双向口的下拉结构相同,但当锁存器为1时提供持续的 强上拉。推挽模式一般用于需要更大驱动电流的情况。 推挽引脚配置如下图所示。 立电流最大可到20m,输出高时 电流也可承受201A,输出低时 输入数据 风 干扰滤波 宏品科技:专业单片机/存储器供应商wm.WCU-eaory.com STC12C5410AD系列1T8051单片机中文指南28
宏晶科技:www.MCU-Memory.com Mobile:13922805190(姚永平) Tel:0755-82948409 Fax: 0755-82944243 宏晶科技:专业单片机 / 存储器供应商 www.MCU-Memory.com STC12C5410AD 系列 1T 8051 单片机中文指南 28 1 .准双向口输出配置 准双向口输出类型可用作输出和输入功能而不需重新配置口线输出状态。这是因为当口线输出为 1 时驱动能力很弱,允许外部装置将其拉低。当引脚输出为低时,它的驱动能力很强,可吸收相当大的 电流。准双向口有 3 个上拉晶体管适应不同的需要。 在 3 个上拉晶体管中,有 1 个上拉晶体管称为“弱上拉”,当口线寄存器为 1 且引脚本身也为 1 时打开。 此上拉提供基本驱动电流使准双向口输出为1。如果一个引脚输出为1而由外部装置下拉到低时,弱上拉关闭而 “极弱上拉”维持开状态,为了把这个引脚强拉为低,外部装置必须有足够的灌电流能力使引脚上的电压降到门 槛电压以下。 第 2 个上拉晶体管,称为“极弱上拉”,当口线锁存为 1 时打开。当引脚悬空时,这个极弱的上 拉源产生很弱的上拉电流将引脚上拉为高电平。 第 3 个上拉晶体管称为“强上拉”。当口线锁存器由 0 到 1 跳变时,这个上拉用来加快准双向口由逻 辑 0 到逻辑 1 转换。当发生这种情况时,强上拉打开约 2 个机器周期以使引脚能够迅速地上拉到高电平。 准双向口输出如下图所示。 2 个 CPU 时钟延时 VDD VDD VDD 极弱 弱 强 端口 引脚 口锁存数据 输入数据 干扰滤波 STC12LE5410 系列单片机为 3 V 器件,如果用户在引脚加上 5 V 电压,将会有电流从引脚流向 VDD,这样 导致额外的功率消耗。因此,建议不要在准双向口模式中向 3V 单片机引脚施加 5V 电压,如使用的话,要加 限流电阻,或用二极管做输入隔离,或用三极管做输出隔离。 准双向口带有一个施密特触发输入以及一个干扰抑制电路。 30uA 200uA 灌电流最大 可到 20mA, 输出低时 2 . 推挽输出配置 推挽输出配置的下拉结构与开漏输出以及准双向口的下拉结构相同,但当锁存器为 1 时提供持续的 强上拉。推挽模式一般用于需要更大驱动电流的情况。 推挽引脚配置如下图所示。 拉电流最大可到20mA,输出高时 VDD 强 端口 引脚 口锁存数据 输入数据 干扰滤波 灌电流也可承受 20mA,输出低时 由于制造误差, 弱上拉能力为 250uA~160uA 2mA
宏品科技:m.CU-eory.com Mobi1e:13922805190(永平) Te1:0755-82948409 Fax:0755-82944243 3仅为输入(高阻)配置 输入口配置如下图所示 仅为输入(高阻)时,不提供吸入20A电流的能力 输入数据 输入口带有一个施密特触发输入以及一个干扰抑制电路 4.开漏输出配置 当口线锁存器为0时,开漏输出关闭所有上拉品体管。当作为一个逻辑物出时,这种配置方式必须有 外部上拉 一般通过电阻外接到VDD。这种方式的下拉与准双向口相同。输出口线配置如下图所示。 开厢端口带有一个施密特触发输入以及一个干扰抑制电路。 口存数据人 灌电流也可承受20mA,输出低时 输入数据 一种典型三极管控制电路 10a.3-10) 管运1/o口☒ 15K(3.3R15 如果用弱上拉控制,建议加上拉电阻R1(3.3K一10K),如果不加上拉电阻R1(3.3K一10K),建议 R2的值在15K以上,或用强推挽输出 宏品科技:专业单片机/存储器供应商 www.MCU-Memory.con STC12C5410AD系列1T8051单片机中文指南29
宏晶科技:www.MCU-Memory.com Mobile:13922805190(姚永平) Tel:0755-82948409 Fax: 0755-82944243 宏晶科技:专业单片机 / 存储器供应商 www.MCU-Memory.com STC12C5410AD 系列 1T 8051 单片机中文指南 29 3 . 仅为输入(高阻)配置 输入口配置如下图所示。 输入口带有一个施密特触发输入以及一个干扰抑制电路。 干扰滤波 输入数据 端口 引脚 口锁存数据 端口 引脚 干扰滤波 输入数据 4 .开漏输出配置 当口线锁存器为 0 时,开漏输出关闭所有上拉晶体管。当作为一个逻辑输出时,这种配置方式必须有 外部上拉,一般通过电阻外接到 VDD 。这种方式的下拉与准双向口相同。输出口线配置如下图所示。 开漏端口带有一个施密特触发输入以及一个干扰抑制电路。 灌电流也可承受 20mA,输出低时 仅为输入(高阻)时,不提供吸入 20mA 电流的能力 一种典型三极管控制电路 R1 10K(3.3K~10K) R2 15K(3.3K~15K) 普通 I/O 口 R3 如果用弱上拉控制,建议加上拉电阻 R 1 (3.3K ~10K ),如果不加上拉电阻 R 1 (3.3K ~10K ),建议 R2 的值在 15K 以上,或用强推挽输出
宏品科技:m.MCU-Meory.com Mobi1e:1392805190(姚永平)Tel:0755-82948409fax:0755-82944243 看门狗应用及测试程序 话用型号:STC12C5410AD系列 Mneronic Add Name 7 6 5 4 3 2 1 0 Reset Value WDT_CNTREIh Control register Watch-Dog-Timer WDT_FLAGEN_WDT CLR_WDT IDLE_WDT PS2 PSI PSOxx00,0000 Symbol符号Function功能 WDT FLAG When WDT overflows,this bit is set.It can be cleared by software 看门狗溢出标志位,当溢出时,该位由硬件置1,可用软件将其清0。 EN_WDT Enable WDT bit.When set.WDT is started 看门狗允许位,当设置为“1”时,看门狗启动。 CLR_WDT clear bit.When set,WDT will recount. Hardware will automatically clear this bit 看门狗清“0”位,当设为“1”时,看门狗将重新计数。硬件将自动清“0”此位。 IDLE_WDT When set,WDT is enabled in IDLE mode.When clear,WDT is disabled in IDLE mode 看门狗“ILE”模式位,当设置为“1”时,看门狗定时器在“空闲模式”计数 当清“0”该位时,看门狗定时器在“空闲模式”时不计数 PS2,PS1,PSO Pre-scale value of Watchdog timer is shown as the bellowed table: 看门狗定时器预分频值,如下表所示 S2 PS1 PSO 2 39.3mg 786m 1573m9 16 3146n9 39 69g1a3 64 1958 199 2.5s 11 256 The NDT per. by the 11 ng equation看门狗溢出时间计算 看门狗溢出时间=(N x Pre-scale x32768)/0 scillator frequency 设时钟为12MHz: 看门狗溢出时间=(12xPre-sca1ex32768)/12000000=Pre-sca1ex393216/12000000 服分1eD1P8:io812a 655s 0 31.0S 262.13 0 32 1.04855 64 2.09718 宏晶科技:专业单片机/存储器供应商 www.MCU-Meaory.con STC12C5410AD系列1T8051单片机中文指南30
宏晶科技:www.MCU-Memory.com Mobile:13922805190(姚永平) Tel:0755-82948409 Fax: 0755-82944243 宏晶科技:专业单片机 / 存储器供应商 www.MCU-Memory.com STC12C5410AD 系列 1T 8051 单片机中文指南 30 适用型号: STC12C5410AD 系列 Symbol 符号 Function 功能 WDT_FLAG When WDT overflows, this bit is set. It can be cleared by software. 看门狗溢出标志位,当溢出时,该位由硬件置 1,可用软件将其清 0。 EN_WDT Enable WDT bit. When set, WDT is started 看门狗允许位, 当设置为“1”时,看门狗启动。 CLR_WDT WDT clear bit. When set, WDT will recount. Hardware will automatically clear this bit. 看门狗清“0”位,当设为“1”时,看门狗将重新计数。硬件将自动清“0”此位。 IDLE_WDT When set, WDT is enabled in IDLE mode. When clear, WDT is disabled in IDLE mode 看门狗“IDLE”模式位,当设置为“1”时,看门狗定时器在“空闲模式”计数 当清“0”该位时, 看门狗定时器在“空闲模式”时不计数 PS2, PS1, PS0 Pre-scale value of Watchdog timer is shown as the bellowed table: 看门狗定时器预分频值,如下表所示 Mnemonic Add Name 7 6 5 4 3 2 1 0 Reset Value WDT_CONTR E1h Watch-Dog-Timer Control register WDT_FLAG - EN_WDT CLR_WDT IDLE_WDT PS2 PS1 PS0 xx00,0000 PS2 PS1 PS0 Pre-scale 预分频 WDT Period @20MHz 0 0 0 2 39.3 mS 0 0 1 4 78.6 mS 0 1 0 8 157.3 mS 0 1 1 16 314.6 mS 1 0 0 32 629.1 mS 1 0 1 64 1.25S 1 1 0 128 2.5S 1 1 1 256 5S PS2 PS1 PS0 Pre-scale 预分频 WDT Period @12MHz 0 0 0 2 65.5 mS 0 0 1 4 131.0 mS 0 1 0 8 262.1 mS 0 1 1 16 524.2 mS 1 0 0 32 1.0485S 1 0 1 64 2.0971S 1 1 0 128 4.1943S 1 1 1 256 8.3886S 看门狗应用及测试程序 The WDT period is determined by the following equation 看门狗溢出时间计算 看门狗溢出时间 =( N x Pre-scale x 32768) / Oscillator frequency 设时钟为 12MHz: 看门狗溢出时间 = ( 12 x Pre-scale x 32768) / 12000000 = Pre-scale x 393216 / 12000000