这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 用KEIL 进行仿真----BSRR BRR----不正常显示求解

共7条 1/1 1 跳转至

用KEIL 进行仿真----BSRR BRR----不正常显示求解

工程师
2012-06-26 16:39:46     打赏

程序功能就是按键  按住   相应LED 点亮,松开然后灭掉!   程序功能实现了,但在查看仿真时候,
GPIOE相应的
BSRR    和BRR 寄存器值不变,一直为0,大家有遇到这种情况的吗?给看看,什么情况呀!
仿真会出现这样的问题吗?



关键词: 进行     仿真     ----BSRR     BRR----     不正    

专家
2012-06-26 17:17:54     打赏
2楼
有何不妥么?

高工
2012-06-26 19:23:48     打赏
3楼
io口操作不止通过X_BSRR,X_BRR寄存器一种
得看你采用什么方式来操作GPIO口的吧

工程师
2012-06-28 00:12:59     打赏
4楼

#include "stm32f10x.h"
#include "LED.h"
void Key_Init(void);

int main(void)
{
   Led_TypeDef led=LED2;
  Key_Init();
 
LED_Init(led);
 while(1)
 {
   GPIO_SetBits  (GPIOE,  led) ;
 if(GPIO_ReadInputDataBit  (GPIOF,  GPIO_Pin_11)==0)
 {
   LED_Set(led, ON);
  }
 else
   //LED_Set(led, OFF);
   GPIO_SetBits  (GPIOE,  led) ;//这个函数不就是操作BRR的吗?仿真值不变,挺奇怪
 

 } 


}


工程师
2012-06-28 00:13:39     打赏
5楼

#include "stm32f10x.h"
#include "LED.h"
void Key_Init(void);

int main(void)
{
   Led_TypeDef led=LED2;
  Key_Init();
 
LED_Init(led);
 while(1)
 {
   GPIO_SetBits  (GPIOE,  led) ;
 if(GPIO_ReadInputDataBit  (GPIOF,  GPIO_Pin_11)==0)
 {
   LED_Set(led, ON);
  }
 else
   //LED_Set(led, OFF);
   GPIO_SetBits  (GPIOE,  led) ;//
 

 } 


}


高工
2012-06-30 04:48:01     打赏
6楼
void Key_Init(void);
LED_Init(led);

这俩函数的定义呢?

工程师
2012-06-30 06:50:48     打赏
7楼

在这里,你稍微帮着看一下
#include "stm32f10x.h"
void Key_Init(void)
{

   GPIO_InitTypeDef GPIO_InitStructure;
    /* GPIOD Periph clock enable */
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOF, ENABLE);
  /* Configure PF11 in GPIO_Mode_IPU  mode   上拉输入*/
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
  GPIO_Init(GPIOF, &GPIO_InitStructure);

}
void LED_Init(Led_TypeDef led)
{
      GPIO_InitTypeDef   GPIO_InitStructure;
   //RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);
     RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE, ENABLE);
     //RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOG, ENABLE);
     
      GPIO_InitStructure.GPIO_Pin=led;
      GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
      GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;//配置GPIO速度为50MHz
      GPIO_Init(LED_GPIO_PORT,&GPIO_InitStructure);//初始化LED相关的GPIO
     // GPIO_InitStructure.GPIO_Pin=GPIO_Pin_All;
  
      GPIO_Init(GPIOE,&GPIO_InitStructure);
      //GPIO_Init(GPIOA,&GPIO_InitStructure);

     
}


共7条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]