[AVR单片机] 高分求助:AVR STUDIO6.0指定SRAM地址读写数据

[复制链接]
 楼主| 黄喉 发表于 2015-8-11 11:20 | 显示全部楼层 |阅读模式
最近用AVR STUDIO6.0做一个项目,需要把数据写入SRAM指定地址,还有从SRAM指定地址读出。无法实现,希望高人们给出代码实例帮忙解决一下。

要求:在SRAM的0X6A地址读写数据
芯片:ATMEGA8
编译环境:AVR STUDIO6.0
ccxlslr 发表于 2015-8-19 15:34 | 显示全部楼层
#define _MMIO_BYTE(mem_addr) (*(volatile uint8_t *)(mem_addr))

看看IO寄存器是怎么样定义的!
god54188 发表于 2015-8-24 16:04 | 显示全部楼层
本帖最后由 god54188 于 2015-8-24 16:09 编辑

在你的C 文件头部加一个 外部 申明
extern char read_reg();

然后写个汇编文件
.global read_reg

        read_reg:        
                   lds r24,$6a
                   clr r25
                   ret
                  

然后 C 里面直接调用 read_reg ,返回的就是 6A 的值。  具体参照atmel AVR1886 文件。
avrstudio 6 对于C 混合调用汇编,支持的很好。这个方法最简单了。 求打赏。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

35

帖子

1

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