keil的软件逻辑分析仪使用教程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
keil的软件逻辑分析仪(logic analyzer)使用教程
在keil MDK中软件逻辑分析仪很强的功能,可以分析数字信号,模拟化的信号,CPU的总线(UART、IIC等一切有输出的管脚),提供调试函数机制,用于产生自定义的信号,如Sin,三角波、澡声信号等,这些都可以定义。
以keil里自带的stm32的CPU为例,对PWM波形跟踪观测,打开
C:\Keil\ARM\Boards\Keil\MCBSTM32\PWM_2目录下的stm32的Dome,第一步:进行仿真配置,如图:
(原文件名:1.jpg)
把开工程中的Abstract.txt文件有对工程的描述,PWM从PB0.8和PB0.9输出,稍后将它加入软件逻辑分析仪里。
The 'PWM' project is a simple program for the STM32F103RBT6 using Keil 'MCBSTM32' Evalua tion Board and demonstrating the use of PWM (Pulse Width Modulation) with Timer TIM4 .
Example functionality:
- Clock Settings:
- XTAL = 8.00 MHz
- SYSCLK = 72.00 MHz
- HCLK = SYSCLK = 72.00 MHz
- PCLK1 = HCLK/2 = 36.00 MHz
- PCLK2 = HCLK = 72.00 MHz
- ADCLK = PCLK2/6 = 12.00 MHz
- SYSTICK = HCLK/8 = 9.00 MHz
- TIM4 is running at 100Hz.
LEDs PB8, PB9 are dimmed using the PWM function of TIM4 channel3, channel4
The Timer program is available in different targets:
Simulator: - configured for software Simulator
MCBSTM32: - runs from Internal Flash located on chip
(used for production or target debugging)
第二、选择软件仿真
(原文件名:2.jpg)
第三、编译程序,如果程序没有错的话,将出现以下线框编译信息,然后进入调试,点出红色的“D"按,如下图所示
(原文件名:3.jpg)
第四步、打开软件逻辑分析仪图标,并把要观察的波形信号拉到逻辑分析仪里,如果进入调试状态下没有"sysbols"标签话,点击“View”菜单弹出来,从“Peripheral Register”里把要观察的(GPIOB_IDR输出的PWM信号会从这个寄存器反映出来)信号拖到逻辑析分析里,
(原文件名:4.jpg)
第五步、把不用的bit屏蔽掉,并按bit形式显示,配置如图
(原文件名:5.jpg)
第六步,点“GO”按钮进入全速运行,OK,PWM波形出来了,用IN和OUT可以调扫描时间,如下图
STM32学习心得笔记
憨牛电子
时钟篇
在STM32中,有五个时钟源,为HSI、HSE、LSI、LSE、PLL。
①、HSI是高速内部时钟,RC振荡器,频率为8MHz。
②、HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~16MHz。
③、LSI是低速内部时钟,RC振荡器,频率为40kHz。
④、LSE是低速外部时钟,接频率为32.768kHz的石英晶体。
⑤、PLL为锁相环倍频输出,其时钟输入源可选择为HSI/2、HSE或者HSE/2。倍频可选择为2~16倍,
但是其输出频率最大不得超过72MHz。
其中40kHz的LSI供独立看门狗IWDG使用,另外它还可以被选择为实时时钟RTC的时钟源。另外,
实时时钟RTC的时钟源还可以选择LSE,或者是HSE的128分频。RTC的时钟源通过RTCSEL[1:0]来选择。
STM32中有一个全速功能的USB 模块,其串行接口引擎需要一个频率为48MHz的时钟源。该时钟源只能
从PLL输出端获取,可以选择为1.5分频或者1分频,也就是,当需要使用USB 模块时,PLL必须使能,
并且时钟频率配置为48MHz或72MHz。
另外,STM32还可以选择一个时钟信号输出到MCO脚(PA8)上,可以选择为PLL输出的2分频、HSI、HSE、或者系统时钟。
系统时钟SYSCLK,它是供STM32中绝大部分部件工作的时钟源。系统时钟可选择为PLL输出、HSI或者HSE。系统时钟最
大频率为72MHz,它通过AHB分频器分频后送给各模块使用,AHB分频器可选择1、2、4、8、16、64、128、256、512分
频。其中AHB分频器输出的时钟送给5大模块使用:
①、送给AHB 总线、内核、内存和DMA使用的HCLK时钟。
②、通过8分频后送给Cortex的系统定时器时钟。
③、直接送给Cortex的空闲运行时钟FCLK。
④、送给APB1分频器。APB1分频器可选择1、2、4、8、16分频,其输出一路供APB1外设使用(PCLK1,最大频率36MHz),
另一路送给定时器(Timer)2、3、4倍频器使用。该倍频器可选择1或者2倍频,时钟输出供定时器2、3、4使用。
⑤、送给APB2分频器。APB2分频器可选择1、2、4、8、16分频,其输出一路供APB2外设使用(PCLK2,最大频率72MHz),
另一路送给定时器(Timer)1倍频器使用。该倍频器可选择1或者2倍频,时钟输出供定时器1使用。另外,APB2分频器还有
一路输出供ADC分频器使用,分频后送给ADC模块使用。ADC分频器可选择为2、4、6、8分频。
在以上的时钟输出中,有很多是带使能控制的,例如AHB总线时钟、内核时钟、各种APB1外设、APB2外设等等。当需要使
用某模块时,记得一定要先使能对应的时钟。
需要注意的是定时器的倍频器,当APB的分频为1时,它的倍频值为1,否则它的倍频值就为2。
连接在APB1(低速外设)上的设备有:电源接口、备份接口、CAN、USB、I2C1、I2C2、UART2、UART3、SPI2、窗口看门狗、