打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
PIC单片机的入门

  介绍PIC微控制器,概述功能和简单的第一个项目!

在上一篇文章中,我们研究了不同的微控制器在市场上以及每个人如何拥有自己的优势/劣势。本文通过深入了解PIC单片机并介绍如何入门来开始我们的PIC单片机系列。

您需要的东西

要开始使用PIC单片机,您需要一些硬件和软件。程序员可能很昂贵(对于官方PICKIT3),但在线资源表明PK3通用程序员(开源)也可以正常工作(~20英镑)。

所有软件我们将使用的将是免费的(即使是商业用途),但XC8编译器不会像付费版本那样优化代码。尽管如此,我每天都免费使用XC8并且对此并不感到失望!程序员的好处是你只需要一个,它将完成大部分(如果不是全部)PIC项目。

Windows 7或更高版本的PC(理想情况下)

PIC编程器(PICKIT3克隆就足够了)

PIC16F819

5.6K电阻和680欧姆电阻

LED

电线

MPLAB X - 下载页面 - 下载链接

XC8 - 下载页面 - 下载链接

关于PIC微控制器的重要信息

所有PIC都有需要连接的电源引脚(VDD和VSS)

所有PIC都有需要连接到引脚头的编程引脚

除非数据表另有说明,否则未使用的引脚通常可以保持未连接状态。

许多设备可以提供宽电压电源(通常为3.3V至5V)

我们将使用的PIC将是PIC16F819。为什么?那么,就外设,引脚数和价格而言,PIC16F819可以说是最好的器件之一!虽然这款芯片可能会花费几美元,但Farnell,Digi-Key和Mouser等分销商可能只需2美元。

PIC16F819的主要特性

那么在PIC16F819上可以找到哪些功能?

内部振荡器(8MHz)

16个I/O引脚

模数转换器

三个定时器(2个8位/1个16位)

捕获,比较,PWM

SSP端口(SPI和I2C

宽电压范围(2V至5V)

看门狗定时器

这些功能允许PIC16F819在许多项目中工作,但目前我们只会利用I/O引脚来转LED开和关!但是,一旦您开始习惯微控制器,您将很快使用所有这些功能来生成丰富的项目。那么芯片看起来是什么样的,引脚做了什么?下图显示了采用18引脚DIP封装的PIC16F819以及每个引脚可以执行的操作。

电路

PIC器件使用一个非常简单的编程头,由5或6个引脚组成。所有PIC均使用MCLR,VDD,VSS,PGD和PGC引脚,但较旧的器件可能不使用PGM引脚。在我们查看基本电路之前,让我们先看看PICKIT3本身:

我们测试的目的是让PIC闪烁一个LED。因此,我们需要将PIC连接到LED和PICKIT3,并提供所需的所有无源元件,以实现这一目标!

如何安装MPLAB X和XC8

在我们编程之前PIC,我们需要安装MPLAB X和XC8。

MPLAB X是一个IDE(集成开发环境),提供编写PIC项目所需的所有工具,包括颜色编码的文本编辑器,调试控件,内存视图,设备配置等等。

XC8是C编译器,它允许我们使用C编程语言设计PIC16和PIC18范围的程序。安装XC8时,MPLAB X将检测XC编译器并允许我们使用XC8创建项目,而无需设置复杂的构建信息(这就是IDE非常重要的原因)。

安装XC8和MPLAB时,确保勾选“添加到路径”框,这样无论XC8在哪里结束,MPLAB X仍然可以找到它。

确保启用免费安装XC8时的选项。

启用所有这些选项!

创建PIC16 C项目

安装完所有软件并制作电路后,是时候了首先将PICKIT3通过USB端口连接到计算机。在继续之前,请确保Windows识别PICKIT3,因为如果没有,那么MPLAB X也不会。您将知道它已经有效,因为Windows将创建一个“设备已成功安装”的气泡/弹出窗口。完成此操作后,首先加载MPLAB X。

加载MPLAB X后,可以使用向导(推荐选项)创建新项目。导航到文件》新建项目,然后在弹出的窗口中选择“独立项目”,然后单击“下一步》”。

下一个窗口要求设备。在列表中选择PIC16F819,然后单击“下一步》”。

选择设备后,系统将询问您要使用的编程器工具。选择你拥有的工具,但你可能会使用PICKIT3(推荐)。

现在选择XC8编译器作为项目的编译器。

最后一步是为项目命名并选择文件夹位置。默认情况下,MPLAB X将项目放在项目文件夹中,并为每个项目分配一个唯一的文件夹。在本教程中,我们将调用我们的项目“FirstProject”。

我们的项目已经创建,现在可以编程了。但在我们开始输入代码以使LED闪烁之前(仅用于演示目的),我们需要告诉MPLAB X配置PICKIT3以输出电路的功率。如果我们不这样做,PICKIT3将无法检测PIC,因为没有电源! 这可以说是初学者最常见的错误!如果没有功能那么PIC无法工作!

为了让PICKIT3提供电源,我们首先转到文件》项目属性

下一个任务是确保正确选择了PICKIT3。为此,请确保在列表中选择了PICKIT3序列,然后从左侧列表中选择PICkit 3.

在此页面上,转到“选项类别”下拉列表并选择“电源”。在此窗口中,选中“PICkit 3的电源目标电路”复选框,并确保电压电平设置为5.0(5V)。单击“应用”,您的PIC现在将有电,如果已正确连接,则MPLAB X将无需查找和编程您的设备!

下一个任务是输入将要生成的代码我们的设备闪光!首先,转到文件》新文件,然后在弹出的窗口中选择C》 C主文件。选择后,选择下一步。

下一个任务是命名这个文件,所以现在只需将其命名为main并单击Finish。

MPLAB X确实有它的时刻,这就是其中之一。尽管创建了一个新的主文件,MPLAB还没有将它添加到我们的项目中,所以我们需要添加这个文件才能编译。右键单击“源文件”,然后选择“添加现有项。..。..”。在打开的对话框中,选择我们创建的main.c文件,该文件现在将成为我们项目的一部分。

下一个任务我们的测试是将一些代码放入我们的主文件中,这将使LED闪烁。本文不会看C是如何工作的,也不会看具体细节,因为这只是一个介绍,但代码的工作原理应该有点自我解释。将以下代码复制到主文件中(在复制此代码之前删除主文件中的所有内容)。保存文件,然后单击绿色箭头“运行项目”。

假设没有构建错误,您应该看到代码编译,程序员连接,以及LED闪烁的开启和关闭。而已!您刚刚完成了第一个微控制器PIC项目!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉

1人收藏
分享:

评论

请按住滑块,拖动到最右边

相关推荐

PIC单片机实现AD转换的设计方案

AD转换就是模数转换。顾名思义,就是把模拟信号转换成数字信号。主要包括积分型、逐次逼近型、并行比较型....
发表于 06-19 16:07 · 596次 阅读

pic单片机程序问题的解决办法?

自己刚入门PIC,24fj256ga108的单片机,我写了程序,控制8个继电器分别导通电路的,但是程序烧写到单片机中,无法使电路按照我...
发表于 06-11 09:04 · 21次 阅读

PIC单片机与MCS-51单片机有什么区别

总线结构:MCS-51单片机的总线结构是冯-诺依曼型,计算机在同一个存储空间取指令和数据,两者不能同....
发表于 05-14 10:08 · 177次 阅读

基于PIC单片机的相干光通信系统设计

引言
发表于 05-02 08:00 · 736次 阅读

基于PIC单片机的相干光通信系统设计

相干光通信的理论和实验始于80年代。由于相干光通信系统被公认为具有灵敏度高的优势,各国在相干光传输技....
发表于 04-17 15:17 · 589次 阅读

如何防止PIC单片机被解密

  谁来阐述一下如何防止PIC单片机被解密?...
发表于 04-14 16:42 · 215次 阅读

基于PIC单片机的厨房电器设备的智能控制设计方案解析

随着智能家电控制技术的不断发展,具有多功能和智能化的厨房控制器成为厨房电器设备发展的主流。
发表于 04-08 15:27 · 172次 阅读

基于PIC单片机的厨房设备智能组合控制设计

系统以PIC单片机作为主控制芯片,选用VFD(Vacuum Fluorescent Display)....
发表于 04-07 16:07 · 147次 阅读

基于PIC单片机的4×4行列式键盘系统设计方案解析

行列式键盘的接法比独立式键盘的接法复杂,编程实现上也会比较复杂。但是,在占用相同的I/O端口的情况下....
发表于 04-03 16:04 · 240次 阅读

PIC单片机的各种清零指令解析

1.寄存器清零指令实例:CLRW;寄存器W被清零说明:该条指令很简单,其中W为PIC....
发表于 04-01 15:51 · 318次 阅读

PIC单片机键盘系统的设计方案解析

行列式键盘的工作方式是先用列线发送扫描字,然后读取行线的状态,查看是否有按键按下。键盘部分提供一种扫....
发表于 03-27 14:36 · 201次 阅读

请教PIC单片机的问题

请教PIC问题                        &...
发表于 03-26 15:28 · 269次 阅读

PIC单片机对机器人的控制程序设计

在整个控制中,组合的动作很多,当所有动作定位都通过光电开关控制时,在程序编写上就有一些问题。如要求左....
发表于 03-25 15:24 · 195次 阅读

PIC单片机芯片在电涡流传感器温度补偿中有怎么样的应用

目前,国际上新型传感器正从模拟式的数字式、从集成化向智能化的方向发展。智能化集成温度传感器于20世纪....
发表于 03-21 11:57 · 182次 阅读

利用PIC单片机控制步进电机控制系统的方法概述

步进电机是一种离散运动的装置,它和现代数字控制技术有着紧密的本质的联系。步进电机亦是一种将电脉冲转化....
lyj159 发表于 03-18 16:14 · 1796次 阅读

如何移植使用EZBL,其中ezbl_lib.a的作用是什么

我在使用ex_boot_uart时候,看到里面有个文件ezbl_lib.a,但是打不开,请问群内大神,这个文件是干嘛用的,影响Bootloader的移植...
发表于 03-10 10:33 · 209次 阅读

PIC16F874单片机为中心处理器的直流电机调速设计

本调速系统采用PIC16F874单片机作为中心处理器,充分利用了PIC16F874单片机捕捉、比较、....
发表于 03-07 13:21 · 191次 阅读

PIC单片机以及51和AVR单片机的IO口操作方法解析

51单片机IO口的结构比较简单,每个IO口只有一个IO口寄存器Px,而且这个寄存器可以位寻址,操作起....
发表于 03-06 18:37 · 447次 阅读

PIC单片机开发的一些经验和技巧解析

功耗,在电池供电的仪器仪表中是一个重要的考虑因素。PIC16C××系列单片机本身的功耗较低(在5V,....
发表于 03-06 16:08 · 347次 阅读

PIC单片机实现多回路温度控制系统的设计

本系统被设计为8个温度检测回路, 每一个回路将热电偶产生的对温度的微弱信号, 经过温度变送单元转换成....
发表于 03-06 15:20 · 532次 阅读

pic单片机键盘系统的设计方案

行列式键盘的接法比独立式键盘的接法复杂,编程实现上也会比较复杂。但是,在占用相同的I/O端口的情况下....
发表于 03-06 10:38 · 347次 阅读

pic单片机多路ad切换程序与循环程序设计

pic单片机(Peripheral Interface Controller)是一种用来开发和控制外....
发表于 03-06 10:13 · 307次 阅读

pic单片机程序设计的基本方法解析

pic单片机在学习和工作中均扮演着重要角色,在往期文章中,小编曾对pic单片机汇编指令加以介绍,以帮....
发表于 03-06 09:58 · 281次 阅读

pic单片机的各种汇编语言指令解析

因此,熟练 pic 单片机编程尤为重要。为保证大家能准确、熟练掌握 pic 单片机的使用,本文特带来....
发表于 03-06 09:31 · 291次 阅读

如何dsPIC33E在Bootloader和APP中都有中断(不同时用)

我用的是PIC24HJ128GP502 , dsPIC33EV256GM106目前想达到的目的,Bootloader中使用CAN中断(处理Bootloade...
发表于 02-25 10:35 · 533次 阅读

基于PIC单片机的精确加油系统设计

精确加油系统由低功耗单片机(PIC16C57)、IC卡读写控制电路、EEPROM存储电路、液晶显示、....
发表于 02-17 16:26 · 458次 阅读

基于pic单片机的评估板设计方案

近年来,由于数据通信需求的推动,加上半导体、计算机等相关电子技术领域的快速发展,短距离无线与移动通信....
发表于 02-07 09:05 · 233次 阅读

PIC单片机程序编写和动作标志位的使用方法解析

在这里使用的大多是数字信号的控制,电机的控制只有开和合两种状态。在动作的过程中需要两只手臂、身体、头....
发表于 01-25 17:04 · 153次 阅读

PIC单片机相比其他单片机有什么优势

PIC单片机的数据线和指令线各自独立,代码效率高,是传统51系列单片机的2-3倍,除几个跳转类指令外....
发表于 01-25 16:56 · 67次 阅读

PIC12C509A芯片制作振荡器的设计

第一次用PIC12C509A芯片制作的振荡器,其源程序为PIC02.ASM,用程序存储器第1页面和数....
发表于 01-25 16:56 · 141次 阅读

如何设置PIC单片机的端口

PIC16F616有12个IO口,但是有一个引脚(RA3)只能作为输入引脚用,不能用作输出,另外,A....
发表于 01-24 17:10 · 332次 阅读

PIC单片机使LCD面板产生闪烁效果的设计

如果电源的电能即将耗尽,则通常整个时钟显示会开始闪烁。这使用户可以立即了解时钟不再显示正确的时间。....
发表于 01-24 16:51 · 122次 阅读

PIC单片机的振荡器应该如何配置

PIC系列单片机可工作于不同的振荡器方式。用户可以根据其系统设计的需要,选择下述四种振荡方式中的一种....
Wildesbeast 发表于 01-24 09:51 · 899次 阅读

基于PIC单片机的多回路温度控制系统设计

本系统被设计为8个温度检测回路, 每一个回路将热电偶产生的对温度的微弱信号, 经过温度变送单元转换成....
发表于 01-09 16:45 · 330次 阅读

如何使用PIC单片机进行自适应差分脉冲编码调制

过去,将语音记录和回放功能添加到产品中意味着使用数字信号处理器或专用音频芯片。现在,使用简化的自适应....
发表于 01-07 10:23 · 207次 阅读

基于PIC单片机的测试评估板设计

它被广泛应用于无线数据采集、无线水表、煤气表、电力表抄表、工业遥控、遥测、工业数据采集、楼宇自动化、....
发表于 01-03 15:59 · 325次 阅读

如何使用PIC单片机实现IC卡读写器的设计

本文介绍了以 PIC16C74 单片机为核心的 IC 卡读写器的系统设计,系统实现了 IC 卡及外部....
发表于 01-02 08:00 · 267次 阅读

PIC单片机驱动LCD模块的设计

偏置电压是通过使用外部梯形电阻网络(电路见下图)而产生。因为梯形电阻网络连接在VDD和Vss之间,所....
发表于 12-31 15:19 · 447次 阅读

PIC单片机和AVR单片机IO的操作方法解析

51单片机、AVR单片机和PIC单片机IO口结构的均不同,导致了IO口操作也不同。操作单片机IO口的....
发表于 12-30 15:50 · 572次 阅读

PIC单片机的多路AD切换程序设计

pic单片机(Peripheral Interface Controller)是一种用来开发和控制外....
发表于 12-30 15:41 · 335次 阅读

PIC单片机进行AD转换的设计

我们先看看R1和R2,R2是个可调电阻 如果我们将R2变大 RA1这个管脚上的电压就越大。R2变小 ....
发表于 12-26 15:52 · 477次 阅读

基于PIC单片机的数据采集系统设计

C++程序设计语言可以很好地实现面向对象的编程思想,采用C++编写上位机程序,可以将每一个功能模块封....
发表于 12-25 15:29 · 357次 阅读

基于PIC8位单片机实现红外遥控器的设计

遥控码是一串二进制数字信号,通过脉冲编码形成脉冲序列,被调制到一个固定频率载波上,最后通过红外发射管....
发表于 12-20 15:31 · 445次 阅读

PIC单片机驱动LCD段驱动器的设计

4×4小键盘的典型数字接口使用8个数字I/O引脚。但使用8个引脚作为数字I/O会占用可用于连接LCD....
发表于 12-19 15:35 · 265次 阅读

PIC单片机实现护理机智能控制的设计

系统工作时,PIC单片机每隔500ms将护理机的水温、风温、流量、清水桶液位下限报警、收集桶脏物上限....
发表于 12-18 15:28 · 283次 阅读

常用类型单片机的优缺点解析

单片机,single chip microcomputer,单芯片微型计算机。总体来说,他就是一个芯....
发表于 12-13 15:48 · 1101次 阅读

基于PIC单片机产生SPWM信号控制逆变桥的方法设计

随着信息技术的不断发展和计算机应用的日益普及,高新技术设备对供电质量的要求越来越高,很多设备都要求电....
发表于 12-02 15:30 · 574次 阅读

PIC单片机的清零指令详解

看到这篇文章的朋友,想必大家对pic单片机均具备一定兴趣,或对pic单片机具备一定使用需求。前文中,....
发表于 11-26 16:23 · 645次 阅读

PIC单片机程序设计的基础知识介绍

pic单片机在学习和工作中均扮演着重要角色,在往期文章中,小编曾对pic单片机汇编指令加以介绍,以帮....
发表于 11-26 16:19 · 330次 阅读

PIC单片机的各种汇编语言指令详解

pic8位单片机共有三个级别,有相对应的指令集。基本级pic系列芯片共有指令33条,每条指令是12位....
发表于 11-26 16:09 · 858次 阅读

VL6180x状态RESULT_INTERRUPT_STATUS_GPIO读取始终为0

在手册上看到R1不能大于10K,R2不能大于470,在手册上找不到依据有大佬能给解答一下吗比如R1使用15K,R2使用1K...
发表于 11-23 10:00 · 802次 阅读

PIC单片机的各种汇编语言指令的用法解析

PIC 8位单片机共有三个级别,有相对应的指令集。基本级PIC系列芯片共有指令33条,每条指令是12....
发表于 11-12 15:58 · 3834次 阅读

PIC单片机的输入和输出操作方法介绍

pic单片机是学习单片机人士必定接触的一款器件,因此大家对pic单片机或多或少具备一定了解。
发表于 11-08 16:17 · 1254次 阅读

PIC单片机4×4行列式键盘的工作原理解析

实际的工程中,可能会使用PIC16C5X这种通用的可编程的键盘、显示接口器件,使用PIC16C5X单....
发表于 11-08 16:12 · 1205次 阅读

PIC单片机的各种内部硬件功能及用法介绍

数据存储器在单片机PIC16F84中,除了有存放程序的程序存储器外,还有数据存储器。单片机在执行程序....
发表于 11-08 16:05 · 531次 阅读

51单片机与PIC单片机和AVR单片机的性能对比分析

51系列优点之一是它从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,或布尔处理器。它的处理....
发表于 11-04 15:26 · 704次 阅读

在处理PIC单片机的中断服务程序时需要注意哪些问题

PIC与51系列单片机一个显著的区别就是:PIC只有一个中断入口地址(为04H),而51有多个中断源....
发表于 10-28 16:45 · 439次 阅读

如何用c语言编写pic单片机?

HI成员,我是新的微控制器编程。我想用C语言在MPLLABXIDE,XC8编译器上编写PIC 16F18345微控制器。请让我知道...
发表于 10-23 10:12 · 401次 阅读

如何实现PIC单片机与PC机异步串行通信?

       异步串行通信基本概念; 异步串行通信字符格式如图1所示。通信线路上传送的每个字符包括1个起始位、...
发表于 10-22 07:50 · 199次 阅读

MAX7219级联显示时有一个模块总是有闪烁

[code]最近学习单片机,用的是877A,4M晶振,在用MAX7219级联驱动4块8*8组成8*32点阵时,总是第三块有闪烁。请问是代码的...
发表于 10-12 21:02 · 713次 阅读
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
PIC单片机C语言程序设计(7)
PIC单片机编程软件
PIC单片机入门必看
MIPS架构下PIC32单片机的UART通信 - 21世纪电子
看完这篇文章,PIC单片机就能入门了
网络单片机PIC18F97J60的开发与应用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服