插手珍藏夹
域名:www.kincony.com    www.agpgames.com       数据材料站 || 公司简介|| 汇款须知 || 汇款确认及留言 || 论坛 || 淘宝网店

PIC单片机快速入门(C言语版)——站长原创,如需引用请说明出处

    笔者曾经在2004年—2008年写下51单片机分析进修系统系列教程文章数十篇,良多读者伴侣经由进修之后曾经成功地跨入了51单片机的大门,遭到了泛博读者伴侣的好评,也让笔者感受很是愉快,在学完了51单片机之后,笔者将为大师引见一系列PIC单片机底子晓得与入门进修教程,为此特地写下“PIC单片机快速入门”一文,共同文中所讲的单片机进修、斥地设备,供给给进修者一个理论与实践相连系的平台,使泛博单片机初学者伴侣能够大概以最快的速度跨入PIC单片机的大门,文中讲述一些单片机常用的斥地设备,咱们该当若何去使用、操作它们。

    起首,咱们先来看一看,鄙人面的进修过程中将要用到的硬件设备有哪些,它们别离是:PIC编程器,ICD2仿真烧写器和加强型PIC测验考试板,实物如图所示,你只需要有一台电脑就能够进行进修和斥地了。三板在手,可谓是本钱足矣,进修起来够你用的了。至于一些难度较高的使用咱们在此先不作引见,说多了,反而会使问题复杂化。

pic programmer图1

    PIC编程器:如图1所示,用来将咱们在PC机上编好的法式烧写至单片机芯片中去,以完成法式的固化工作,经由咱们也称其叫“烧写器”,讲的是统一个东西,咱们要使用的PIC编程器支撑市道常见的芯片型号,如PIC16F877A,PIC16F876,PIC16F54,PIC12C508,PIC12F508,PIC16C65,PIC18F452,PIC18F6720等百余种PIC单片机芯片,相对于市场上出售的编程器,其代价曾经很是低廉了。

icd2.5图2

     ICD2仿真烧写器:如图2所示,用来提高咱们的软件斥地效率,完成芯片的在线仿真,一听到仿真器大师城市想到一个贵字,但咱们供给的仿真器相信大部门伴侣都能够承受,所以保举给大师。咱们在MPLAB IDE编程软件中设置好要仿真的芯片型号即可。

pic demo图3

    加强型PIC测验考试板(与PIC编程器、ICD2仿真烧写器共同使用):如图3所示,便当咱们完成各类单片机测验考试,如流水灯,数码管显示,继电器节制,发声测验考试,IIC总线通信等等,该当说足够进修使用的了。

    咱们预备好了进修PIC单片机的硬件设备后又一次需要预备好哪些软件平台呢?咱们完成软件斥地又需要完成哪些措施呢?

    咱们需要安装的软件次要有两个,别离是“MPLAB 集成斥地环境”和“PIC编程器烧写软件”。

    MPLAB 集成斥地环境(IDE)是一个分析性的设想平台界面,合用于使用Microchip PICmicro 和dsPIC 单片机进行嵌入式设想的使用斥地。咱们在这个软件界面中编写法式代码,并经由它将写好的源法式代码编译成方针代码,即HEX文件,同时共同硬件调试器、斥地板完成软件法式的调试工作,最终经由编程器将定型的方针代码写入到斥地板的单片机芯片中去。。

    起首,在配套光盘中找到MPLAB IDE安装文件,该文件也能够从Microchip网站下载,双击Install.exe文件按照带领安装完成即可。留意:此时MPLAB IDE软件只支撑使用汇编言语进行编程,咱们预备使用C言语来进行法式编缉,所以,又一次需要为MPLAB IDE软件安装一下C编译器插件,其具体安装方式由于文章篇幅有限,详见光盘内申明文件。

    其次,将光盘“PIC编程器驱动软件”目录复制到算计机硬盘上,这是咱们一会要使用的烧写软件,用来将咱们编好的法式烧入PIC单片机芯片内。此刻,咱们将PIC编程器插上USB线与电脑连接,系统提示发觉新硬件,要求用户指定驱动法式地址路径,咱们将其指定到配套光盘“USB驱动法式”目录,点击确定按钮后,系统完成为编程器USB驱动法式的安装。安装好后你的电脑会添加一个串口,如图4所示,这时编程器硬件就连接在这个USB转成的串口上。

usb图4

    “MPLAB 集成斥地环境”和“PIC编程器烧写软件”都安装完成后,咱们就能够进行法式编写和烧录工作了,以下咱们将与这些单片机斥地设备相连系来讲述具体的实践进修过程。

    咱们的一个测验考试是要用PIC单片机点亮测验考试板上的此中一只LED发光管。想用单片机来完成一些智能化的节制,这个是最简单的一个法式例子,以给大师一个感性的认识。在此,出于通俗易懂的角度出发,咱们使用PIC编程器与加强型PIC测验考试板共同来完成本次测验考试,力图用最简练的代码,最便当的操作编制,让大师领会到底该若何让单片机工作。本次测验考试,咱们使用的芯片为PIC16F877A,它涵盖了PIC16F***子系列的所有功能,出格适合初学者使用,它在PIC家族中的地位类似51家族中的S51或者S52,不外内部包含了更多的功能,比如内部集成为AD等特殊单元。

sch图5

    图5是跟加强型PIC测验考试板上跟LED节制相关部门的电路,咱们能够看到LED上串接的电阻是470欧姆,若是此时LED上的电压是2.0V,那么此时经由LED的电流则为(5V-2V)/470Ω=6.38mA,若是需要提高亮度,一般会电流节制在10mA摆布,则此时电阻该当选择(5V-2V)/10mA=300Ω,所以能够就近选择330Ω。

    电路曾经确定,然后便是连接到单片机的I/O口上,见图5,咱们能够看到LED的正极经由限流电阻连接到PIC单片机的I/O口,负极连接到了GND地线,因而要使LED发光,也便是使电流流过LED,只需要把I/O口置成高电平即可,所以最终咱们对LED的节制变成为对一个I/O口的节制,比如要点亮标号为“D11”的LED,便是把RC1口设置成高电平罢了,这便是完成方式。

    下面就起头写法式了,打开MPLAB IDE软件,选择File(文件)>New(新建),出现一个文本编纂窗口,在该窗口中输入以下C言语源法式:

#include <pic.h>

main()

{

TRISC=0X00; /*TRISC寄放器被赋值,PORTC每一位都为输出*/

while(1) /*轮回施行点亮发光二极管的语句*/

{

PORTC=0X02; /*向PORTC送数据,点亮第二个LED发光管*/

}

}

    这是一个最简单的PIC点LED的C法式代码,也但愿能给初学者伴侣们一个感性的认识,我已把能省略的语句尽量都省去了,能把每句话都看懂了,PIC的C法式最小框架你也就大白了。

    一行 #include <pic.h> 用于加载尺度库函数,如51单片机中的 reg51.h 库文件一样。

    main()是C言语中的主函数,一个C法式代码中,也只需一个main()主函数,法式便是从这里起头施行的。

    语句“TRISC=0X00;”用来设置RC口的输入、输出情况。

    while(1) 是死轮回语句,即循环往复地施行{ }内的语句体,如咱们此刻的法式中的传染感动便是不断地施行 PORTC=0X02; 这条语句。

    语句“ PORTC=0X02;”的功能则是给RC口赋值,即第二个引脚RC1为高电平,用“1”来暗示。

    申明:PIC系列单片机各类数据存储器都是以寄放器编制工作和寻址的。公用寄放器包罗了按时寄放器TMRO、选择寄放器OPTION(又称为项选寄放器)、法式计数器PCL、情况寄放器STATUS、间接寻址寄放器INDF和FSR、端口I/O寄放器(如PORTA、PORTB…)和相对应的端口I/O节制寄放器(又称为端口I/O数据标的目的寄放器,如TRIAS、TRISB…)、保持寄放器PCLATH和中缀节制寄放器INTCON等。咱们此刻临时只用到了TRISC和PORTC口寄放器。

    先建立文件夹D:\FirstPro,然后将上面输入的源法式保留到该文件夹,留意文件名为led.c。文件保留完成后,咱们能够发觉源法式编纂窗口中的法式字体颜色改变了,这些颜色能赞助咱们更好地阅读源法式,快速发觉输入错误的号令。文件保留后,咱们需要进行项方针建立,名目将文件机关起来以便进行编译,咱们选择菜单Project(名目)>new(新建),出现New Project(新名目)对话框,在对话框中,咱们将名目定名为MyPro,使用Browse 按钮,将名目放在刚才建立的FirstPro文件夹中。单击OK按钮,在MPLAB IDE 界面中咱们会看到已建立项方针的名目窗口,若是名目窗口未打开,请选择菜单View->Project。此刻,咱们需要将刚才建立好的源法式文件追加到名目中去,在此,源文件是必需添加的。其他文件,如头文件、库文件、链接描述文件,视项方针具体环境来确定能否追加。咱们此刻只需要将源文件led.c追加即可,在屏幕左面的名目窗口中找到Source Files节点,点击鼠标右键,在弹出菜单当选择Add Files,双击要添加的文件led.c 即可。

    名目和源法式建立完成后,咱们需要给名目设置好方针芯片型号和拔擢位。

    选择菜单Configure>Select Device ,在Select Device 对话框中,点device栏右边的下拉箭头,选择器件为PIC16F877A,留意后面带有字母“A”。(提示:PIC16F877A和PIC16F877是两个内部布局和功能不合的芯片,两个芯片不能间接替代)。设置完成后,点击“OK”即可,如图6所示。

setup图6

    设置拔擢位,选择菜单Configure->ConfigurationBits。经由点击 “Settings”栏中的文本,能够更改这些拔擢位,咱们将其做如图7所示拔擢。

mplab ide图7

    接上去,咱们要为源法式做一项编译工作,即发生方针文件,等会咱们要把该文件烧入到咱们的PIC16F877A单片机芯片中去。选择菜单中Project->Build All项,或者按快速键Ctrl+F10就能够完成编译工作了,这时,你会在led.c文件地址目录下发觉一个名为“led.hex”的文件,这便是咱们所用来完成烧写芯片工作时使用到的方针法式文件,该文件为16进制文件。

    咱们继续讲,咱们此刻曾经完成为软件法式的编制工作,下面咱们就来讲一讲,咱们的较后一道工序,即法式定形后,咱们若何将其烧到咱们的单片机芯片中去。

    打开PIC编程器烧写软件,软件运转前,该当先连接好编程器硬件,即插入USB线。退出运转时先封闭软件,再拔出 USB 线。起首,在一次使用前需要进行端口拔擢。经由“我的电脑-->硬件-->设备办理器”查看使用了哪个端口,然后在软件菜单当选择“文件”-->“选择端口”,输入端标语,如COM3,选择好当前,这时屏幕的中下方此中一栏显示连接的串口好以及软包装施行情况。

    然后在软件窗口右下角选择芯片型号为“16F877A”,点击“载入”按钮,选择刚才咱们曾经生成等待烧写的led.hex文件,按软件窗口右边的芯片插放图片,在锁紧座上插好方针器件。点击窗口下方“编程”按钮,起头编程,烧写完成后,弹出下面的窗口暗示烧写成功,不然会弹出响应的错误提示。OK,大功成功。至此,咱们曾经完成为从软件编写,直到烧写芯片的全数措施。必然很辛苦了吧:)下面就让咱们来看看咱们的功能吧,把刚才烧写好的PIC16F877A芯片插在加强型PIC测验考试板上,并接上外接电源,来看看板上的一个LED发光管是不是亮了。成果如图8所示,板上的一个LED发光管点亮,此刻咱们曾经分开了咱们的仿真器而使用的是单片机芯片。

demo图8

    笔者写到这里,整个测验考试、斥地措施曾经全数完成,虽然这是一个很简单的测验考试,但很大复杂的例子都是基于各类简单的道理之上。所有的测验考试方式、措施完全一样,只是法式代码变了。

    较后,笔者写下此文,但愿能够大概赞助泛博单片机初学者能够尽快入门,给大师一个感性的认识,最次要的是能够大概供给给大师一个测验考试的硬件环境以及软硬件相连系的实践性描述,以使添加单片机初学者的实践出手才能。咱们供给的试验板上本钱很是丰盛,能够做流水灯、数码管、蜂鸣器、键盘、继电器节制、IIC总线通信等测验考试,光盘上也都配有例程、测验考试中的一些视频操作录像及编程器、仿真器的全数驱动法式,以供大师便当进修,测验考试中的一些视频录像请见光盘“测验考试录像”下的视频文件。因而,你只需有一台电脑就能够进行进修、斥地了,相信只需你阐扬你的想象,必然能够将单片机阐扬出它更大的潜力。

以上部门内容转载于网上,如有涉及到版权问题,请即通知本人删除 ICP备05019516号
联系地址:浙江省杭州市西湖科技园西园七路3号4层 邮政编码:310011 Email:hificat@163.com xu169@sina.com
德律:0571-87615070 传真:0571-87615070 手机:13185018567 QQ:420951892 MSN:hificat@hotmail.com
杭州澳门新濠天地电子有限公司 版权所有 COPYRIGHT2003——2007 HANGZHOU KinCony ELECTRONICS CO.,LTD All rights reserved