1回答

0收藏

跪求高手指导:刘凯老师STM32视频位绑定仿真出错,求指导.

STMCU STMCU 2253 人阅读 | 1 人回复 | 2015-08-05

学习刘凯老师的视频。在位绑定仿真的时候出现了错误“*** error 65: access violation at 0x0441018C : no 'write' permission”
输出无法变成“1”,我是按照刘凯老师的程序进行编写,可以说是一模一样,不知道这样的情况如何解?请高手大师给条明路,谢谢
错误见图片。抄都抄不到一百分,这叫我情何以堪啊!!
#include "stm32f10x.h"
#include "stm32f10x_gpio.h"
int main(void)
{
   
    //0x4200000 +(A-0x40000000)*32+n*4
   u32 *PAO3 = (u32 *)(0x4200000 +(0x4001080C-0x40000000)*32+3*4);
     //1.pa.0-pa.7 输出 50 pa.8-pa.15输入
   GPIOA ->CRL = 0x33333333;
   GPIOA ->CRH = 0x44444444;
   //2.输入状态反映到相应引脚输出
   while(1)
   {        
   if((GPIOA->IDR & 0x0100) == 0x0100) GPIOA->BSRR= 0x01;
   else   GPIOA->BRR = 0x01;
    if((GPIOA->IDR & 0x0200) == 0x0200)   GPIOA->BSRR=  0x02;
   else  GPIOA->BRR = 0x02;
    if((GPIOA->IDR & 0x0400) == 0x0400)   GPIOA->ODR =GPIOA->ODR |  0x04;
   else   GPIOA->ODR = GPIOA->ODR & (~0x04);     
    if((GPIOA->IDR & 0x0400) == 0x0800)  *PAO3=1;
     //GPIOA->ODR =GPIOA->ODR |  0x08;
   else                  *PAO3=0;                  
    //GPIOA->ODR = GPIOA->ODR &(~0x08);
    if((GPIOA->IDR & 0x1000) == 0x1000) GPIOA->ODR =GPIOA->ODR |  0x10;
   else GPIOA->ODR = GPIOA->ODR &(~0x10);
    if((GPIOA->IDR & 0x2000) == 0x2000) GPIOA->ODR =GPIOA->ODR |  0x20;
   else GPIOA->ODR = GPIOA->ODR &(~0x20);
    if((GPIOA->IDR & 0x4000) == 0x4000) GPIOA->ODR =GPIOA->ODR |  0x40;
   else GPIOA->ODR =  GPIOA->ODR &(~0x40);
    if((GPIOA->IDR & 0x8000) == 0x8000)    GPIOA->ODR =GPIOA->ODR |  0x80;
   else         GPIOA->ODR = GPIOA->ODR &(~0x80);
   }
// return(1);
}

评分

参与人数 1与非币 +5 收起 理由
loveeeboard + 5 三周年铜板双倍!

查看全部评分

分享到:
回复

使用道具 举报

回答|共 1 个

倒序浏览

沙发

men3002

发表于 2015-8-5 21:43:49 | 只看该作者

截图,请大家帮忙看看,谢谢

NOTOK.JPG (297.09 KB, 下载次数: 20)

NOTOK.JPG
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条