Keil5仿真“示波器”查看引脚高低电平变化

1.设置仿真模式为“软件仿真”

使用“软件仿真”模式才可以使用仿真里面的“示波器”功能。“硬件仿真”模式暂时还不知道怎么用。
image.png

2.设置设置对应的GPIO引脚组ODR寄存器。

image.png
这里是GPIOC组引脚。当然,这里设置引脚的方式其实还有别的方法可以一步到位,这样就可以省略了下面配置第三步的操作了。这里只演示自己习惯的方法。

3.再次进行具体引脚的设置。

本次演示的引脚是GPIOC_0。
那如果我们以GPIOC_13为例,那就是要把"Shift Right"选项框那里填入“13”。以此类推
image.png

4.查看“示波器”的高低电平时间吗,检查是否与我们想要的效果一致

用鼠标点击高低电平的边沿,底下会有一个当前电平状态的持续时间进行显示。可以查看高低电平的持续时间
image.png

示例代码:
#include "stm32f10x.h" 

void Delay_ms(uint32_t n)
{	
	/*使用72Mhz作为系统时钟源*/
	while(n--)
	{
		SysTick->CTRL = 0; 			// 1、关闭SysTick才能进行后续配置
		SysTick->LOAD = 72000 - 1;	// 2、设置定时时间为1ms
		SysTick->VAL = 0; 			// 3、清除当前计数值和清空计数标志位
		SysTick->CTRL = 5;	//4、使能SysTick定时器开始工作,并使用时钟源为72Mhz的HCLK
		
		//检测SysTick->CTRL的第Bit16是否为1,若为1,则跳出循环!
		while ((SysTick->CTRL & 0x00010000)==0);//等待计数标志设置
	}
	
	SysTick->CTRL = 0; 		//5、关闭SysTick,不再定时。
}


int main (void)
{
	GPIO_InitTypeDef GPIO_InitStruct;
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);	//初始化GPIOC组时钟
	GPIO_InitStruct.GPIO_Pin  = GPIO_Pin_0;					//配置引脚
	GPIO_InitStruct.GPIO_Speed = GPIO_Speed_2MHz;			//配置引脚速度
	GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;			//推挽输出
    
	GPIO_Init(GPIOC, &GPIO_InitStruct);
	GPIO_SetBits(GPIOC,GPIO_Pin_0);		//先让LED熄灭
	
	while(1)
	{
		GPIOC->ODR ^= GPIO_Pin_0;	//电平翻转
		Delay_ms(1000);
	}
}
  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!要在Keil5仿真查看PWM波形,您可以按照以下步骤进行操作: 1. 打开Keil5软件,并创建一个新的工程或打开一个已有的工程。 2. 在工程目录下,找到您的PWM相关的源文件(例如,包含PWM配置和控制的.c文件)。 3. 双击打开该源文件,在代码编辑器中找到PWM相关的配置代码。 4. 在PWM配置代码的适当位置,添加一些用于输出波形的调试代码。 例如,您可以使用GPIO口来输出PWM波形,或者使用串口打印输出PWM的状态。 下面是一个示例代码片段,用于使用GPIO口输出PWM波形: ```c // 在PWM配置代码中添加以下调试代码 // 假设使用GPIO Port A的Pin 0作为输出引脚 // 设置GPIO Port A的Pin 0为输出模式 GPIOA->MODER |= GPIO_MODER_MODE0_0; while (1) { // 在PWM输出电平时,将Pin 0设置为电平 if (PWM_output_is_high()) { GPIOA->ODR |= GPIO_ODR_OD0; } // 在PWM输出低电平时,将Pin 0设置为低电平 else { GPIOA->ODR &= ~GPIO_ODR_OD0; } } ``` 5. 在Keil5中编译和烧录您的代码到目标设备。 6. 启动仿真器,并连接到目标设备。 7. 在仿真器中运行您的代码,并观察使用GPIO口输出的PWM波形。 您可以使用逻辑分析仪或示波器来观察和分析输出波形。 请注意,具体的步骤可能会因您所使用的目标设备和代码而有所不同。以上仅为一般性的指导,您需要根据实际情况进行调整和操作。希望对您有所帮助!如果还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值