导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[jamesdhxy][求助]怎么把C函数指令地址定义到汇编文



No.53826
作者:jamesdhxy
邮件:jamesdhxy@sina.com
ID:131370
登陆:1次
文章数:1篇
最后登陆IP:
最后登陆:2009/6/10 10:45:39
注册:2009/6/10 10:45:39
财富:100
发帖时间:2009/6/10 12:57:37
发贴者IP:222.129.34.234
标题:jamesdhxy:[求助]怎么把C函数指令地址定义到汇编文件中间空余的部分去,请求指点
摘要:No.53826[求助]怎么把C函数指令地址定义到汇编文件中间空余的部分去,请求指点 用汇编做主程序运行,调用C写的函数。现在汇编调用C函数和他们之间传递参数都没什么问题,但是C函数的指令空间地址超了存储空间范围,结果片上运行时一调这个C函数整个程序就跑飞了,然后单片机就复位回到0000h开始。

我用的SST的51单片机,程序空间是从0000h到FFFFh,我定义的从0000h到5FFFh是单片机运行用的程序存储空间,从6000h到BFFFh是备份程序空间,不写入运行用的程序,后边的是当Flash用,所以不管汇编还是C程序都放在6000h以前的空间。汇编代码在地址上分成两部分,主要运行的部分从0000h到4600h,中间4600h到5500h是空白的,后边5500h到5FF4h这块地址上是一部分固定地址的代码,C函数只能放在4600h到5500h之间空白的地址段上。

汇编文件是一个.A51文件,C函数文件是一个.C文件,再加上头文件一共是3个文件,如果我不指定C函数的地址,那么连接器就把前边的A51主程序的固定 ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:16毫秒 最大:5186毫秒 查询6次