0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

高手讲解PIC单片机:单片机的入门就是这么简单

h1654155971.7688 来源:未知 作者:李倩 2018-03-29 09:26 次阅读

单片机入门不难,这是几年前的一篇老文章,讲得通俗易懂,分享给初学者。

这个8条腿的小螃蟹就是我们的第一顿饭,只要把它吃下去,以后的大餐就好办了。

第1、8条腿接电源 +5V 和 地线。头两条腿是螃蟹钳子,好吃的很。 现在剩下了 6 条腿

第2、3条腿 使用时外接一个晶振的东西 我们接一个 4 MHz的。

第4条腿是复位脚,是一个信号输入脚。单片机正常运行时接高电平。当有一个低电平脉冲输入到这个脚时单片机就复位。所谓复位就是单片机内部所有的工作部件统统回到规定的状态,程序也复位到头一句上开始逐条运行。例如,你设计的一个报警锁定的 LED红灯亮后,当需要解除报警时,用一个按钮给这个脚瞬时接地一下,相当于给它一个夫脉冲,系统就复位了,led灯就熄灭了,程序从头开始。

以上5个脚,几乎所有单片机都有,包括世界上最复杂的,和世界比较简单的单片机-----PIC12CE519

轮到第几条腿啦?奥,是第5条腿,这条叫单片机的 I/O 脚。就是输入输出脚。你可通过程序动态地控制它作为输入或输出,作为输出时可以程序控制它的输出电平为高1或低0。所以,他的工作状态有四种:输入0,输入1,输出0,输出1,剩下的两条腿和第5脚功能一个样。

上边我们已经把8条腿消化掉了,其实我们要弄明白的也就3只腿,我们再简单一些,先整明白两条腿,即GP0,GP1.这两条腿低级一点的用法,可以控制继电器,LED灯,高级一些的用法可以进行I2C总线,RS232总线的通信,作为扩展输入可以模拟出来A/D转换器(6--7bit),可以测量一个电阻的粗略值。作为输出也可以直接推动扬声器奏出音乐。这是后话暂且不提。

现在要控制使用这两只腿,我这个三脚猫功夫的说书的不得不讲一下软件了,要想讲明白软件又不得不涉及到单片机的内部结构。那位说啦,你可别提这软件和结构了,以前俺就是让它们打败的,现在听到这个心里就打鼓。嘿嘿,不要紧,果真如你所说,那你就不妨跟着我再失败一次, 反正吗多一次失败又不纳税,嘿嘿。不过你也要有思想准备,彻底弄明白是个渐进的过程。

要说这程序和单片机内部结构,还真是老大难,不过蟹黄蟹肉可都在里面。我现在要是给你说PIC单片机是哈佛结构的,51系列是冯-诺伊曼结构的,恐怕你要立马走人了。所以我得用点心思不让你溜号。

好在PIC系列的制造商(microchip 微芯公司 美国)理解我等苦衷,全部只有35条指令,而且有一些指令我们一般很少使用,常用的也就十几句,用的时候查手册,无需记忆。就算我们两天学习一句,也就两三个月时间,总比到老了还怕它们强啊。废话少说先看下面的两个例语:

my_name006: movlw 02h '常数2进入w

movwf GPIO 'W 的数进入 寄存器GPIO

这就是我们编的程序里的两个句子,也叫源程序。有以下特点

每行只能写一句话

每句话由四部分组成:

标号: 操作指令 操作数 '程序注释

下面我结合例子把这四部分解释一下。

第一部分 my_name006: 叫做标号,它是由字母或数字组成,由冒号结束。标号可有可无,比如第二句就没有标号。

第二部分movlw 叫做操作指令。它是必须有的,不能省略。PIC 系列的单片机共有 35 条指令。

第三部分02h 叫做操作数。有的指令没有操作数或者操作数是默认的,也不用写。

第四部分是程序注释,必须以单引号开头,主要作用是提醒和备忘。注释也是可有可无。

第二个例句中,省略了标号,当然注释也可以省略。他的指令是movwf, 操作数是GPIO。操作数不一定是数字,也可能是一个由字母组成的字符串。

知道了语句格式以后,我们下面就学习一些常用语句。我们先把这两个例句弄清楚。

这两句话的作用是把 2 这个常数写入到 GPIO 这个寄存器里。

单片机里有一些部件需要我们使用和操作,都是通过读写寄存器来实现的。每个部件都对应有操控它的寄存器,例如我们要控制使用的管脚GP0,GP1 这两个管脚对应的寄存器就叫做GPIO。对GPIO寄存器读操作,实际等效察看管脚电平的高低;对GPIO寄存器相应的位写1操作,实际等校让管脚输出高电平。写0,输出低电平。

每个寄存器可以储存一个八位的二进制数。这八个位的每个位都有名称,从左向右的名称是:

左端第首位名称叫D7,

左端第二位名称叫D6,

左端第三位名称叫D5,

左端第四位名称叫D4,

左端第五位名称叫D3,

左端第六位名称叫D2,

左端第七位名称叫D1,

最后一位叫D0,

而每一个位对应一个管脚的电平,例如当GPIO寄存器的D0位等于1时表示管脚GP0 的电平是高电平。D0位等于0时表示管脚GP0 的电平是低电平。常数2的八位二进制表示是“00000010” 所以,GPIO寄存器存放的8位2进制数的每个位的值以及管脚电平是:

D7对 应于内部总线管脚的电平 D7=0 内部总线管脚输出低电平

D6对应于内部总线管脚的电平 D6=0 内部总线管脚输出低电平

D5对应于GP5 管脚的电平 D5=0 GP5 管脚输出低电平

D4对应于GP4 管脚的电平 D4=0 GP4 管脚输出低电平

D3对应于GP3 管脚的电平 D3=0 GP3 管脚输出低电平

D2对应于GP2 管脚的电平 D2=0 GP2 管脚输出低电平

D1对应于GP1 管脚的电平 D1=1 GP1 管脚输出低电平

D0对应于GP0 管脚的电平 D0=0 GP0 管脚输出低电平

GP0---GP5管脚我们可以从上一讲的图1硬件中查出所对应的管脚。d7 d6 对应的内部时钟和数据总线我们现在暂且不要管它。以后本事大了在调教它们。在我们的例句中,向GPIO寄存器写入了2,常数2的八位二进制表示是“00000010” 因此如果此时GP0, Gp1等都已经被定义成输出的话,那么GP1输出高电平(接LED灯亮),GP0 输出低电平(所接led灯熄) 。

截止到现在,你已经学会如何控制管脚的电平高低了。尽管还有一些疑问,比如怎样定义管脚为输出脚(以后会说),我得说如果事先gp1,gp0这两个管脚处于输入状态,这两个例句无效,是控制不了电平的。

无论如何,这一会儿,你就学会了两个指令,35条我看也没啥难的。单片机的入门就是这么简单。

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

    关注

    5998

    文章

    43956

    浏览量

    620675
  • PIC单片机
    +关注

    关注

    62

    文章

    691

    浏览量

    101464

原文标题:高手讲解PIC单片机:从管脚到指令,一看就懂

文章出处:【微信号:weixin21ic,微信公众号:21ic电子网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    PIC单片机快速入门

    PIC单片机快速入门
    发表于 08-15 19:30

    【吴坚鸿】教你单片机入门和【吴坚鸿】单片机框架讲解

    本帖最后由 ky175 于 2016-4-23 12:47 编辑 学单片机入门基础网上有太多,学了很多,有没有觉得脑子还是空白个人推荐吴先生的单片机入门和框架这两个PDF文件;
    发表于 04-03 12:19

    新手学习单片机就是这么简单

    ,就可以学习引脚的数字I/O功能,在按下某个按钮后,某发光二极管发亮,这就是数字电路中组合逻辑的功能,虽然很简单,但是可以学习一般的单片机编程思想,例如,必须设置很多寄存器对引脚进行初始化处理,才能
    发表于 07-04 17:16

    学习PIC单片机的目的是什么

    学习PIC单片机的目的是打算做一款433M无线开关,之前学习过51与AVR单片机,对8位单片机有一些基础,不过PIC
    发表于 07-13 07:18

    PIC单片机如何入门

    PIC单片机如何入门
    发表于 10-19 10:10

    pic单片机与51单片机哪个更简单更好学?

    pic单片机与51单片机哪个更简单更好学?PIC单片机特点或优势是什么?
    发表于 11-02 09:04

    单片机入门51单片机

    单片机入门51单片机是最好的选择。很多人可能以为51单片机已经过时了,能这么想的绝对是没实际产品开发经验的。51最大的优势
    发表于 11-22 07:14

    pic单片机的清零等指令加以讲解

    看到这篇文章的朋友,想必大家对pic单片机均具备一定兴趣,或对pic单片机具备一定使用需求。前文中,小编曾对pic
    发表于 11-24 06:32

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

    、熟练掌握pic单片机的使用,本文特带来pic单片机的各种汇编语言指令的讲解上篇,下篇将在后期文章中予以
    发表于 11-24 06:13

    PIC单片机编程简单入门分析

    在研究生时段时,曾经对STM32进行了学习,在本科时段学习51系列的简单单片机,这种单片机功能比较单一,也没有多外设来使用,在进入研究生阶段由于实验室的关系,接触了PIC系列的单片机
    发表于 02-16 07:22

    PIC单片机轻松入门

    PIC单片机轻松入门
    发表于 12-15 22:25 6次下载

    PIC单片机之I2C(从模式)实例讲解

    PIC单片机之I2C(从模式)实例讲解
    发表于 01-24 17:21 30次下载

    PIC单片机入门

    在上一篇文章中,我们研究了不同的微控制器在市场上以及每个人如何拥有自己的优势/劣势。本文通过深入了解PIC单片机并介绍如何入门来开始我们的PIC单片
    的头像 发表于 07-30 11:06 2.3w次阅读
    <b class='flag-5'>PIC</b><b class='flag-5'>单片机</b>的<b class='flag-5'>入门</b>

    单片机入门--常见单片机PIC\STM32

    单片机入门--常见单片机PIC\STM32
    发表于 11-13 14:36 41次下载
    <b class='flag-5'>单片机</b><b class='flag-5'>入门</b>--常见<b class='flag-5'>单片机</b><b class='flag-5'>PIC</b>\STM32

    8086汇编4位bcd码_pic单片机编程串烧,pic单片机汇编语言讲解上篇

    大家能准确、熟练掌握pic单片机的使用,本文特带来pic单片机的各种汇编语言指令的讲解上篇,下篇将在后期文章中予以
    发表于 11-16 13:51 6次下载
    8086汇编4位bcd码_<b class='flag-5'>pic</b><b class='flag-5'>单片机</b>编程串烧,<b class='flag-5'>pic</b><b class='flag-5'>单片机</b>汇编语言<b class='flag-5'>讲解</b>上篇