搜索
bottom↓
回复: 0

想请教马潮老师一些问题是关于GCC AVR 嵌入汇编的问题

[复制链接]

出0入0汤圆

发表于 2011-8-4 11:04:49 | 显示全部楼层 |阅读模式
公司要我把一段M8汇编代码改为C,没有任何资料就只有5K左右的汇编代码(加注释)、一些英文注释、一电路图、连主芯片数据手册都没有(这是其他公司提供的方案)
汇编里的数据(EEPROM RAM FLASH)都用ORG指令定位的。
由于只改系统中的一部分,也没有协议文档所以数据位置最好不要改变(我是这么认为的)
这就涉及到数据定位的问题,在网上找了点资料看了一下,好像就IAR提供定位
我用的是GCC,我是这样想的用内嵌汇编的方式定位数据,然后在C中引用汇编标号
现在有两个问题
第一如何将整个汇编写的.inc文件嵌入到C语言呢
这样可以吗?
这是 eeprom.inc文件
; *************************************
; **                                 **
; **  E E P R O M     S E G M E N T  **
; **                                 **
; *************************************
.eseg
.org        0
NON_VOLITAL_BEGIN:
IMAGE_SELECTION:
        .db                        0
MAC_ADDRESS:       
        .db                        0x00,0x09,0x8b,0x00,0x92,0x14
        .db                        0,0                                        ; Pad it out so that it is a constant

LOF_STORAGE:       
        .dd                        0

TIME_BOMB:
        .db                        0
RESET_COUNT:
        .db                        0

NON_VOLITAL_END:

.org        0x80
        .db                        "Generic init and MAC setup on +++ Thu Jul 26 13:55:59 PDT 2007 ..."

我把它整体放倒#asm("xxxxxxx")或者一句一句的放到#asm("xxxxxxx")再改成.h文件可以吗?
如果可以那
第二个问题:我如何在我的C程序中引我汇编中的标号(地址)如IMAGE_SELECTION: NON_VOLITAL_END:等?
RAM中定位的数据也可以这样用吗?
如:
.dseg
.org        0x60

single_step_debug: .byte 1                        ; True if single record processing is active - debugging only
ignore_unsolicited: .byte 1                        ; True if we ignore unsolicited message queue

is_valid:        .db        0

clink_addr_0:        .db        0
clink_addr_1:        .db        0
clink_addr_2:        .db        0
clink_addr_3:        .db        0
就是在C程序中引用clink_addr_0;clink_addr_;等作为地址

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-23 20:33

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表