aleanking 发表于 2012-2-8 23:25:28

IO口读值问题

 #define GPIOA_BASE            (APB2PERIPH_BASE + 0x0800)

//"IO口操作,只对单一的IO口!"
//"确保n的值小于16! "
#define MEM_ADDR(addr)*((volatile unsigned long*)(addr))
#define BITBAND(addr, bitnum) ((addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)

发表于 2012-2-9 09:49:39

RE:IO口读值问题

1、你指的是外部中断?还是定时器中断?、
2、pucTemp + i这个在使用的时候应该使用,你可以使用仿真器仿真,看看数组里面存放的数据对不对,你读取的位置对不对。

aleanking 发表于 2012-2-9 12:20:39

RE:IO口读值问题

是外部中断;读值没问题啊,我通过串口发送,把两种方式读的值都发送出来看是对的,就是一用库函数版读值,再通过串口把数组的只发送出来,串口就不工作,就是一直停留在中断中,没有跳出来。我暂时还没有仿真器,看样子还真得买一个了,调的好纠结啊!!

发表于 2012-2-9 16:47:54

RE:IO口读值问题

用库函数的时候,记得要把中断标志位清除一下。可能是由于中断标志位没有清除,而总是跳不出中断。

火雷达 发表于 2012-2-10 08:51:47

回复:IO口读值问题

太复杂,路过:L
页: [1]
查看完整版本: IO口读值问题