
首先要会用IAR啊, 设置,编译链接下载这些你是不是都很熟练了呢,即使不熟练,这个流程你能 *** 作了么?
然后,了解430上面都有哪些功能模块,比方说:IO口,AD,FLASH,TIMERAB等等。当然了,这只是了解。大体上看看。我觉得既然要用430了,51单片机应该学过吧。有51基础就会好很多啊。
第三,那些R1,R2,R3寄存器就不要看了,那些汇编就不要看了。不是不重要,而是可以暂时忽略。
第四,写一个基本的程序。我开始写的时候是,将看门狗关闭,然后设置时钟,然后在一个端口加上上拉的LED,配置引脚,使灯闪烁。(这一部分需要看430IO口配置寄存器,这些东西用到的时候,到书上查就行了)(如果连这部分程序都看不懂,写不出来,不是你的C语言不到家就是你对这个单片机太不了解!)
第五,就要考虑输入了,是要数字输入还是要用到AD模块呢。用到AD模块就需要对AD模块的东西看看。配置寄存器,初始化后的一些驱动程序编写(可以上网上找个现成的)。
可能你觉得我说的太浅显,那就没有办法了。和 梅园405 说的一样具体做还要靠自己。
(1)、C51语言中调用汇编语言程序;
C51语言调用汇编语言程序要注意以下几点:
1:在文件栏选中File Group和C51程序原文件,在配置文件选项中激活“产生汇编(SRC)文件,“编译(SRC)文件”和“创建工程(目标)时包含”三个选项。
2:根据选择的编译模式,把相应的库文件(如SMALL模式,库文件为KEIL\C51\LIB\C51SLIB)加入工程中。
3:在C51语言中必须声明需要调用的函数为外部函数。extern void DELAY(void);
4:在汇编语言程序中必须声明被调用子程序为公共子程序,在被调用的文件中还需要声明此文件是可从新定位的。
PUBLIC DELAY,DEL
DELAYY SEGMENT CODE
RSEG DELAYY
实例如下:
C51语言文件:
#include "reg51h"
extern void DELAY(void);
extern void DEL(void);
void main(void)
{
P1=0x00;
DELAY();
DEL();
P1=0xff;
}
汇编语言文件:
PUBLIC DELAY,DEL
DELAYY SEGMENT CODE
RSEG DELAYY
DELAY: MOV R2,#3H
DJNZ R2,$
RET
DEL: MOV R3,#03H
DJNZ R3,$
RET
END
(2)、C51语言中嵌入汇编程序;
在C51语言中嵌套使用汇编语言编写程序要注意以下的几个问题:
1:在文件栏选中File Group和C51程序原文件,在配置文件选项中激活“产生汇编(SRC)文件,“编译(SRC)文件”和“创建工程(目标)时包含”三个选项。
2:根据选择的编译模式,把相应的库文件(如SMALL模式,库文件为KEIL\C51\LIB\C51SLIB)加入工程中。
3:用#pragma asm,和#pragma endasm语句包含嵌入的汇编语言程序。
实例如下:
#include "reg51h"
void delay(void);
void main(void)
{
void delay(void);
P1=0x00;
#pragma asm
MOV R3,#08H
DJNZ R3,$
#pragma endasm
P1=0xff;
}
void delay(void)
{
#pragma asm
MOV R4,#08H
DJNZ R4,$
#pragma endasm
}
1、Project -> Options ->C++ Compiler -> Preprcessor选项卡下 defined symbols加入: VECT_TAB_SRAM ;
2、Project -> Options -> Linker, 修改链接文件为RAM方式,比如修改为 $PROJ_DIR$\stm32f2xx_sramicf;
3、Project -> Options -> Debugger -> download 选项卡,把use falsh loader前面的勾去掉;
4、把板子上的BOOT0和BOOT1跳线到RAM启动方式(全高),网上有人说这个不影响调试,根据在GCC下的经验,这个貌似影响会SP指针,有的启动文件开始没有对SP指针初始化,而是自动从0地址读取,为了保险起见还是跳线到RAM方式。
以上就是关于关于第一次用IAR 写msp430 f149的程序,该如何开始。。。全部的内容,包括:关于第一次用IAR 写msp430 f149的程序,该如何开始。。。、IAR环境下 C语言中怎么嵌入汇编写延时程序、STM32在IAR环境下怎样实现RAM里调试程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)