MPLABIDE使用方法Word文件下载.docx
《MPLABIDE使用方法Word文件下载.docx》由会员分享,可在线阅读,更多相关《MPLABIDE使用方法Word文件下载.docx(20页珍藏版)》请在冰豆网上搜索。
也可以直接输入工程名和存放路径。
之后单击“下一步“,进入下面的窗口:
这一步可以将已经编辑好的源文件添加到新建的工程里面,但也可以不添加,直接点击“下一步”,这相当于创建一个空白的工程。
这里直接点击“下一步”,如下图:
这是汇总窗口,可以检查上面各个选项的设置是否正确;
若检查准确无误,则点击“完成”,这样就成功新建了一个空白的工程。
2、编辑源文件
单击“File”→“New”或单击快捷菜单即可新建一个空的源文件。
输入C语言源代码,如下图:
点击“File”→“Save”或单击快捷键保存,如下图:
保存路径应选择刚才新建的工程,这里保存文件名定为new.c,然后点击“保存”。
如果保存成功,则源代码里面的关键字会高亮显示,如下图:
把源文件添加到工程里面,如下图:
鼠标放在“SourceFiles”上,单击右键,选择
“AddFiles”。
点击“AddFiles”后,出现下面的窗口:
选择刚才编辑好的源程序new.c,单击“打开”。
这样源程序就成功添加到工程里面了。
添加成功后如下图所示。
3、编译
编译前先要设置编译环境。
单击“Project”→“BuildOptions”→“Project”,或者单击快捷键,进入编译环境设置对话框,如下图:
这里要设置三个编译环境(或者说是搜索路径),分别是:
IncludeSearchPath、LibrarySearchPath和LinkerScriptSearchPath(即头文件搜索路径、库文件搜索路径和链接文件搜索路径),他们分别位于C18编译器安装目录下的h文件夹、lib文件夹和LKR文件夹下。
这里以头文件搜索路径的设置为例,其它两个路径的设置
与之类同。
在“Showdirectoriesfor”里边选择“IncludeSearchPath”,点击“New”,如下图:
点击,选择c18安装目录下的h文件,然后单击“确定”,如下图:
三个编译环境全部设置完了以后,如下图:
单击“应用”,然后“确定”即可。
然后就可以编译源程序了。
选择“Project”→“BuildAll”,或点击快捷图标。
如果源程序没有语法错误且编译环境设置无误,则会出现下面的信息:
这说明编译成功。
4、调试
这里使用ICD2在线调试。
连接好ICD2,并给开发板上电,然后点击“Debugger”→“SelectTool”→“1MPLABICD2”,如下图所示:
如果操作成功,则会出现以下提示信息:
上一步操作成功后,点击“Debugger”→“Connect”,如下图:
上一步操作成功后,点击“Debugger”→“Program”,如下图:
如果操作成功,则出现以下提示信息:
这时已成功进入在线调试环境,可以进行全速运行(“Debugger”→“Run”或快捷图标)、单步运行(“Debugger”→“Animate”或快捷图标)和设置断点(“Debugger”→“Breakpoints”或快捷图标)等操作。
5、下载运行
调试通过后,可以把程序烧写(也称作下载)到单片机里面。
点击“Programmer”→“SelectProgrammer”→“2MPLABICD2”,如下图:
然后点击“Programmer”→“Program”或点击快捷菜单,即可把程序烧写到单片机里面。
若操作成功,则会显示以下提示信息:
点击快捷菜单(ReleaseFromReset)即可看到程序的运行效果。
测试工程实例:
跑马灯
1实验原理
在APP001开发板上,八个红色发光管D1—D8通过开关DSW3连接到PIC18F452单片机的PORTD[0:
7]上,如下图:
跑马灯运行电路设计图
当DSW3处于“on”状态且单片机端口D的某一位为1时,相应的发光二极管就会点亮。
通过对端口D的每一位循环轮流给“1”,就可以循环点亮LED,即实现跑马灯的效果。
PORTD是一个双向端口,通过给端口D的方向寄存器TRISD赋值1或0,可以设置PORTD为输入或输出,即:
单片机端口D的某一位为1时,相应的发光二极管就会点亮。
当最末位的被点亮时,再将“1”赋给第一位端口,每个二极管在点亮后设置一定的延时,从而使得效果更加明显清楚。
PORTD是一个双向端口,通过给端口D的方向寄存器TRISD赋值1或0,可以设置PORTD为输入或输出,
TRISD[i]=0:
PORTD[i]=output
TRISD[i]=1:
PORTD[i]=input
每个端口有三个用于操作的寄存器。
这些寄存器分别是:
•TRIS寄存器(数据方向寄存器)
•PORT寄存器(读取器件引脚的电平状态)
•LAT寄存器(输出锁存器)
TRISx寄存器控制位决定与该I/O端口相关的各个引脚是输入引脚还是出引脚。
若某个I/O引脚的TRIS位为“1”,则该引脚是输入引脚。
若某个I/O引脚的TRIS位为“0”,则该引脚被配置为输出引脚。
通过PORTx寄存器访问I/O引脚上的数据。
读PORTx寄存器是读取I/O引脚上的值,而写PORTx寄存器是将值写入端口数据锁存器。
在对I/O引脚电平驱动的值进行“读—修改—写”操作时会用到数据锁存器(LAT寄存器)。
在具体使用各I/O端口时,可参考数据手册,对寄存器赋值。
开始
初始化
点亮第一个个个
点亮下一个
最右端?
是
跑马灯程序流程图
2、设计步骤
(1)、打开MPLABIDE开发环境,新建一个C语言工程;
(2)、新建源程序,输入代码,编译、调试、下载;
(3)、观察实验效果,程序开始时运行跑马灯,注意开关DSW3都处于“on”状态。
3、源程序代码及注释
#include<
p18f452.h>
//头文件,使用p18f452单片机
#pragmaconfigOSC=HS//晶振选择HS模式(高速外部模式)
#pragmaconfigLVP=OFF//关闭低电压保护
#pragmaconfigWDT=OFF//关闭看门狗
//延时子函数,延时时间256*256*k*指令周期
//由于选择HS模式,APP001的晶振为16MHz,指令周期为四分之一振荡周期,//即0.25us
voiddelay(unsignedchark)
{
unsignedchari,j,m;
for(i=255;
i>
0;
i--)
for(j=255;
j>
j--)
for(m=k;
m>
m--);
}
//端口D初始化子程序
voidinitial_PD(void)
PORTD=0x00;
//端口D输出0
LATD=0x00;
//端口D输出锁存器清零
TRISD=0x00;
//端口D方向寄存器清零,即设置D为输出
//主函数,控制LED循环点亮
voidmain(void)
unsignedchari,j;
initial_PD();
//初始化端口D
i=0x80;
//控制LED循环点亮的变量
while
(1)//程序的主体是一个死循环
{
if(i==0x80)//最后一个灯亮时,转到第一个灯亮
i=0x01;
else//下一个灯亮
i=i<
<
1;
PORTD=i;
delay(3);
//延时,保证每个灯点亮的时间不至于太短
}
}
如有侵权请联系告知删除,感谢你们的配合!