当前位置:文档之家› STM32 RCC分析与使用

STM32 RCC分析与使用

STM32 RCC分析与使用
STM32 RCC分析与使用

STM32RCC分析与使用

由于STM32系列微控制器系统比较复杂,时钟系统也相对于普通MCU更多样化,这加大了我们设计程序和学习的难度。比如普通的MCU延时程序,我们直接可以使用“for循环”或者“while”来轻易实现;而在Cortex核的STM32系列微控制器上则不行:因为无法判断当时的时钟频率,做不到精确的延时。如果详细地了解其时钟系统后,我们知道可以使用SYSCLK来实现精确延时。RCC的学习可以说没有实验,但所有的模块都会用到时钟,我们进行I/O口的初始化,配置函数中第一行代码一般都是对时钟的初始化,足可见其重要性。一般而言,要是真正理解了STM32中所有的时钟,学习其他外设都是易如反掌了.

实验要求

以SystemInit()函数为突破口的情况下,深入了解STM32时钟的初始化流程。

实验目的

学习STM32系列的时钟设置.

硬件分析

时钟树

在STM32系统中,共有五个时钟源,分别为HSE、HSI、LSE、LSI、PLL。由图可以看出,HSI和LSI为片内RC振荡器,HSI为8MHz而LSI为32KHz;HSE和LSE为外部时钟源;PLL则需要HSE和HSI来提供时钟。

(1)HSE:高速外部时钟信号

可以通过外部直接提供时钟,从OSC_IN输入,或使用外部陶瓷/晶体谐振器。外部直接提供的时钟可以达到25MHz,用户可以通过设置时钟信号控制寄存器RCC_CR中的HSEBYP和HSEON位来选择该模式。此时OSC_OUT引脚为高阻状态。

(2)HSI:高速内部时钟信号

该时钟通过8MHz的内部RC振荡器产生,并且可被直接用做系统时钟,或者经过2分频后作为PLL的输入。它比HSE有更快的启动时间,但频率精确度没有外部晶体振荡器高。而且根据制造工艺的不同,不同芯片之间的RC振荡器频率也是不同。出厂时,每个设备频率已被校准至1%(25摄氏度)。出厂校验值被装载到时钟控制寄存器RCC_CR 的HSICAL[7:0]位。在不同的电压或者温度下,可以通过RCC_CR中的HSITRIM[4:0]位来调整HSI的频率。并可以通过时钟控

制寄存器RCC_CR的HISON位打开或者禁用。

(3)LSE:低速外部时钟信号

振荡器是一个32.768KHz的低速外部晶体/陶瓷振荡器,它可以向RTC提供高精准时钟。

LSI:低速内部时钟信号振荡频率为32KHz左右(30-60KHz之间)。

(5)PLL:锁相环倍频输出

其时钟输入源可选择为HSI/2、HSE或者HSE/2。倍频可选择为2~16倍,但是其输出频率最大不得超过72MHz。

系统时钟(SYSCLK)

系统时钟SYSCLK是供STM32中绝大部分部件工作的时钟源。系统时钟可选择为PLL输出、HSI或者HSE。HSI与HSE 可以通过分频加至PLLSRC,并由PLLMUL进行倍频后经选择直接充当SYSCLK。PLLCLK经1.5分频或1分频后为USB 串行接口引擎提供一个48MHz的振荡频率。即当需要使用USB时,PLL必须使能,并且时钟频率配置为48MHz或者72MHz。但这并不意味着USB模块工作时需要48MHz,48MHz仅提供给USB串行接口引擎(SIE),而USB模块工作是由APBH1提供的。

系统时钟最大频率为72MHz,它通过AHB分频器分频后送给各模块使用,AHB分频器可选择1、2、4、8、16、64、128、256、512分频。

AHB分频器输出的时钟送给5大模块使用:

(1)送给AHB总线、内核、内存和DMA使用的HCLK时钟。

(2)通过8分频后送给Cortex的系统定时器时钟。

(3)直接送给Cortex的空闲运行时钟FCLK。

(4)送给APB1分频器。APB1分频器可选择为1、2、4、8、16分频,其输出中一路供APB1外设使用(PCLK1,最大频率36MHz);另一路送给定时器(Timer)2、3、4的倍频器使用(TIMXCLK),该倍频器可选择1或者2倍频,输出供定时器2、3、4使用。

(5)送给APB2分频器。APB2分频器可供选择为1、2、4、8、16分频,其输出一路供APB2外设使用(PCLK2,最大频率72MHz);一路送给定时器(Timer)1的倍频器使用(TIM1CLK),该倍频器可选择1或者2倍频,输出供定时器1使用;另外,APB2分频器还有一路输出供ADC分频器使用,分频后送给ADC模块使用,ADC分频器可选择为2、4、6、8分频。

时钟安全系统(CSS)

图中在SYSCLK选择端下方有个CSS模块,CSS是一个时钟安全系统,用来保证系统时钟在HSE失效时能继续工作。时钟检测器在HSE振荡器启动延时后被使能,并当振荡器停止时禁用。如果在HSE振荡器时钟上检测到一个失效,这个振荡器将被自动禁用;一个时钟失效事件打断TIM1高级控制定时器的输入,并且产生一个中断来通知软件该次失效,使得MCU能够进行补救措施。

系统时钟输出(MCO)

图的左下方为系统时钟输出(MCO)模块。使得时钟能够输出到外部MCO引脚,相关的GPIO端口的配置寄存器必须被编程为复用功能模式。下面4个时钟的任意一个可被选作MCO时钟:

(1)SYSCLK

(2)HIS

(3)HSE

(4)2分频的PLLCLK

可通过时钟配置寄存器RCC_CFGR的MCO[2:0]位进行选择。

几点说明:

(1)在以上的时钟输出中,有很多是带使能控制端的(如图中的Peripheral Clock Enable),例如AHB总线时钟、内核时钟、各种APB1外设、APB2外设等等。当需要使用某模块时,记得一定要先使能对应的时钟。

(2)需要注意的是定时器的倍频器,当APB的分频为1时,它的倍频值为1,否则它的倍频值就为2。

(3)连接在APB1(低速外设)上的设备有:电源接口、备份接口、CAN、USB、I2C1、I2C2、UART2、UART3、SPI2、窗口看门狗、Timer2、Timer3、Timer4。

(4)连接在APB2(高速外设)上的设备有:UART1、SPI1、Timer1、ADC1、ADC2、所有普通IO口(PA~PE)、第二功能IO口。

(5)如果独立的看门狗(IWDG)被硬件选项或者软件访问启动了,LSI振荡器将被强制打开,并且不能被禁用,在LSI振荡器开始工作后,它的时钟被提供给IWDG。

复位

STM32F10xxx支持三种复位形式,分别为系统复位、上电复位和备份区域复位。

系统复位

除了时钟控制器的RCC_CSR寄存器中的复位标志位和备份区域中的寄存器(见上图)以外,系统复位将复位所有寄存器至它们的复位状态。

当发生以下任一事件时,产生一个系统复位:

1.NRST引脚上的低电平(外部复位)

2.窗口看门狗计数终止(WWDG复位)

3.独立看门狗计数终止(IWDG复位)

4.软件复位(SW复位)

5.低功耗管理复位

可通过查看RCC_CSR控制状态寄存器中的复位状态标志位识别复位事件来源。

软件复位

通过将Cortex?M3中断应用和复位控制寄存器中的SYSRESETREQ位置’1’,可实现软件复位。请参考Cortex?M3技术参考手册获得进一步信息。

低功耗管理复位

在以下两种情况下可产生低功耗管理复位:

在进入待机模式时产生低功耗管理复位:

通过将用户选择字节中的nRST_STDBY位置’1’将使能该复位。这时,即使执行了进入待机模式的过程,系统将被复位而不是进入待机模式。

在进入停止模式时产生低功耗管理复位:

通过将用户选择字节中的nRST_STOP位置’1’将使能该复位。这时,即使执行了进入停机模式的过程,系统将被复位而不是进入停机模式。

电源复位

当以下事件中之一发生时,产生电源复位:

上电/掉电复位(POR/PDR复位)

从待机模式中返回电源复位将复位除了备份区域外的所有寄存器。

复位电路如下所示:

图中复位源将最终作用于RESET引脚,并在复位过程中保持低电平。复位入口矢量被固定在地址0x0000_0004。

芯片内部的复位信号会在NRST引脚上输出,脉冲发生器保证每一个(外部或内部)复位源都能有至少20μs的脉冲延时;当NRST引脚被拉低产生外部复位时,它将产生复位脉冲。

详细分析

时钟

时钟详细分析

三种不同的时钟源可被用来驱动系统时钟(SYSCLK):

●HSI振荡器时钟

●HSE振荡器时钟

●PLL时钟

这些设备有以下2种二级时钟源:

●40kHz低速内部RC,可以用于驱动独立看门狗和通过程序选择驱动RTC。RTC用于从停机/待机模式下自动唤醒系统。

●32.768kHz低速外部晶体也可用来通过程序选择驱动RTC(RTCCLK)。当不被使用时,任一个时钟源都可被独立地启动或关闭,由此优化系统功耗。

HSE时钟

高速外部时钟信号(HSE)由以下两种时钟源产生:

●HSE外部晶体/陶瓷谐振器

●HSE用户外部时钟

为了减少时钟输出的失真和缩短启动稳定时间,晶体/陶瓷谐振器和负载电容器必须尽可能地靠近振荡器引脚。负载电容值必须根据所选择的振荡器来调整。

上图为外部时钟源的硬件配置

在外部时钟源(HSE旁路)这个模式下,必须提供外部时钟。它的频率最高可达25MHz。用户可通过设置在时钟控制寄存器中的HSEBYP和HSEON位来选择这一模式。外部时钟信号(50%占空比的方波、正弦波或三角波)必须连到SOC_IN 引脚,同时保证OSC_OUT引脚悬空。具体见上图

上图为晶体/陶瓷谐振器的硬件配置

在外部晶体/陶瓷谐振器(HSE晶体)这个模式下4~16Mz外部振荡器可为系统提供更为精确的主时钟。相关的硬件配置可参考上图,进一步信息可参考数据手册的电气特性部分。在时钟控制寄存器RCC_CR中的HSERDY位用来指示高速外部振荡器是否稳定。在启动时,直到这一位被硬件置’1’,时钟才被释放出来。如果在时钟中断寄存器RCC_CIR 中允许产生中断,将会产生相应中断。HSE晶体可以通过设置时钟控制寄存器里RCC_CR中的HSEON位被启动和关闭。

HSI时钟

HSI时钟信号由内部8MHz的RC振荡器产生,可直接作为系统时钟或在2分频后作为PLL输入。HSI RC振荡器能够在不需要任何外部器件的条件下提供系统时钟。它的启动时间比HSE晶体振荡器短。然而,即使在校准之后它的时钟频率精度仍较差。

校准

制造工艺决定了不同芯片的RC振荡器频率会不同,这就是为什么每个芯片的HSI时钟频率在出厂前已经被ST校准到1%(25°C)的原因。系统复位时,工厂校准值被装载到时钟控制寄存器的HSICAL[7:0]位。

如果用户的应用基于不同的电压或环境温度,这将会影响RC振荡器的精度。可以通过时钟控制寄存器里的HSITRIM[4:0]位来调整HSI频率。

时钟控制寄存器中的HSIRDY位用来指示HSI RC振荡器是否稳定。在时钟启动过程中,直到这一位被硬件置’1’,HSI RC输出时钟才被释放。HSI RC可由时钟控制寄存器中的HSION位来启动和关闭。

如果HSE晶体振荡器失效,HSI时钟会被作为备用时钟源。

PLL

内部PLL可以用来倍频HSI RC的输出时钟或HSE晶体输出时钟。参考时钟树图和时钟控制寄存器。PLL的设置(选择HIS 振荡器除2或HSE振荡器为PLL的输入时钟,和选择倍频因子)必须在其被激活前完成。一旦PLL被激活,这些参数就不能被改动。

如果PLL中断在时钟中断寄存器里被允许,当PLL准备就绪时,可产生中断申请。

如果需要在应用中使用USB接口,PLL必须被设置为输出48或72MHZ时钟,用于提供48MHz的USBCLK时钟。

LSE时钟

LSE晶体是一个32.768kHz的低速外部晶体或陶瓷谐振器。它为实时时钟或者其他定时功能提供一个低功耗且精确的时钟源。

LSE晶体通过在备份域控制寄存器(RCC_BDCR)里的LSEON位启动和关闭。

在备份域控制寄存器(RCC_BDCR)里的LSERDY指示LSE晶体振荡是否稳定。在启动阶段,直到这个位被硬件置’1’后,LSE时钟信号才被释放出来。如果在时钟中断寄存器里被允许,可产生中断申请。

外部时钟源(LSE旁路)在这个模式里必须提供一个32.768kHz频率的外部时钟源。你可以通过设置在备份域控制寄存器(RCC_BDCR)里的LSEBYP和LSEON位来选择这个模式。具有50%占空比的外部时钟信号(方波、正弦波或三角波)必须连到OSC32_IN引脚,同时保证OSC32_OUT引脚悬空.

LSI时钟

LSI RC担当一个低功耗时钟源的角色,它可以在停机和待机模式下保持运行,为独立看门狗和自动唤醒单元提供时钟。LSI时钟频率大约40kHz(在30kHz和60kHz之间)。进一步信息请参考数据手册中有关电气特性部分。

LSI RC可以通过控制/状态寄存器(RCC_CSR)里的LSION位来启动或关闭。

在控制/状态寄存器(RCC_CSR)里的LSIRDY位指示低速内部振荡器是否稳定。在启动阶段,直到这个位被硬件设置为’1’后,此时钟才被释放。如果在时钟中断寄存器(RCC_CIR)里被允许,将产生LSI中断申请。

LSI校准

可以通过校准内部低速振荡器LSI来补偿其频率偏移,从而获得精度可接受的RTC时间基数,以及独立看门狗(IWDG)的超时时间(当这些外设以LSI为时钟源)。

校准可以通过使用TIM5的输入时钟(TIM5_CLK)测量LSI时钟频率实现。测量以HSE的精度为保证,软件可以通过调整RTC的20位预分频器来获得精确的RTC时钟基数,以及通过计算得到精确的独立看门狗(IWDG)的超时时间。

LSI校准步骤如下:

1.打开TIM5,设置通道4为输入捕获模式;

2.设置AFIO_MAPR的TIM5_CH4_IREMAP位为’1’,在内部把LSI连接到TIM5的通道4;

3.通过TIM5的捕获/比较4事件或者中断来测量LSI时钟频率;

4.根据测量结果和期望的RTC时间基数和独立看门狗的超时时间,设置20位预分频器。

系统时钟(SYSCLK)选择

系统复位后,HSI振荡器被选为系统时钟。当时钟源被直接或通过PLL间接作为系统时钟时,它将不能被停止。

只有当目标时钟源准备就绪了(经过启动稳定阶段的延迟或PLL稳定),从一个时钟源到另一个时钟源的切换才会发生。在被选择时钟源没有就绪时,系统时钟的切换不会发生。直至目标时钟源就绪,才发生切换。在时钟控制寄存器(RCC_CR)里的状态位指示哪个时钟已经准备好了,哪个时钟目前被用作系统时钟。

时钟安全系统(CSS)

在实际应用中,经常出现由于晶体振荡器在运行中失去作用,造成微处理器的时钟源丢失,从而出现死机的现象,导致系统出错。

严重时,由于系统的死机造成监控失效,导致无法挽回的损失!

STM32作为一个可靠稳定的微处理器,但是不能排除由于某些外界特殊因素可能造成STM32的外部振荡器失效,STM32内部的时钟安全系统(CCS)正是为解决出现这种问题而设计的。一旦外部晶体振荡器(HSE)失效,CCS系统将STM32

的系统时钟源切换到一个稳定的时钟源,以保证STM32能够继续运行,并进行相应的保护操作。

时钟安全系统可以通过软件被激活。一旦其被激活,时钟监测器将在HSE振荡器启动延迟后被使能,并在HSE时钟关闭后关闭。

如果HSE时钟发生故障,HSE振荡器被自动关闭,时钟失效事件将被送到高级定时器(TIM1和TIM8)的刹车输入端,并产生时钟安全中断CSSI,允许软件完成营救操作。此CSSI中断连接到Cortex?M3的NMI中断(不可屏蔽中断)。

注意:一旦CSS被激活,并且HSE时钟出现故障,CSS中断就产生,并且NMI也自动产生。NMI将被不断执行,直到CSS中断挂起位被清除。因此,在NMI的处理程序中必须通过设置时钟中断寄存器(RCC_CIR)里的CSSC位来清除CSS 中断。

如果HSE振荡器被直接或间接地作为系统时钟,(间接的意思是:它被作为PLL输入时钟,并且PLL时钟被作为系统时钟),时钟故障将导致系统时钟自动切换到HSI振荡器,同时外部HSE振荡器被关闭。在时钟失效时,如果HSE振荡器时钟(被分频或未被分频)是用作系统时钟的PLL的输入时钟,PLL也将被关闭。

应用举例

启动时钟安全系统CSS:

RCC_ClockSecuritySystemCmd(ENABLE);//NMI中断是不可屏蔽的!

外部振荡器实现时,产生中断,对应的中断程序:

void NMIException(void)

{

if(RCC_GetITStatus(RCC_IT_CSS)!=RESET)

{//HSE、PLL已被禁止(但是PLL设置未变)

……//客户添加相应的系统保护代码处

//下面为HSE恢复后的预设置代码

RCC_HSEConfig(RCC_HSE_ON);//使能HSE

RCC_ITConfig(RCC_IT_HSERDY,ENABLE);//使能HSE就绪中断

RCC_ITConfig(RCC_IT_PLLRDY,ENABLE);//使能PLL就绪中断

RCC_ClearITPendingBit(RCC_IT_CSS);//清除时钟安全系统中断的挂起位

//至此,一旦HSE时钟恢复,将发生HSERDY中断,在RCC中断处理程序里,系统时钟可以设置到以前的状态}

}

在RCC的中断处理程序中,再对HSE和PLL进行相应的处理

RTC时钟

通过设置备份域控制寄存器(RCC_BDCR)里的RTCSEL[1:0]位,RTCCLK时钟源可以由HSE/128、LSE或LSI时钟提供。除非备份域复位,此选择不能被改变。

LSE时钟在备份域里,但HSE和LSI时钟不是。因此:

●如果LSE被选为RTC时钟:

─只要VBAT维持供电,尽管VDD供电被切断,RTC仍继续工作。

●如果LSI被选为自动唤醒单元(AWU)时钟:

─如果VDD供电被切断,AWU状态不能被保证。有关LSI校准.

●如果HSE时钟128分频后作为RTC时钟:

─如果VDD供电被切断或内部电压调压器被关闭(1.8V域的供电被切断),则RTC状态不确定。

─必须设置电源控制寄存器(见4.4.1节)的DPB位(取消后备区域的写保护)为’1’。

看门狗时钟

如果独立看门狗已经由硬件选项或软件启动,LSI振荡器将被强制在打开状态,并且不能被关闭。在LSI振荡器稳定后,时钟供应给IWDG。

时钟输出

在实际应用中,一些用户常常遇到某些外设需要对其输入外部时钟或方波,针对这一需求,常用的方法是使用软件模拟,或使用有源晶振为其提供时钟或方波。

STM32的PA.8引脚具有复用功能——时钟输出(MCO),该功能能将STM32内部的时钟通过PA.8输出,这解决客户的问题,同时降低了硬件成本。

微控制器允许输出时钟信号到外部MCO引脚。

相应的GPIO端口寄存器必须被配置为相应功能。以下四个时钟信号可被选作MCO时钟:

●SYSCLK

●HSI

●HSE

●除2的PLL时钟时钟的选择由时钟配置寄存器(RCC_CFGR)中的MCO[2:0]位控制。

由于STM32GPIO输出管脚的最大响应频率为50MHz,如果输出频率超过50MHz,则输出的波形会失真。

应用举例

设置PA.8为复用Push-Pull模式。

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8;

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;

GPIO_Init(GPIOA,&GPIO_InitStructure);

输出时钟:时钟的选择由时钟配置寄存器(RCC_CFGR)中的MCO[2:0]位控制。

RCC_MCOConfig(RCC_MCO);

参数RCC_MCO为要输出的内部时钟:

RCC_MCO_NoClock---无时钟输出

RCC_MCO_SYSCLK---输出系统时钟(SysCLK)

RCC_MCO_HSI---输出内部高速8MHz的RC振荡器的时钟(HSI)

RCC_MCO_HSE---输出高速外部时钟信号(HSE)

RCC_MCO_PLLCLK_Div2---输出PLL倍频后的二分频时钟(PLLCLK/2)

分析

寄存器分析

RCC寄存器

时钟控制寄存器(RCC_CR)

偏移地址

偏移地址::0x00

复位值::0x0000XX83X代表未定义

复位值

位31:26保留,始终读为0。

位25PLLRDY:PLL时钟就绪标志(PLL clock ready flag)

PLL锁定后由硬件置’1’。

0:PLL未锁定;

1:PLL锁定。

位24PLLON:PLL使能(PLL enable)

由软件置’1’或清零。当进入待机和停止模式时,该位由硬件清零。当PLL时钟被用作或被选择将要作为系统时钟时,该位不能被清零。

0:PLL关闭;

1:PLL使能。

位23:20保留,始终读为0。

位19CSSON:时钟安全系统使能(Clock security system enable)

由软件置’1’或清零以使能时钟监测器。

0:时钟监测器关闭;

1:如果外部4-16MHz振荡器就绪,时钟监测器开启。

位18HSEBYP:外部高速时钟旁路(External high-speed clock bypass)

在调试模式下由软件置’1’或清零来旁路外部晶体振荡器。只有在外部4-16MHz振荡器关闭的情况下,才能写入该位。

0:外部4-16MHz振荡器没有旁路;

1:外部4-16MHz外部晶体振荡器被旁路。

位17HSERDY:外部高速时钟就绪标志(External high-speed clock ready flag)

由硬件置’1’来指示外部4-16MHz振荡器已经稳定。在HSEON位清零后,该位需要6个外部4-25MHz振荡器周期清零。

0:外部4-16MHz振荡器没有就绪;

1:外部4-16MHz振荡器就绪。

位16HSEON:外部高速时钟使能(External high-speed clock enable)

由软件置’1’或清零。当进入待机和停止模式时,该位由硬件清零,关闭4-16MHz外部振荡器。当外部4-16MHz 振荡器被用作或被选择将要作为系统时钟时,该位不能被清零。

0:HSE振荡器关闭;

1:HSE振荡器开启。

位15:8HSICAL[7:0]:内部高速时钟校准(Internal high-speed clock calibration)

在系统启动时,这些位被自动初始化

位7:3HSITRIM[4:0]:内部高速时钟调整(Internal high-speed clock trimming)

由软件写入来调整内部高速时钟,它们被叠加在HSICAL[5:0]数值上。

这些位在HSICAL[7:0]的基础上,让用户可以输入一个调整数值,根据电压和温度的变化调整内部HSI RC振荡器的频率。

默认数值为16,可以把HSI调整到8MHz±1%;每步HSICAL的变化调整约40kHz。

位2保留,始终读为0。

位1HSIRDY:内部高速时钟就绪标志(Internal high-speed clock ready flag)

由硬件置’1’来指示内部8MHz振荡器已经稳定。在HSION位清零后,该位需要6个内部8MHz振荡器周期清零。

0:内部8MHz振荡器没有就绪;

1:内部8MHz振荡器就绪。

位0HSION:内部高速时钟使能(Internal high-speed clock enable)

由软件置’1’或清零。当从待机和停止模式返回或用作系统时钟的外部4-16MHz振荡器发生故障时,该位由硬件置’1’来启动内部8MHz的RC振荡器。当内部8MHz振荡器被直接或间接地用作或被选择将要作为系统时钟时,该位不能被清零。

0:内部8MHz振荡器关闭;

1:内部8MHz振荡器开启。

时钟配置寄存器(RCC_CFGR)

偏移地址::0x04

偏移地址

复位值

复位值::0x00000000

访问::0到2个等待周期,字,半字和字节访问

访问

只有当访问发生在时钟切换时,才会插入11或2个等待周期。

只有当访问发生在时钟切换时,才会插入

位31:27保留,始终读为0。

位26:24MCO:微控制器时钟输出(Microcontroller clock output)

由软件置’1’或清零。

0xx:没有时钟输出;

100:系统时钟(SYSCLK)输出;

101:内部RC振荡器时钟(HSI)输出;

110:外部振荡器时钟(HSE)输出;

111:PLL时钟2分频后输出。

注意:-该时钟输出在启动和切换MCO时钟源时可能会被截断。-在系统时钟作为输出至MCO引脚时,请保证输出时钟频率不超过50MHz(I/O口最高频率)。

位22USBPRE:USB预分频(USB prescaler)

由软件置’1’或清’0’来产生48MHz的USB时钟。在RCC_APB1ENR寄存器中使能USB时钟之前,必须保证该位已经有效。如果USB时钟被使能,该位不能被清零。

0:PLL时钟1.5倍分频作为USB时钟

1:PLL时钟直接作为USB时钟

位21:18PLLMUL:PLL倍频系数(PLL multiplication factor)

由软件设置来确定PLL倍频系数。只有在PLL关闭的情况下才可被写入。

注意:PLL的输出频率不能超过72MHz

0000:PLL2倍频输出1000:PLL10倍频输出

0001:PLL3倍频输出1001:PLL11倍频输出

0010:PLL4倍频输出1010:PLL12倍频输出

0011:PLL5倍频输出1011:PLL13倍频输出

0100:PLL6倍频输出1100:PLL14倍频输出

0101:PLL7倍频输出1101:PLL15倍频输出

0110:PLL8倍频输出1110:PLL16倍频输出

0111:PLL9倍频输出1111:PLL16倍频输出

位17PLLXTPRE:HSE分频器作为PLL输入(HSE divider for PLL entry)

由软件置’1’或清’0’来分频HSE后作为PLL输入时钟。只能在关闭PLL时才能写入此位。

0:HSE不分频

1:HSE2分频

位16PLLSRC:PLL输入时钟源(PLL entry clock source)

由软件置’1’或清’0’来选择PLL输入时钟源。只能在关闭PLL时才能写入此位。

0:HSI振荡器时钟经2分频后作为PLL输入时钟

1:HSE时钟作为PLL输入时钟。

位15:14ADCPRE[1:0]:ADC预分频(ADC prescaler)

由软件置’1’或清’0’来确定ADC时钟频率

00:PCLK22分频后作为ADC时钟

01:PCLK24分频后作为ADC时钟

10:PCLK26分频后作为ADC时钟

11:PCLK28分频后作为ADC时钟

位13:11PPRE2[2:0]:高速APB预分频(APB2)(APB high-speed prescaler(APB2))

由软件置’1’或清’0’来控制高速APB2时钟(PCLK2)的预分频系数。

0xx:HCLK不分频

100:HCLK2分频

101:HCLK4分频

110:HCLK8分频

111:HCLK16分频

位10:8PPRE1[2:0]:低速APB预分频(APB1)(APB low-speed prescaler(APB1))

由软件置’1’或清’0’来控制低速APB1时钟(PCLK1)的预分频系数。

警告:软件必须保证APB1时钟频率不超过36MHz。

0xx:HCLK不分频

100:HCLK2分频

101:HCLK4分频

110:HCLK8分频

111:HCLK16分频

位7:4HPRE[3:0]:AHB预分频(AHB Prescaler)

由软件置’1’或清’0’来控制AHB时钟的预分频系数。

0xxx:SYSCLK不分频

1000:SYSCLK2分频

1001:SYSCLK4分频

1010:SYSCLK8分频

1101:SYSCLK16分频

1100:SYSCLK64分频

1101:SYSCLK128分频

1110:SYSCLK256分频

1111:SYSCLK512分频

注意:当AHB时钟的预分频系数大于1时,必须开启预取缓冲器。

位3:2SWS[1:0]:系统时钟切换状态(System clock switch status)

由硬件置’1’或清’0’来指示哪一个时钟源被作为系统时钟。

00:HSI作为系统时钟;

01:HSE作为系统时钟;

10:PLL输出作为系统时钟;

11:不可用。

位1:0SW[1:0]:系统时钟切换(System clock switch)

由软件置’1’或清’0’来选择系统时钟源。在从停止或待机模式中返回时或直接或间接作为系统时钟的HSE 出现故障时,由硬件强制选择HSI作为系统时钟(如果时钟安全系统已经启动)

00:HSI作为系统时钟;

01:HSE作为系统时钟;

10:PLL输出作为系统时钟;

11:不可用。

时钟中断寄存器(RCC_CIR)

偏移地址

偏移地址::0x08

复位值::0x00000000

复位值

访问

无等待周期,,字,半字和字节访问

访问::无等待周期

位31:24保留,始终读为0。

位23CSSC:清除时钟安全系统中断(Clock security system interrupt clear)

由软件置’1’来清除CSSF安全系统中断标志位CSSF。

0:无作用;

1:清除CSSF安全系统中断标志位。

位22:21保留,始终读为0。

位20PLLRDYC:清除PLL就绪中断(PLL ready interrupt clear)

由软件置’1’来清除PLL就绪中断标志位PLLRDYF。

0:无作用;

1:清除PLL就绪中断标志位PLLRDYF。

位19HSERDYC:清除HSE就绪中断(HSE ready interrupt clear)

由软件置’1’来清除HSE就绪中断标志位HSERDYF。

0:无作用;

1:清除HSE就绪中断标志位HSERDYF。

位18HSIRDYC:清除HSI就绪中断(HSI ready interrupt clear)

由软件置’1’来清除HSI就绪中断标志位HSIRDYF。

0:无作用;

1:清除HSI就绪中断标志位HSIRDYF。

位17LSERDYC:清除LSE就绪中断(LSE ready interrupt clear)

由软件置’1’来清除LSE就绪中断标志位LSERDYF。

0:无作用;

1:清除LSE就绪中断标志位LSERDYF。

位16LSIRDYC:清除LSI就绪中断(LSI ready interrupt clear)

由软件置’1’来清除LSI就绪中断标志位LSIRDYF。

0:无作用;

1:清除LSI就绪中断标志位LSIRDYF。

位15:13保留,始终读为0。

位12PLLRDYIE:PLL就绪中断使能(PLL ready interrupt enable)

由软件置’1’或清’0’来使能或关闭PLL就绪中断。

0:PLL就绪中断关闭;

1:PLL就绪中断使能。

位11HSERDYIE:HSE就绪中断使能(HSE ready interrupt enable)

由软件置’1’或清’0’来使能或关闭外部4-16MHz振荡器就绪中断。

0:HSE就绪中断关闭;

1:HSE就绪中断使能。

位10HSIRDYIE:HSI就绪中断使能(HSI ready interrupt enable)

由软件置’1’或清’0’来使能或关闭内部8MHz RC振荡器就绪中断。

0:HSI就绪中断关闭;

1:HSI就绪中断使能。

位9LSERDYIE:LSE就绪中断使能(LSE ready interrupt enable)

由软件置’1’或清’0’来使能或关闭外部32kHz RC振荡器就绪中断。

0:LSE就绪中断关闭;

1:LSE就绪中断使能。

位8LSIRDYIE:LSI就绪中断使能(LSI ready interrupt enable)

由软件置’1’或清’0’来使能或关闭内部40kHz RC振荡器就绪中断。

0:LSI就绪中断关闭;

1:LSI就绪中断使能。

位7CSSF:时钟安全系统中断标志(Clock security system interrupt flag)

在外部4-16MHz振荡器时钟出现故障时,由硬件置’1’。由软件通过置’1’CSSC位来清除。

0:无HSE时钟失效产生的安全系统中断;

1:HSE时钟失效导致了时钟安全系统中断。

位6:5保留,始终读为0。

位4PLLRDYF:PLL就绪中断标志(PLL ready interrupt flag)

在PLL就绪且PLLRDYIE位被置’1’时,由硬件置’1’。由软件通过置’1’PLLRDYC位来清除。

0:无PLL上锁产生的时钟就绪中断;

1:PLL上锁导致时钟就绪中断。

位3HSERDYF:HSE就绪中断标志(HSE ready interrupt flag)

在外部低速时钟就绪且HSERDYIE位被置’1’时,由硬件置’1’。由软件通过置’1’HSERDYC位来清除。

0:无外部4-16MHz振荡器产生的时钟就绪中断;

1:外部4-16MHz振荡器导致时钟就绪中断。

位2HSIRDYF:HSI就绪中断标志(HSI ready interrupt flag)

在内部高速时钟就绪且HSIRDYIE位被置’1’时,由硬件置’1’。由软件通过置’1’HSIRDYC位来清除。

0:无内部8MHz RC振荡器产生的时钟就绪中断;

1:内部8MHz RC振荡器导致时钟就绪中断。

位1LSERDYF:LSE就绪中断标志(LSE ready interrupt flag)

在外部低速时钟就绪且LSERDYIE位被置’1’时,由硬件置’1’。由软件通过置’1’LSERDYC位来清除。

0:无外部32kHz振荡器产生的时钟就绪中断;

1:外部32kHz振荡器导致时钟就绪中断。

位0LSIRDYF:LSI就绪中断标志(LSI ready interrupt flag)

在内部低速时钟就绪且LSIRDYIE位被置’1’时,由硬件置’1’。由软件通过置’1’LSIRDYC位来清除。

0:无内部40kHz RC振荡器产生的时钟就绪中断;

1:内部40kHz RC振荡器导致时钟就绪中断。

APB2外设复位寄存器(RCC_APB2RSTR)

偏移地址

偏移地址::0x0C

复位值

复位值::0x00000000

访问:无等待周期,,字,半字和字节访问

访问:无等待周期

位31:16保留,始终读为0。

位15ADC3RST:ADC3接口复位(ADC3interface reset)由软件置’1’或清’0’

0:无作用;

1:复位ADC3接口。

位14USART1RST:USART1复位(USART1reset)

由软件置’1’或清’0’

0:无作用;

1:复位USART1。

位13TIM8RST:TIM8定时器复位(TIM8timer reset)由软件置’1’或清’0’

0:无作用;

1:复位TIM8定时器。

位12SPI1RST:SPI1复位(SPI1reset)

由软件置’1’或清’0’0:无作用;

1:复位SPI1。

位11TIM1RST:TIM1定时器复位(TIM1timer reset)由软件置’1’或清’0’

0:无作用;

1:复位TIM1定时器。

位10ADC2RST:ADC2接口复位(ADC2interface reset)由软件置’1’或清’0’

0:无作用;

1:复位ADC2接口。

位9ADC1RST:ADC1接口复位(ADC1interface reset)由软件置’1’或清’0’

0:无作用;

1:复位ADC1接口。

位8IOPGRST:IO端口G复位(IO port G reset)由软件置’1’或清’0’

0:无作用;

1:复位IO端口G。

位7IOPFRST:IO端口F复位(IO port F reset)

由软件置’1’或清’0’

0:无作用;

1:复位IO端口F。

位6IOPERST:IO端口E复位(IO port E reset)

由软件置’1’或清’0’

0:无作用;

1:复位IO端口E。

位5IOPDRST:IO端口D复位(IO port D reset)

由软件置’1’或清’0’

0:无作用;

1:复位IO端口D。

位4IOPCRST:IO端口C复位(IO port C reset)

由软件置’1’或清’0’

0:无作用;

1:复位IO端口C。

位3IOPBRST:IO端口B复位(IO port B reset)

由软件置’1’或清’0’

0:无作用;

1:复位IO端口B。

位2IOPARST:IO端口A复位(IO port A reset)

由软件置’1’或清’0’

0:无作用;

1:复位IO端口A。

位1保留,始终读为0。

位0AFIORST:辅助功能IO复位(Alternate function I/O reset)由软件置’1’或清’0’

0:无作用;

1:复位辅助功能。

APB1外设复位寄存器(RCC_APB1RSTR) 0x10

偏移地址:0x10

偏移地址:

0x00000000

复位值:0x0000

复位值:

访问:无等待周期,字,半字和字节访问

位31:30保留,始终读为0。

位29DACRST:DAC接口复位(DAC interface reset)由软件置’1’或清’0’

0:无作用;

1:复位DAC接口。

位28PWRRST:电源接口复位(Power interface reset)由软件置’1’或清’0’

0:无作用;

1:复位电源接口。

位27BKPRST:备份接口复位(Backup interface reset)由软件置’1’或清’0’

0:无作用;

1:复位备份接口。

位26保留,始终读为0。

位25CANRST:CAN复位(CAN reset)

由软件置’1’或清’0’

0:无作用;

1:复位CAN。

位24保留,始终读为0。

位23USBRST:USB复位(USB reset)

由软件置’1’或清’0’

0:无作用;

1:复位USB。

位22I2C2RST:I2C2复位(I2C2reset)

由软件置’1’或清’0’

0:无作用;

1:复位I2C2。

位21I2C1RST:I2C1复位(I2C1reset)

由软件置’1’或清’0’

0:无作用;

1:复位I2C1。

位20UART5RST:UART5复位(UART5reset)

由软件置’1’或清’0’

0:无作用;

1:复位UART5。

位19UART4RST:UART4复位(UART4reset)

由软件置’1’或清’0’

0:无作用;

1:复位UART4。

位18USART3RST:USART3复位(USART3reset)

由软件置’1’或清’0’

0:无作用;

1:复位USART3。

位17USART2RST:USART2复位(USART2reset)

由软件置’1’或清’0’

0:无作用;

1:复位USART2。

位16保留,始终读为0。位15SPI3RST SPI3复位(SPI3reset)由软件置’1’或清’0’

0:无作用;

1:复位SPI3。

位14SPI2RST:SPI2复位(SPI2reset)

由软件置’1’或清’0’

0:无作用;

1:复位SPI2。

位13:12保留,始终读为0。

位11WWDGRST:窗口看门狗复位(Window watchdog reset)由软件置’1’或清’0’

0:无作用;

1:复位窗口看门狗。

位10:6保留,始终读为0。

位5TIM7RST:定时器7复位(Timer7reset)

由软件置’1’或清’0’

0:无作用;

1:复位TIM7定时器。

位4TIM6RST:定时器6复位(Timer6reset)

由软件置’1’或清’0’

0:无作用;

1:复位TIM6定时器。

位3TIM5RST:定时器5复位(Timer5reset)

由软件置’1’或清’0’

0:无作用;

1:复位TIM5定时器。

位2TIM4RST:定时器4复位(Timer 4reset)

由软件置’1’或清’0’

0:无作用;

1:复位TIM4定时器。

位1TIM3RST:定时器3复位(Timer 3reset)

由软件置’1’或清’0’

0:无作用;

1:复位TIM3定时器。

位0TIM2RST:定时器2复位(Timer 2reset)

由软件置’1’或清’0’

0:无作用;

1:复位TIM2定时器。

AHB 外设时钟使能寄存器(RCC_AHBENR)

偏移地址:偏移地址:0x14

0x14复位值:复位值:0x0000

0x00000014访问:无等待周期访问:无等待周期,

,字,半字和字节访问注:当外设时钟没有启用时,软件不能读出外设寄存器的数值,返回的数值始终是当外设时钟没有启用时,软件不能读出外设寄存器的数值,返回的数值始终是0x00x00x0。

。位31:11保留,始终读为0。

位10SDIOEN:SDIO时钟使能(SDIO clock enable)

由软件置’1’或清’0’。

0:SDIO时钟关闭;

1:SDIO时钟开启。

位9保留,始终读为0。

位8FSMCEN:FSMC时钟使能(FSMC clock enable)

由软件置’1’或清’0’。

0:FSMC时钟关闭;

1:FSMC时钟开启。

位7保留,始终读为0。

位6CRCEN:CRC时钟使能(CRC clock enable)

由软件置’1’或清’0’。

0:CRC时钟关闭;

1:CRC时钟开启。

位5保留,始终读为0。

位4FLITFEN:闪存接口电路时钟使能(FLITF clock enable)

由软件置’1’或清’0’来开启或关闭睡眠模式时闪存接口电路时钟。

0:睡眠模式时闪存接口电路时钟关闭;

1:睡眠模式时闪存接口电路时钟开启。

位3保留,始终读为0。

位2SRAMEN:SRAM时钟使能(SRAM interface clock enable)

由软件置’1’或清’0’来开启或关闭睡眠模式时SRAM时钟。

0:睡眠模式时SRAM时钟关闭;

1:睡眠模式时SRAM时钟开启。

位1DMA2EN:DMA2时钟使能(DMA2clock enable)

由软件置’1’或清’0’。

0:DMA2时钟关闭;

1:DMA2时钟开启。

位0DMA1EN:DMA1时钟使能(DMA1clock enable)

由软件置’1’或清’0’。

0:DMA1时钟关闭;

1:DMA1时钟开启。

APB2外设时钟使能寄存器(RCC_APB2ENR)

偏移地址:偏移地址:0x18

0x18复位值:复位值:0x0000

0x00000000访问:字,半字和字节访问

通常无访问等待周期。但在通常无访问等待周期。但在APB2APB2APB2总线上的外设被访问时,将插入等待状态直到总线上的外设被访问时,将插入等待状态直到总线上的外设被访问时,将插入等待状态直到APB2APB2APB2的外设访问结束。

的外设访问结束。位31:16保留,始终读为0。

位15ADC3EN:ADC3接口时钟使能(ADC 3interface clock enable)

由软件置’1’或清’0’

0:ADC3接口时钟关闭;

1:ADC3接口时钟开启。

位14USART1EN:USART1时钟使能(USART1clock enable)

由软件置’1’或清’0’

0:USART1时钟关闭;

1:USART1时钟开启。

位13TIM8EN:TIM8定时器时钟使能(TIM8Timer clock enable)

由软件置’1’或清’0’

0:TIM8定时器时钟关闭;

1:TIM8定时器时钟开启。

位12SPI1EN:SPI1时钟使能(SPI 1clock enable)

由软件置’1’或清’0’

0:SPI1时钟关闭;

1:SPI1时钟开启。

位11TIM1EN:TIM1定时器时钟使能(TIM1Timer clock enable)

由软件置’1’或清’0’

0:TIM1定时器时钟关闭;

1:TIM1定时器时钟开启。

位10ADC2EN:ADC2接口时钟使能(ADC 2interface clock enable)

由软件置’1’或清’0’

0:ADC2接口时钟关闭;

1:ADC2接口时钟开启。

位9ADC1EN:ADC1接口时钟使能(ADC 1interface clock enable)

由软件置’1’或清’0’

0:ADC1接口时钟关闭;

1:ADC1接口时钟开启。

位8IOPGEN:IO端口G时钟使能(I/O port G clock enable)

由软件置’1’或清’0’

0:IO端口G时钟关闭;

1:IO端口G时钟开启。

位7IOPFEN:IO端口F时钟使能(I/O port F clock enable)

由软件置’1’或清’0’

0:IO端口F时钟关闭;

1:IO端口F时钟开启。

位6IOPEEN:IO端口E时钟使能(I/O port E clock enable)

由软件置’1’或清’0’

0:IO端口E时钟关闭;

1:IO端口E时钟开启。

位5IOPDEN:IO端口D时钟使能(I/O port D clock enable)

由软件置’1’或清’0’

0:IO端口D时钟关闭;

1:IO端口D时钟开启。

位4IOPCEN:IO端口C时钟使能(I/O port C clock enable)

由软件置’1’或清’0’

0:IO端口C时钟关闭;

1:IO端口C时钟开启。

位3IOPBEN:IO端口B时钟使能(I/O port B clock enable)

由软件置’1’或清’0’

0:IO端口B时钟关闭;

1:IO端口B时钟开启。

位2IOPAEN:IO端口A时钟使能(I/O port A clock enable)

由软件置’1’或清’0’

0:IO端口A时钟关闭;

1:IO端口A时钟开启。

位1保留,始终读为0。

位0AFIOEN:辅助功能IO时钟使能(Alternate function I/O clock enable)

由软件置’1’或清’0’

0:辅助功能IO时钟关闭;

1:辅助功能IO时钟开启。

APB1外设时钟使能寄存器(RCC_APB1ENR)

偏移地址:偏移地址:0x1C

0x1C 复位值:复位值:0x0000

0x00000000访问:字、半字和字节访问通常无访问等待周期。但在通常无访问等待周期。但在APB1APB1APB1总线上的外设被访问时,将插入等待状态直到总线上的外设被访问时,将插入等待状态直到总线上的外设被访问时,将插入等待状态直到APB1APB1APB1外

外设访问结束。

注:当外设时钟没有启用时,软件不能读出外设寄存器的数值,返回的数值始终是当外设时钟没有启用时,软件不能读出外设寄存器的数值,返回的数值始终是0x00x00x0。

。位31:30保留,始终读为0。

位29DACEN:DAC接口时钟使能(DAC interface clock enable)

大班社会 科学活动《十二生肖》

大班社会科学活动《十二生肖》 教材分析” 活动《十二生肖》重在让幼儿知道十二生肖是我国特有的习俗,了解十二生肖的排列顺序,并通过调查讨论知道每个人的生肖是不变的,人与人的生肖会因为出生的年份不同而不同等。通过学习本节活动,可以使大班的孩子们好奇、好知的目光延伸到更宽广的范围,对十二生肖的理解在原有的基础上更加深入,幼儿的语言表达能力、抽象思维能力和简单的推理能力在活动中都得到了发展。 学情分析: 十二生肖在我国是一种很浓厚的民族文化,它在我国民间文化中独具特点和魅力。大班的孩子开始对自己的属相感兴趣,每个孩子都知道自己有一个属相,但十二生肖究竟是由哪十二个小动物组成的,它们是怎么排列的,自己为什么是这个属相,孩子却不太了解。因其抽象性(如十二生肖的轮回)和复杂性(如十二生肖的顺序),又使孩子认识它有一定难度。针对上述情况,结合幼儿实际,把认识生肖和时钟巧妙融合,将钟点数字与生肖顺序相匹配,让时间的延续与生肖轮回相对应,引导幼儿把对时钟的认识迁移到十二生肖之中来。通过一系列活动让幼儿在观察中发现,在发现中思考,在思考中概括,在自主活动中,逐步获得相关的十二生肖的知识经验。 活动目标: 1.知道十二生肖是我国特有的习俗,了解十二生肖的排列顺序。 2.关注调查家庭生肖中出现的疑问,参与讨论加以解决。 活动重点: 知道十二生肖是我国特有的习俗,了解十二生肖的排列顺序 活动难点:关注调查家庭生肖中出现的疑问,参与讨论加以解决。 活动准备: 经验准备:十二生肖的故事 物质准备:家庭十二生肖调查表。 教具——十二生肖大转盘。 教学方法:观察法调查法讨论法.。 活动过程: 一、说说十二生肖 1.回忆十二生肖的故事:猫为什么没有排列在生肖里?谁排了第一? 2.讨论:究竟十二生肖是指哪十二个动物?(幼儿自由叙述) 3.师幼结合十二生肖大转盘图,共同讨论十二生肖的顺序。 (鼠的后面是谁?虎排在第几?马的前和后分别是谁?猪的后面是谁?——体会十二生肖是按一定的顺序排列,不能前后任意调换的) 4.十二生肖儿歌:一鼠二牛,三虎四兔,五龙六蛇,七马八羊,九猴十鸡,十一黄狗,十二哼哼猪。 二、我的家人属什么? 1.交流各自的家人生肖调查表。知道家人的属相。 2.按自己的调查表做个小统计:我家有几个人,有几种生肖。 3.思考:是不是家里有几个人就有几种生肖呢?有没有家人的生肖相同? 4.归类调查表:将人口数和生肖数相同的放在一边,不同的放在另一边,观察两边各有几个家庭。

Appium完整案例

Appium环境搭建 by Tspring tspring2014@https://www.doczj.com/doc/c818024395.html, 随着人类消费观念转变,企业巨头间的无硝烟战场从互联网转移到移动端,为了抢占移动端用户,企业们更是绞尽脑汁,想方设法提高产品质量和增强用户体验,赢得此场战役的关键是产品质量,高质量产品更能捕获用户的芳心。但高质量产品保证的根源是高质量的测试,因此测试时关键。移动应用自动化测试是一个新的领域,移动端平台多样化(Andriod、Ios、FirefoxOS)为自动化测试带来了挑战与困难,随着Appium框架的推出,移动自动化测试进入一个崭新的阶段,自动化入门容易、上手快,轻轻松松测试多个移动平台。因Appium,移动自动化测试更加容易,现在让我为大家揭开Appium神秘面纱吧。 Appium is an open source test automation framework for use with native and hybrid mobile apps.It drives iOS and Android apps using the WebDriver JSON wire protocol. 摘自http://appium.io/从上面那句话我们可以窥探出Appium整个轮廓。Appium是一个开源、免费的移动端自动化测试框架,可以用来测试原生和混合移动应用,同时支持测试多种平台(Ios、Android、FirefoxOS)下应用,底层是采用WebDriver JSON Wire协议去实现的。 Appium测试环境搭建步骤: ?下载、安装JDK&配置Java环境变量 ?下载、安装SDK、ADT&配置Android环境变量 ?下载、安装AppiumForWindow ?创建安卓模拟器 ?在线安装Testng、SVN、Maven等插件 ?Appium简单案例 1、下载、安装JDK&配置Java环境变量 JDK(Java Development Kit)即Java开发工具集,一堆Java开发基本工具比如Javac.exe、Jar.exe、Javadoc.exe etc.同时JDK包含了JRE(Java Runtime Environment)即Java运行环境,因此要进行使用Java编写Appium脚本,前提是安装JDK。 Java语言以前是Sun公司推出,之前可以在Sun主页中下载JDK,但现在Sun公司被Oracle收购了,因此现在想下载JDK最好去Oracle官网下载。 JDK下载地址:https://www.doczj.com/doc/c818024395.html,/technetwork/java/javase/downloads/index.html 安装(略),傻瓜式安装,关键是Java_Home 配置环境变量: 1、右键我的电脑--属性--高级--环境变量 2、新建系统变量JAVA_HOME和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0 变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; 3.、选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径,添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。 变量名:Path 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 验证配置是否成功:重新打开控制台输入:java-verison,如果显示Java版本信息表示安装成功。

中班十二生肖歌教案

中班十二生肖歌教案 【篇一:幼儿大班语言“十二生肖”教案】 语言:十二生肖歌(儿歌) 活动目标: 1.看图学习儿歌,能正确讲述十二生肖的名称。 2.通过游戏的方式正确感知十二生肖的排列顺序,并尝试仿编儿歌。 3.乐意参与儿歌的表演,知道十二生肖是中国特有的民族文化。 活动准备: 十二生肖歌磁性小图片12张,头饰,录音机。 活动过程: 1.教师提问,引出活动。 (1)教师:这是什么?这是老师的生肖挂件。小朋友,你知道你是 属什么的吗? (2)教师:你知道你的爸爸、妈妈属什么吗?你还知道哪些生肖?(3)教师:以十二生肖代表属相是中国特有的传统习俗。每年以一 种小动物作为代表,一共有十二种动物,称为十二生肖。 2.引导幼儿看图阅读儿歌。 (1)教师:瞧!十二生肖排队走来了,请小朋友说一说,它们是什 么动物? (2)教师在小动物的旁边添画简单的图形。请幼儿说说小动物排着 队在做什么运动呢? (3)引导幼儿朗诵儿歌。 3.运用轮流的方式阅读儿歌。 4.通过游戏了解十二生肖的顺序。 (1)教师:十二生肖锻炼完身体,就排起长队,开始玩捉迷藏的游戏。 (2)教师介绍游戏的玩法:请小朋友闭起眼睛,教师拿走一个动物,然后请小朋友睁开眼睛,看看第几个动物藏起来了。 (3)教师带领幼儿开展游戏活动。 5.启发幼儿进行仿编儿歌。 (1)教师:十二生肖喜欢锻炼身体,而且它们还会排着队做运动呢?想一想它们还可以做什么运动? (2)教师根据幼儿的讲述,在失而生肖的旁边画出简单的运动项目。(3)鼓励幼儿看图朗诵自己编的儿歌。

6.韵律活动。 教师:十二生肖喜欢锻炼身体,小朋友,你们喜欢锻炼身体吗?让我们随着音乐一起来做运动吧!教师与幼儿一起表演韵律操。 【篇二:儿歌十二生肖歌歌词】 儿歌十二生肖歌歌词: 小老鼠打头来,牛把蹄儿抬;老虎回头一声吼,兔儿跳得快;兔儿跳得快, 龙和蛇尾巴甩,马羊步儿迈;小猴机灵蹦又跳,鸡唱天下白;鸡唱天下白, 狗儿跳猪儿叫,老鼠又跟来;十二动物转圈跑,请把顺序排;啊,请把顺序排。 【篇三:幼儿园大班十二生肖教案】 活动要求: 通过活动,知道十二生肖的名称。 知道属生肖是我国特有的民族风格。 培养幼儿用语言大胆与人交往的能力。 材料准备与环境创设: 十二生肖贴绒教具一套 舞龙道具二套 小的玩具十二生肖六套 活动过程: 1.了解十二生肖并引起兴趣:你知道自己属什么? 你还知道谁是属什么的?看谁能说得最多。 请猜一猜老师是属什么的? 在幼儿说的过程中,逐一出示十二生肖的贴绒教具。 2.想不想知道这十二生肖是怎样来的?请听老师来讲一个小故事。讲“十二生肖”的故事。 知道十二生肖是我国特有的民族风俗。 人为什么要属生肖?(为了表示人与动物是好朋友) 十二生肖是怎样属法的呢?(一年一个生肖,这一年是何种动物生肖,生下的孩子也就属这种动物了。) 3.十二生肖的排队。 与客人老师的交往: 问一问:“请问您是属什么的?”(鼓励幼儿大胆地用语言与周围的客人老师交往) ?

单片机时钟电路的设计

单片机时钟电路的设计 单片机内部虽有振荡电路,但要形成时钟必须在外总附加电路。 MCS-51单片机的时钟产生方法有如下两种。 1内部时钟方式 利用芯片内部的振荡电路,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路便产生自激振荡,用示波器可以观察到XTAL2输出时的时钟信号。 最常用的内部时钟方式是采用外接晶体(在频率稳定性要求不高而希望尽可能廉价时,可选用陶瓷谐振器)和电容组成的并联谐振回路,HMOS型和CHMOS型单片机和并联,谐振回路及参数相同。 振荡晶体可在1. 2MHz~12MHz之间。电容值无严格要求,但电容取值对振荡频率输出的稳定性、大小和振荡电路起振速度有少许影响,CX1和CX2可在20p~100pF间取值,但在60PF~70PF时振荡器有较高的频率稳定性。 在设计PCB板时,晶体或陶瓷谐振器和电容应尽可能靠近单片机芯片安装,以减少寄生电容,更好的保护振荡电路稳定可靠的工作。为了提高温度稳定性,采用NPO电容。2外部时钟方式 外部时钟方式是利用外部振荡信号源直接接入XRAL1或XTAL2。由于HMOS和CHMOS单片机内部时钟进入的引脚不同(CHMOS型单片同由XTAL1进入,HMOS 型单片机由XTAL2进入),其外部振荡信号源的接入方法也不同。HMOS型单片机的外部振荡信号接至XTAL2,而内部的反相放大器的输入端XTAL1应接地。由于XTAL2端的逻辑电平不是TTL的,故建议外接一个上拉电阻。而XTAL2不可以接地。 在CMOS电路中,因内部时钟引入端取自反相放大器的输入端(即与非门的输入端),故采用外部振荡信号源时接线方式与HNOS型有所不同,外部信号接至XTAL1,而XTAL2不可以接地。外部振荡信号通过去一个2分频的触发器而成为一个时钟信号。故对外部信号的占空比没什么要求,但高电平持续时间和低电平持续时间应大于20ns.

数字钟电路pcb设计

¥ 摘要 本设计针对数字钟PCB板设计较为复杂的问题,利用国内知名度较高、应用最广泛的电路辅助设计软件protel99se进行了电路板的设计。本设计介绍了各部分电路的构成及准确完成了数字钟PCB电路板的设计。本设计数字钟原理图分析入手,说明了在平台中完成原理图设计,电气检测,网络表生成,PCB设计的基本操作程序。数字钟的主要电路是由电源电路、显示电路、校时电路、晶体振荡电路组成。PCB是电子元器件的支撑体,是电子元器件电气连接的提供者。PCB的设计是以电路原理图为根据,实现电路设计者所需要的功能。优秀的版图设计可以节约生产成本,达到良好的电路性能和散热性能。 关键词:数字钟;PCB;原理图;芯片 — 【

目录 前言 (1) 第一章@ 第二章绪论 (2) 数字钟的研究背景和意义 (2) 数字钟的发展和趋势 (2) 第二章系统电路的绘制 (3) 电路组成方框图 (3) 电路原理图制作 (3) 原理图环境设置 (4) 绘制原理图 (5) $ 电气规则检查及网络表输出 (7) 原理图分析 (10) 晶体振荡器 (10) 分频器 (11) 计数器电路 (12) 显示和译码电路 (12) 电源电路 (13) 第三章电路板PCB设计 (14) , PCB设计规范 (14) PCB设计流程 (17) 输出光绘文件 (21) PCB制件作 (23)

心得体会 (25) 参考文献 (26) 附图 (27) 附表 (28) "

前言 PCB(Printed Circuit Board),中文名称为印制线路板,简称印制板,是电子工业的重要部件之一。几乎每种电子设备,小到电子手表、计算器,大到计算机,通讯电子设备,军用武器系统,只要有集成电路等电子元器件,为了它们之间的电气互连,都要使用印制板。在较大型的电子产品研究过程中,最基本的成功因素是该产品的印制板的设计、文件编制和制造。印制板的设计和制造质量直接影响到整个产品的质量和成本,甚至导致商业竞争的成败。 Protel系列电子设计软件是在EDA行业中,特别是在PCB设计领域具有多年发展历史的设计界软件,由于其功能强大,操作简单实用,近年来成为国内发展最快。 Protel 99已不是单纯的PCB(印制电路板)设计工具,而是由多个模块组成的系统工具,分别是SCH(原理图)设计、SCH(原理图)仿真、PCB(印制电路板)设计、Auto Router(自动布线器)和FPGA设计等,覆盖了以PCB为核心的整个物理设计。该软件将项目管理方式、原理图和PCB图的双向同步技术、多通道设计、拓朴自动布线以及电路仿真等技术结合在一起,为电路设计提供了强大的支持。 随着计算机事业的发展,在信息化时代,电路设计中的很多工作都可以用计算机来完成。这样就大大减轻了设计人员的体力劳动强度,并且保证了设计的规范性准确性。而Protel99SE技术已越来越为人们所关注,人们利用protel99SE绘制各种原理图,进而制作出各种各样的科技产品已经成为当今世界的一个不可或缺的组成部分,所以说Protel99SE技术已越来越显得重要。

自动化测试完整案例

Appium环境搭建 随着人类消费观念转变,企业巨头间的无硝烟战场从互联网转移到移动端,为了抢占移动端用户,企业们更是绞尽脑汁,想方设法提高产品质量和增强用户体验,赢得此场战役的关键是产品质量,高质量产品更能捕获用户的芳心。但高质量产品保证的根源是高质量的测试,因此测试时关键。移动应用自动化测试是一个新的领域,移动端平台多样化(Andriod、Ios、FirefoxOS)为自动化测试带来了挑战与困难,随着Appium框架的推出,移动自动化测试进入一个崭新的阶段,自动化入门容易、上手快,轻轻松松测试多个移动平台。因Appium,移动自动化测试更加容易,现在让我为大家揭开Appium神秘面纱吧。 Appium is an open source test automation framework for use with native and hybrid mobile apps. It drives iOS and Android apps using the WebDriver JSON wire protocol. 摘自http://appium.io/ 从上面那句话我们可以窥探出Appium整个轮廓。Appium是一个开源、免费的移动端自动化测试框架,可以用来测试原生和混合移动应用,同时支持测试多种平台(Ios、Android、FirefoxOS)下应用,底层是采用WebDriver JSON Wire协议去实现的。 Appium测试环境搭建步骤: ?下载、安装JDK&配置Java环境变量 ?下载、安装SDK、ADT&配置Android环境变量 ?下载、安装AppiumForWindow ?创建安卓模拟器 ?在线安装Testng、SVN、Maven等插件 ?Appium简单案例 1、下载、安装JDK&配置Java环境变量 JDK(Java Development Kit)即Java开发工具集,一堆Java开发基本工具比如Javac.exe、Jar.exe、Javadoc.exe etc.同时JDK包含了JRE(Java Runtime Environment)即Java运行环境,因此要进行使用Java编写Appium脚本,前提是安装JDK。 Java语言以前是Sun公司推出,之前可以在Sun主页中下载JDK,但现在Sun公司被Oracle收购了,因此现在想下载JDK最好去Oracle官网下载。 JDK下载地址:https://www.doczj.com/doc/c818024395.html,/technetwork/java/javase/downloads/index.html 安装(略),傻瓜式安装,关键是Java_Home 配置环境变量: 1、右键我的电脑--属性--高级--环境变量 2、新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0 变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; 3.、选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径,添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。 变量名:Path 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 验证配置是否成功:重新打开控制台输入:java -verison,如果显示Java版本信息表示安装成功。 2、下载、安装ADT&配置Android环境变量 ADT(Android Development Kit,即安卓开发工具包)属于SDK(Software Development Kit, 即软件开发工具包)

大班语言十二生肖教案

大班语言十二生肖教案

大班语言十二生肖教案 【篇一:大班社会十二生肖教案】 大班社会:《十二生肖》 活动目标: 1、熟悉十二生肖中十二种动物的名称及其排列顺序。 2、了解十二生肖的轮回,对不同生肖的年龄进行简单的判断。 3、培养幼儿对民族文化的学习兴趣和热爱情感。 重难点: 重点:掌握十二生肖中十二种动物的名称及其排列顺序; 难点:理解十二生肖的轮回。 活动准备 1、教具的准备:十二生肖动物课件、十二生肖的故事、十二生肖的图片、十二生肖头饰若干、十二生肖的儿歌、生肖钟。 2、知识经验准备:通过布置家庭作业使幼儿事先知道自己的属相,知道父母的属相,了解十二生肖中部分动物。认识钟表。幼儿会唱《十二生肖歌》。 活动过程: 一、开始部分 师:“小朋友们,你知道自己属什么吗?属牛的,你的属相就是牛,属虎的,你的属相就是虎。每个人都有自己的属相。那你知道爸爸妈妈的属相吗?” 师:“除了刚才说的你还知道哪些属相?

二、基本部分 师:原来小朋友们知道这么多的属相。非常棒!我告诉你们,属相一共有十二种,我们也叫十二生肖,十二生肖是我们中国的一种传统文化,已经流传了几千年。每个人都知道十二生肖,那它们到底都是什么动物呢?我把十二生肖都请来了。我们一起来看看吧! 1、播放课件 边出示图片幼儿边说出动物的名称。 师:我们把它们一起请出来。跟我一起说:十二生肖快出来。 师:十二生肖里的动物有很多我们熟悉的,经常看见的,谁能学一学它们?我们来猜一猜小朋友学的是什么动物。 2、讲故事 师:我们认识了十二生肖,那你知道十二生肖有什么用吗?十二生肖是怎么选出来的?下面我们来听一个小故事你就明白了。(欣赏故事) 问:(1)十二生肖有什么用? (2)十二生肖是怎么选出来的? (3)渡河比赛谁得了第一名?第二名呢???(边说边出示图片带数字) 3、猜猜看 师:十二生肖正在玩捉迷藏的游戏,小朋友们,看看谁藏起来了? (课件出示图片幼儿说出藏起来的小动物) 4、生肖轮回 师:因为刚才小朋友们表现得特别棒,所以十二生肖来和我们一起做游戏了,你们看!谁能按照顺序把十二生肖排好队?(出示生肖钟)

漫长Appium之路(二)——Appium安装与使用总结

漫长Appium之路(二)——Appium安装与使用总结 前面介绍了iOS自动化工具的Appium所需的虚拟机环境,接下来介绍下Appium 的安装与使用方法,这个足足折腾我将近一个星期。网上没有什么详细的资料, 对于遇到的各种各样问题也没用提供明确的解决方法。这里我贴出我的总结经验,和大家分享。 Appium提供了两种安装使用方式:图形化界面和命令行控制。无论使用哪种方式安装,以下软件都最好准备并安装完毕: 1.Xcode Command Line Tools:必须。提供Xcode的命令行调用工具,需对应OS版本和Xcode版本。可从官网上下载或着远景论坛搜索。 2.Node.js:非必须。命令行使用那一定要下载安装Node.js,官网上下载安装包即可。图形化的不确定,不过最好安装上,也不费事。 3.Mac上的Eclipse和JDK:非必须。但是如果想用Java编写appium测试用例的话,那么这些开发环境最好准备着。 使用Java的话,需要导入以下三个包,都是刻骨铭心的总结啊: java-client-1.5.0.jar:appium官方提供的Java客户端,官网上下载: https://https://www.doczj.com/doc/c818024395.html,/#search|ga|1|g%3Aio.appium%20a%3Ajava-client selenium-server-standalone-2.42.2.jar:selenium官方提供的Jar包,appium 会需要使用到这些类,使用selenium的最新版本搭配appium的最新版本,官网下载,非常的大,30多M gson-2.1.jar:谷歌官方提供的json工具,运行工程时会需要用到,这个百度就能搜到。 这里我先以Appium官网提供的.dmg作为示例说明Appium用法: 安装说明: 1.首先去Appium官网上下载appium.dmg。官网地址: http://appium.io/downloads.html。 需要注意Appium的版本可能跟Mac OS版本和Xcode版本有关系,像我Xcode 是4.5的最新版本就经常用不起来,不过用0.13.0和1.0.0是没问题的,可以多下载几个版本试一下。 2.以我的0.1 3.0版本为例。先把模拟器打开,运行你想录制的程序。打开Appium 以后先授权,然后作如下配置:

圆明园12生肖兽首简介

圆明园十二生肖铜兽首简介 圆明园兽首铜像,又称圆明园十二生肖铜兽首、圆明园十二生肖人身兽首铜像。圆明园兽首铜像原为圆明园海晏堂外的喷泉的一部分,是清乾隆年间的红铜铸像。1860年英法联军侵略中国,火烧圆明园,兽首铜像开始流失海外,现仅有少量得以收回,因此已经成为圆明园海外流失文物的象征。 圆明园兽首铜像是清朝乾隆年间修建。圆明园兽首铜像由欧洲传教士意大利人郎世宁(GiuseppeCastiglione,1688-1766)主持设计,法国人蒋友仁(R.Michel.Benoist,1715-1744)设计监修,清宫廷匠师制作。 原本郎世宁是要建造西方特色的裸体女性雕塑,可是乾隆皇帝觉得这有背中国的伦理道德,所以勒令重新设计,后来才有了这十二生肖铜像。还有一个难题就是,当时设计好后,郎世宁发现大清竟然没有一个工匠还懂得青铜器制作方法,后来他和众工匠查阅典籍,费时费力最终终于造成。 铜像的造型与构造原理 圆明园古迹海晏堂,建于1759年(乾隆二十四年)。海晏一词取意河清海晏,国泰民安。文苑英华》唐郑锡《日中有王字赋》:河清海晏,时和岁丰河,黄河;晏,平静。河清海晏也作海晏河清,意指黄河水流澄清,大海风平浪静。此语用以比喻天下太平,有歌颂世界和平的吉祥涵义。中国皇家园林圆明园中观赏实用性建筑海晏堂之名也出于此。此建筑群的精华十二生肖铜像以水报时,闻名世界。 十二生肖铜像由欧洲传教士郎世宁主持设计,清宫廷匠师制作,是展现中西方文化交融的艺术珍品,在国际上具有极高的艺术价值和鉴赏价值。设计者充分考虑到中国的民俗文化,以十二生肖的坐像取代了西方喷泉设计中

常用的人体雕塑。生肖铜像身躯为石雕穿着袍服的造型,头部为写实风格造型,铸工精细,兽首上的褶皱和绒毛等细微之处,都清晰逼真。铸造兽首所选用的材料为当时清廷精炼的红铜,外表色泽深沉、内蕴精光,历经百年而不锈蚀,堪称一绝。据考证,当年十二生肖铜像呈八字形排列在圆明园海晏堂前的一个水池两边,被时人称为水力钟。每日,十二生肖铜像会依次轮流喷水,分别代表全日不同时分,正午时分时,十二像会同时涌射。海晏堂十二生肖喷泉是按照我国十二生肖设计的喷泉时钟,每到一个时辰,属于该时辰的生肖钟就会自动喷水,正午十二点时,十二生肖则同时喷水,设计极为精巧。海晏堂正楼朝西,上下各十一间,楼门左右有叠落式喷水槽,阶下为一大型喷水池,池左右呈”八”字形排列着这十二生肖人身兽头铜像。每昼夜十二个时辰,由十二生肖依次轮流喷水,俗称”水力钟”。十二生肖像原是在圆明园西洋楼,海晏堂前的扇形水池喷水台南北两岸12石台上的。南岸分别为子鼠、寅虎、辰龙、午马、申猴、戌狗;北岸则分别为丑牛、卵兔、已蛇、未羊、西鸡、亥猪。这些肖像皆兽首人身,头部为铜质,身躯为石质,中空连接喷水管,每隔一个时辰(两小时),代表该时辰的生肖像,便从口中喷水;正二生肖依次轮流喷水,俗称”水力钟”。 十二生肖像原是在圆明园西洋楼,海晏堂前的扇形水池喷水台南北两岸12石台上的。南岸分别为子鼠、寅虎、辰龙、午马、申猴、戌狗;北岸则分别为丑牛、卵兔、已蛇、未羊、西鸡、亥猪。这些肖像皆兽首人身,头部为铜质,身躯为石质,中空连接喷水管,每隔一个时辰(两小时),代表该时辰的生肖像,便从口中喷水;正午时分,十二生肖像口中同时涌射喷泉,蔚为奇观。这些青铜生肖雕像高50公分,雕刻精细,为清代青铜器中的精品。

60s计时器的设计与实现

电子系统设计创新实验 报告 题目60s计时器的设计与实现 学生姓名高权黄盼徐传武易孟华 学生学号016321232404 07 14 15 专业名称电子信息工程 指导教师肖永军 2016年11月17 日

设计要求: 1、利用单片机定时器/计数器T0中断设计秒表。 2、实现基本的0-60秒计时。 3、以数码管作为显示器件,用单片机进行控制。

摘要 数字电子秒表具有显示直观、读取方便、精度高等优点,在计时中广泛使用。本设计用单片机组成数字秒表,用AT89C51系列单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合硬件晶振电路,复位电路,数码管显示电路来设计计时器,将软、硬件有机地结合起来。其中软件系统采用汇编语言编写程序,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。 关键字:AT89C51 单片机数码管

一、系统总体设计 系统总体设计框图如图1所示,该系统共由时钟电路模块、复位电路模块、AT89C51单片机及数码管显示电路组成。其中主控制器用于系统控制,可以控制电路的开关的功能,系统中AT89C51单片机作为主控元件,计数器显示电路由数码管和驱动电路组成。 图1 系统总体设计框图 二、系统硬件设计 (1)复位电路 采用上电+按键复位电路,上电后,由于电容充电,使RST持续一段高电平时间。当单片机已在运行之中时,按下复位键也能使用使RST 持续一段时间的高电平,从而实现上电加开关复位的操作。这不仅能使单片机复位,而且还能使单片机的外围芯片也同时复位。当程序出现错误时,可以随时使电路复位。 复位电路如图2所示:

圆明园十二生肖铜像

圆明园十二生肖铜像 (1)清乾隆12年至24年(公元1747年至1759年),圆明园修建西洋楼时,吸收了欧洲巴洛克的建筑形式, 建成“大水法”十景,内有“谐奇趣”、“海晏堂”、“大水法”三大喷泉。十二兽首铜像位于“海晏堂”楼前 的扇形水池中,由欧洲传教士、意大利人郎世宁主持设计,法国人蒋友仁设计监修,清宫廷匠师制作。建于乾隆 24年(1759年)的“海晏堂”,是西洋楼中最大一处欧式园林景观。十二生肖铜像以水报时,闻名世界,自然成为此建筑群的景观精华。 (2)十二兽首铜像所在的喷泉池,正中是一个高约两米的蛤蜊石雕,池两旁呈八字形各排出6个石座。每一石座上雕刻兽首人身像,每昼夜十二个时辰,由十二生肖依次轮流喷水,被时人称为“水力钟”。这组按照我国十 二生肖设计的喷泉时钟,设计极为精巧:南岸分别为子鼠、寅虎、辰龙、午马、申猴、戌狗;北岸分别为丑牛、卯兔、巳蛇、未羊、酉鸡、亥猪。它们按十二生肖顺序排列,每隔一个时辰(今天的两小时),代表该时辰的兽首口中就会喷水,水呈抛物线状注入池中,即子时(23时至次日1时)时分,鼠首铜像口中喷射水柱;丑时(1时至3时)时分,牛首铜像口中喷射水柱。正午12点整,十二生肖像口中同时涌射喷泉,蔚为奇观。因此,人们只要看到哪个生肖头像口中喷射水柱,就可知道时间。整组喷泉,其实就是一个巨大别致的水利时钟,观赏性佳,实用性更强。 (3)十二兽首铜像均为人身兽首,身躯为人身着袍造型。原本,郎世宁是要建造具有西方特色的裸体女性雕塑,可乾隆皇帝觉得这样有悖中国伦理道德,勒令重新设计。郎世宁结合中国传统文化,以十二生肖坐像取代了西方 喷泉设计中常用的人体雕塑,才有了这组精妙绝伦的生肖铜像。当时,还遇到一个难题,图案设计好后,郎世宁 发现宫内找不到懂青铜器制作方法的工匠,他只能和众工匠查阅典籍,最终十二兽首铜像改由清廷精炼的合金铜 铸成。 (4)当时正值乾隆盛世,清王朝国力强盛,制作工艺处于巅峰,这在圆明园十二生肖兽首铜像上表现得尤为明显。首先,它所用的铜,系宫廷专门炼制的合金铜,内含诸多贵重金属,与北京故宫、颐和园陈列的铜鹤等所用 铜相同,外表色泽深沉、内蕴精光,历经风雨而不锈蚀,堪称一绝。其次,它由专门为皇帝服务的宫廷工匠精心 制作,铸工精整。这些兽首雕像高50厘米,表现为写实风格造型,兽首上的褶皱和绒毛等都是精细錾工刻划,细微之处皆一凿一凿锻打而成,兽首鼻、眼、耳等重点部位及鼻上和颈部皱褶皆表现得十分细腻逼真,展现出极高 的工艺水准。更让人称道的是,十二生肖兽首铜像由中国宫廷匠师制造,而设计者是郎世宁等来自欧洲的艺术家,因此铜像既有浓郁的中国传统审美趣味,也融合了西方造型艺术的特点,堪称稀世珍品。 15.从文中介绍看,十二生肖兽首铜像具有怎样的艺术风格和价值? 艺术风格:______________________________________________________________________________ 价值:____________________________________________________________________________________________ 16.文末画横线句“堪称稀世珍品”是对十二生肖兽首铜像的高度评价。试用自己的话简要概括出作者之所以这样评价的理由。 ____________________________________________________________________________________________ ____________________________________________________________________________________________

Appium工具分析

Appium是最近比较热门的框架,社区也很活跃。这个框架应该是是功能最强大的。 它的优点: o开源; o支持Native App、Hybird App、Web App; o支持Android、iOS、Firefox OS; o Server也是跨平台的,你可以使用Mac OS X、Windows或 者Linux; 它的哲理是: 用Appium自动化测试不需要重新编译App; 支持很多语言来编写测试脚本,Java、Javascript、PHP、Python、C#、Ruby等主流语言; 不需要为了自动化测试来重造轮子,因为扩展了WebDriver。(WebDriver是测试WebApps的一种简单、快速的自动化测试框架,所以有Web自动化测试经验的测试人员可以直接上手); 移动端自动化测试应该是开源的; 它的设计理念: Client/Server架构,运行的时候Server端会监听Client端发过来的命令,翻译这些命令发送给移动设备或模拟器,然后移动设备或模拟器做出响应的反应。正是因为这种架构,所以Client可以使用Appium client libraries多种语言的测试脚本,而且Server端完全

可以部署在服务器上,甚至云服务器。 Session,每个Client连接到Server以后都会有一个Session ID,而且Client发送命令到Server端都需要这个Session ID,因为这个seesion id代表了你所打开的浏览器或者是移动设备的模拟器。所以你甚至可以打开N个Session,同时测试不同的设备或模拟器。Desired Capabilities,其实就是一个键值对,设置一些测试的相关信息来告诉Server端,我们需要测试iOS、还是Android,或者换是WebApp等信息。 Appium Server是Node.js写的,所以可以直接用NPM来进行安装 Appium Clients,Mac OS和Win下提供GUI,不需要装Node.js,方便测试人员操作 相关限制: 如果你在Windows使用Appium,你没法使用预编译专用于OS X 的.app文件,因为Appium依赖OS X专用的库来支持iOS测试,所以在Windows平台你不能测试iOS Apps。这意味着你只能通过在Mac上来运行iOS测试。 总结:在iOS部分是封装了UIAutomation;Android 4.2以上是用UiAutomator,Android 2.3 ~ 4.1用的是Instrumentation,也就说Appium同时封装了UiAutomator和Instrumentation。所以Appium拥有了以上几大框架的所有优点:跨App,支持Native

大班科学教案:十二生肖

活动名称:十二生肖 活动目标: 1.知道自己和亲人的属相,培养幼儿和家人之间的情感。 2.发展幼儿的观察力,培养幼儿简单的推理能力。 3.感知十二生肖所包括的12种动物、十二生肖的排列顺序,感知、了解十二生肖一年一种属相,12年一个轮回的规律。 活动准备: 1.教具:自制生肖钟、山洞大山的图片。 2.学具:蛋糕盒制作的钟面、十二生肖的图片.胶水等 3.知识准备:幼儿认识时钟。 活动重点:幼儿知道十二生肖的排列顺序。 活动难点:知道十二生肖每12年轮回一次。 活动过程: 一、导入出示生肖钟,引出课题,激发幼儿兴趣。 二、展开 1.了解十二生肖的12种动物,简单的感知其排列顺序,理解其含义。(1)请幼儿说出钟面上有多少种动物,为什么?我们来数一数,看看是不是12种。从哪开始数呢?老鼠第一?谁第二?谁第六?小兔第几?(2)小朋友当中有没有属“小老鼠”的?为什么说自己是属“小老鼠”的?(引出“属相”一词,丰富幼儿词汇)小朋友还知道有什么属相?(3) 小朋友的属相为什么有的是牛、有的是老鼠、不一样呢?(幼儿交流讨论)小结:同一年出生的孩子属相就一样,猪年生的

属猪,牛年出生属牛……一年一个属相。(4)结合生肖钟观察一共有多少种属相。小结:原来,钟面上的12种动物就是人的12种属相。 2.发现.感受十二生肖12年轮回一次的规律。(1)你还知道谁的属相?(请幼儿自由讲述自己亲人的属相)(2)想不想知道客人老师的属相?我们一起去采访好吗?(3)幼儿交流采访结果、(4)结合交流采访结果,引导幼儿思考:有的客人老师的属相和小朋友的一样,也有的老爷爷的属相和小朋友一样,这是怎么回事?(启发

幼儿结合“生肖钟”进行思考。鼓励幼儿说出客人老师的属相是以前轮回到的,小朋友的属相是以后轮回到的,属相是不停的轮回的,一年一种属相)(5)十二属相轮回一次要多少年?(6)小结:十二生肖12年一个轮回,一年一个属相,不停地向前的轮回。 3.讲解故事,帮助幼儿了解十二生肖排列的由来并初步熟悉其排列顺序。(1)十二生肖为什么会这么排队,你知道吗?(鼓励幼儿按经验讲述)(2)介绍一个神奇的关于体育比赛的故事,引导幼儿熟悉故事并复述故事。 三、结束和幼儿一起制造生肖钟。 1、小结:今天小朋友在生肖钟上发现了许多秘密:人的属相有12钟,属相12年轮回一次,一年一种属相。 2、今天小朋友自己也来做一个生肖钟。附故事:十二生肖在很久很久以前,玉皇大帝想给这十二种动物排个队,可

春节十二生肖

活动名称:十二生肖 教学领域:大班社会 教师:赵伏梅 单位:吉林省蛟河市实验幼儿园 活动目标: 1、使幼儿知道十二生肖的十二种动物的排列顺序。 2、知道十二生肖每十二年循环一次。 3、知道自己和父母的属相。 活动准备:十二种动物图案、课件、工艺品 活动过程: 1、出示漂亮的剪纸画、十二生肖图案,幼儿认一认。 2、谁能够把你最喜欢的小动物挑出来放在黑板上呢?(让幼儿挑选自己喜欢的小动物)。 3、刚才,小朋友说的真棒,我们知道可以用十二生肖来判断年龄,但是到底哪种动物在前,那种动物在后呢?教师讲述故事〈十二生肖》让幼儿给小动物们排队,看谁排得对。 4、提问幼儿:今年是什么年?那所有今年出生的人都属什么?明年是什么年? 5、现在那些小动物都藏起来了,想和我们小朋友一起做游戏,你们想不想做呀?游戏<找朋友> 6、老师这里还有一个问题想问小朋友,老师看看咱们班的哪个小朋友最聪明,好不好?

一个鼠年出生的小姑娘,她是属老鼠的,但是她的妈妈也是属老鼠的,那你说这个小姑娘和他的妈妈一样大吗?为什么?(请幼儿自己说出理由) 十二生肖排完了,又从头排起,就像时钟一样,走完了一圈又从头开始,这叫轮回。一个轮回,一个轮回,十二生肖不停地循环。老师的生肖是以前轮到的,小朋友的是以后轮到的。所以他们虽然不是同一年出生的,但是他们都属鼠的。。 7、欣赏十二生肖工艺品 十二生肖是我们中华民族特有的,在我们中国流传了几千年,下面我们一起来欣赏用十二生肖做出来的工艺品。十二生肖的工艺品生活中还有很多很多,小朋友平时再去留心注意一下,好吗? 8、幼儿制作,制作你喜欢的属相。(折纸、绘画、泥工等)

多功能数字钟电路设计

多功能数字钟电路设计 一、数字电子钟设计摘要 (2) 二、数字电子钟方案框图 (2) 三、单元电路设计及相关元器件的选择 (3) 1.6进制计数器电路的设计 (3) 2.10进制计数器电路的设计 (4) 3.60进制计数器电路的设计 (4) 4.时间计数器电路的设计 (5) 5.校正电路的设计 (6) 6.时钟电路的设计 (7) 7.整点报时电路设计 (8) 8. 译码驱动及单元显示电路 (9) 四、系统电路总图及原理 (9) 五、经验体会 (10) 六、参考文献 (10) 附录A:系统电路原理图 附录B:元器件清单

一、数字电子钟设计摘要 数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。 此次设计数字钟就是为了了解数字钟的原理,从而学会制作数字钟。而且通过数字钟的制作进一步的了解各种在制作中用到的中小规模集成电路的作用及实用方法。且由于数字钟包括组合逻辑电路和时叙电路。通过它可以进一步学习与掌握各种组合逻辑电路与时序电路的原理与使用方法。 二、数字电子钟方案框图 图1 数字电子钟方案框图

三、单元电路设计和元器件的选择 1. 6进制计数器电路的设计 现要设计一个6进制的计数器,采用一片中规模集成电路74LS90N芯片,先接成十进制,再转换成6进制,利用“反馈清零”的方法即可实现6进制计数,如图2所示。 图2

2. 10进制电路设计 图3 3. 60 进数器电路的设计 “秒”计数器与“分”计数器都是六十进制,它由一级十进制计数器和一级六进制计数器连接而成,如图4所示,采用两片中规模集成电路74LS90N串接起来构成“秒”“分”计数器。

ECLIPSE使用过程中的一些问题总结

1.Syntax error,parameterized types are only available if source level is1.5 在eclipse中菜单Window----preferences----java-----compiler把右边中的Compiler compliance level改为1.6 右击项目,修改properties,找到java compiler修改compiler compliance level为1.6 ------------------------------------------------------------------------------------------------------------------------------------ 2.Java的Swing入门,继承JFrame报错问题,在使用JFrame时出错 应该是你环境变量配置的问题,先确认下环境变量是否正确, 如果还有问题再看看下面的解决办法:Eclipse默认把这些受访问限制的API设成了ERROR。只要把Windows-Preferences-Java-Complicer-Errors/Warnings 里面的Deprecated and restricted API中的Forbidden references(access rules)选为Warning就可以编译通过。 -------------------------------------------------------------------------------------------------------------------------- Appium java环境报https://www.doczj.com/doc/c818024395.html,ng.NullPointerException错误(2014-12-0417:44:49) 标签:appium java https://www.doczj.com/doc/c818024395.html,ng.nullpointe分类:手机自动化测试 最近我在学习Appium java环境下的手机自动化测试,于是按照网上说的步骤搭建环境, 可是一步步地设置完成后,右击刚刚新建的测试用例,选择“JUNIT”运行的时候, 弹出一下对话框架,报“an internal error occurred during:‘Launching LoginTest’https://www.doczj.com/doc/c818024395.html,ng.NullPointerException”错误, 然后没有任何输出。这下傻了,只好去网上查一下,网上的问题是五花八门,各种尝试后发现没有解决掉问题,只好自己排查了。 排查问题 1,查看各位引用,Appium,selenium,junit的包都包含了,在Build path里面设置正确,此处没有问题。 2,APK的各种情况,版本安装是否正确,要测试的和提供的APK的版本是否一致。经查看,是一致的,此处Pass! 3,Capabilities各种参数的设置,对比了网上提供的实例和我以前用Python写的,运行成功的测试用例的设置, 发现完全一致,也没有任何问题。 4,现在只好查看一下Eclipse的问题了,查看WorkSpace下的.metadata文件夹下的.log文件,看一下是否存在问题。 经查看,发现有org.eclipse.jdt.junit相关的错误,于是我就在Eclipse下查找这个jdt.junit相关的插件, 发现没有找到,现在问题就定位到了,肯定是这个插件出问题了!! 解决问题

相关主题
文本预览
相关文档 最新文档