[ZLG-MCU] LM3S101能不能采用BITBAND的方法,对IO口读写?

[复制链接]
3205|6
 楼主| ATmega16 发表于 2007-10-25 16:44 | 显示全部楼层 |阅读模式
LM3S101能不能采用BITBAND的方法,对IO口读写?
LPC900 发表于 2007-10-25 22:09 | 显示全部楼层

不可以

对GPIO的操作不能采用这种方法,建议直接调用Luminary驱动库。
 楼主| ATmega16 发表于 2007-10-26 09:22 | 显示全部楼层

可以

#define&nbsp;GETBITFIELD(addr)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(*((volatile&nbsp;bitfield32&nbsp;*)(addr)))&nbsp;<br />#define&nbsp;GETBIT(addr,b)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GETBITFIELD(addr).bit##b&nbsp;<br /><br />#define&nbsp;GETREG_GPIODATA(A,B)&nbsp;&nbsp;HWREG(A&nbsp;+&nbsp;(GPIO_O_DATA&nbsp;+&nbsp;(B&lt&lt&nbsp;2)))<br />#define&nbsp;GETBIT_GPIODATA(A,B)&nbsp;&nbsp;GETBIT(&GETREG_GPIODATA(A,1&lt&ltB),B)<br /><br /><br />#define&nbsp;TEST_PIN&nbsp;&nbsp;GETBIT_GPIODATA(GPIO_PORTB_BASE,4)&nbsp;&nbsp;//PB4<br />程序中就可以用TEST_PIN=1和TEST_PIN=0了<br /><br /><br />
逐风 发表于 2007-10-26 19:09 | 显示全部楼层

AT

应该是可以的在外设的bit_band区范围内都可以,书上不是有这样的范例么?<br />不过很少看到应用就是了呵呵!
 楼主| ATmega16 发表于 2007-10-27 09:24 | 显示全部楼层

多谢楼上指点

多谢楼上指点
王紫豪 发表于 2007-10-28 12:16 | 显示全部楼层

当然可以

位域属于标准c语言,跟硬件无关,只要不明说不支持,就是支持的。
逐风 发表于 2007-11-5 23:28 | 显示全部楼层

我做了测试

我做了测试,可以看到,不过GPIO要左移几位,可能导致你没看到,所以……
您需要登录后才可以回帖 登录 | 注册

本版积分规则

109

主题

229

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部