查看:
3113
|
回复:
5
|
STM32 GPIO 问题求助
|
|||
|
发表于2017-08-29 10:13:47
|
显示全部楼层
1#
电梯直达
在一个SRAM读写设备上,我将 PA0-PA7 设置为A0-A7 PB0-PB7 设置为A8-A15 PB8-PB15 设置为D0-D7 PA8,PA9,PA10 设置为WR CS OE #define SET_ADDRESS(_ADR) GPIOA->BSRR = (u32)(0x00FF0000); GPIOA->BSRR = (u32)(((_ADR)>>0)&0x000000FF);\ GPIOB->BSRR = (u32)(0x00FF0000); GPIOB->BSRR = (u32)(((_ADR)>>8)&0x000000FF) #define DATA_READ(_VAR) _VAR=(((GPIOB->IDR)&0xFF00)>>8) #define DATA_WRITE(_VAL) GPIOB->BSRR = (u32)(0xFF000000); GPIOB->BSRR = (u32)(((_VAL)<<8)&0x0000FF00)当我顺序读取数据的时候,一切都正确,但是当我写入数据的时候,数据不知道写哪里去了。比如写入008 58,结果实际不知道写哪个地址去了,008读出来还是原来的数据 最奇怪的是,在keil调试模式写入数据,写入的数据又全部正确,比如写入 在008 写入 58,实际写入以后读取出来也是 008 变成58了 |
|||
|
发表于2017-09-14 20:43:40
|
显示全部楼层
6#
定义的变量长度不够或是指针没有类型不对?
|
|