430F149单片机用IAR软件可以上载程序吗上载上来是2进制吗怎么能变成源代码

430F149单片机用IAR软件可以上载程序吗上载上来是2进制吗怎么能变成源代码,第1张

先答后面的,如果可以读出程序,那么读出的肯定是二进制的,因为芯片本身只会存储并执行二进制的程序。读出的程序可以用反汇编工具得到对应的汇编代码,但很难直接得到C语言的源代码。

再说用IAP上载程序的事,IAP是意思是在应用编程,指得是在用户在编写程序的时候设计一个自编程的功能,ISP的意思是在系统编程,一般指CPU芯片内部有芯片厂家的程序,专用于自编程,这两者都可以实现自我编程,但区别主要是IAP是最终用户自定的,但空芯片是不可以用的,而ISP是芯片厂家预定的,所以空片也可以用。所以,如果用IAP,当然可以上载程序,当然前提是你设计的IAP有这个功能。如果芯片中没有你的IAP程序,那么就不能用了。

首先要会用IAR啊, 设置,编译链接下载这些你是不是都很熟练了呢,即使不熟练,这个流程你能 *** 作了么?

然后,了解430上面都有哪些功能模块,比方说:IO口,AD,FLASH,TIMERAB等等。当然了,这只是了解。大体上看看。我觉得既然要用430了,51单片机应该学过吧。有51基础就会好很多啊。

第三,那些R1,R2,R3寄存器就不要看了,那些汇编就不要看了。不是不重要,而是可以暂时忽略。

第四,写一个基本的程序。我开始写的时候是,将看门狗关闭,然后设置时钟,然后在一个端口加上上拉的LED,配置引脚,使灯闪烁。(这一部分需要看430IO口配置寄存器,这些东西用到的时候,到书上查就行了)(如果连这部分程序都看不懂,写不出来,不是你的C语言不到家就是你对这个单片机太不了解!)

第五,就要考虑输入了,是要数字输入还是要用到AD模块呢。用到AD模块就需要对AD模块的东西看看。配置寄存器,初始化后的一些驱动程序编写(可以上网上找个现成的)。

可能你觉得我说的太浅显,那就没有办法了。和 梅园405 说的一样具体做还要靠自己。

#pragma section( "section-name" [, attributes] ) 作用是由程序指定创建一个段

一般默认段都是由编译器自动指定的 不过看你这样的写法 IAR的时候是没有默认段的 必须由编写者手动指定

比如#pragma section = "data"就是创建一个名字为data的段,

然后下面调用

data_ram = __section_begin("data");

来获取这个段的首地址以备其 *** 作

其他类似

关于pragma section的详细说明如下。 对于#pragma 预处理还有很多功能 感兴趣可以自行搜索

==================================================================================

#pragma section。创建一个段。

其格式为:#pragma section( "section-name" [, attributes] )

section-name是必选项,用于指定段的名字。该名字不能与标准段的名字想冲突。可用/SECTION查看标准段的名称列表。

attributes是可选项,用于指定段的属性。可用属性如下,多个属性间用逗号(,)隔开:

read:可读取的

write:可写的

execute:可执行的

shared:对于载入该段的镜像的所有进程是共享的

nopage:不可分页的,主要用于Win32的设备驱动程序中

nocache:不可缓存的,主要用于Win32的设备驱动程序中

discard:可废弃的,主要用于Win32的设备驱动程序中

remove:非内存常驻的,仅用于虚拟设备驱动(VxD)中

如果未指定属性,默认属性为read和write。

在创建了段之后,还要使用__declspec(allocate)将代码或数据放入段中。

例如:

//pragma_sectioncpp

#pragma section("mysec",read,write)

int j = 0;

__declspec(allocate("mysec"))

int i = 0;

int main(){}

该例中, 创建了段"mysec",设置了read,write属性。但是j没有放入到该段中,而是放入了默认的数据段中,因为它没有使用__declspec(allocate)进

行声明;而i放入了该段中,因为使用__declspec(allocate)进行了声明。

以上就是关于430F149单片机用IAR软件可以上载程序吗上载上来是2进制吗怎么能变成源代码全部的内容,包括:430F149单片机用IAR软件可以上载程序吗上载上来是2进制吗怎么能变成源代码、关于第一次用IAR 写msp430 f149的程序,该如何开始。。。、亲,我用的是IAR嵌入式编译程序,现不明白section=""是什么意思函数大体意思是复制ROM到RAM等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zz/9519771.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存