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

合集下载

(整理)实用PIC单片机教程.

(整理)实用PIC单片机教程.

吴渐鸿单片机风格赏析(载于电子发烧友单片机论坛)第一节:按键行列扫描与蜂鸣器:第二节:独立按键扫描与蜂鸣器第三节:AD按键扫描与蜂鸣器第四节:“鸿哥三宝”之74HC165(按键扫描篇)第五节:“鸿哥三宝”之74HC595(继电器驱动篇)......(详见论坛^_~)(一)(二)按键行列扫描与蜂鸣器(1)技术体会:在行列式扫描结构的薄膜按键里,干扰很大,按键扫描程序非常讲究,尤其是去抖动的处理。

(2)功能需求:每按一个按键,蜂鸣器就响一次。

(3)硬件原理:(a)用4个IO来做2X2按键行列扫描,其中作为输入的2个IO口必须接上拉电阻20K 左右。

(b)用1个IO经过8050三极管来驱动有源蜂鸣器,有源蜂鸣器通电就一直响,断电就停止。

而无源蜂鸣器是要靠断断续续的开关信号来驱动才能响,就是要频率来驱动。

(4)源码适合的单片机:PIC18F4620,晶振为22.1184MHz(5)源代码讲解如下:#include<pic18.h> //包含芯片相关头文件//补充说明:吴坚鸿程序风格是这样的,凡是输出IO后缀都是_dr,凡是输入的//IO后缀都//是_sr#define beep_dr LATA1 //蜂鸣器输出#define key_dr1 LATB3 //2X2按键行输出#define key_dr2 LATB4 //2X2按键行输出#define key_sr1 RB6 //2X2按键行输入#define key_sr2 RB7 //2X2按键行输入//补充说明:吴坚鸿程序风格是这样的,凡是做延时计数阀值的常量//前缀都用cnt_表示。

#define cnt_delay_cnt1 25 //按键去抖动延时阀值#define cnt_delay_cnt2 5 //按键行输出信号稳定的小延时阀值#define cnt_voice_time 60 //蜂鸣器响的声音长短的延时阀值void delay1(unsigned int de) ;//小延时程序,时间不宜太长,因为内部没有喂看门狗//补充说明:吴坚鸿程序风格是这样的,凡是按键扫描函数都放在定时中//断里,凡是按键服务程序都是放在main函数循环里。

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

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

高手讲解PIC单片机:从管脚到指令,一看就懂展开全文这个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单片机

循序渐进学习PIC单片机
直接驱动 LED,I/O 引脚可内部弱上拉,支持节能休眠模式、引脚电平变化时从休眠中唤醒单片机的功 能。具有一个 8 位实时时钟/计数器(TMR0),可带 8 位可编程预分频器。 1.2 PIC10F200 和 PIC10F202 单片机的引脚 PIC10F200/202 单片机是 Microchip 生产的功能最为简单的单片机,这种单片机芯片依据其封装形式的 不同,只有 6 只或 8 只引脚(8 脚芯片中有 2 只引脚未使用)。 对于 6 只引脚形式的芯片,其功能定义如下: 引脚 1:GP0/ICSPDAT,双向 I/O 引脚,可以通过软件设置,使这具有内部弱上拉或引脚电平变化时从 休眠中唤醒单片机的功能。或者作为在线串行编程(ICSP)的数据引脚。 引脚 2:VSS,电源地 引脚 3:GP1/ICSPCLK,双向 I/O 引脚,可以通过软件设置,使这具有内部弱上拉或引脚电平变化时从休 眠中唤醒单片机的功能。或者作为在线串行编程(ICSP)的时钟引脚。 引脚 4:GP2/T0CKI/FOSC4,双向 I/O 引脚,或作为定时器 TMR0 的时钟输入,或者作为振荡器时钟/4 的 输出。 引脚 5:VDD,电源正 引脚 6:GP3/MCLR/VPP,双向 I/O 引脚,可以通过软件设置,使这具有内部弱上拉或引脚电平变化时从 休眠中唤醒单片机的功能。或者作为复位输入MCLR,当配置为MCLR时,此引脚是低电平有效的复位 信号。器件在正常工作期间,GP3/MCLR/VPP 上的电压不得超过 VDD,否则器件将进入编程模式。如果 配置为MCLR,则始终为弱上拉。此引脚的另一个功能为编程电压输入端。 PIC10F200 与 PIC10F202 两种单片机的区别在于,前者只有 256X12Bit 的 Flash 程序存储器和 16X8 位的 RAM,而后者具有 512X12Bit 的 Flash 及 24X8Bit 的 RAM。 1.3 存储器的构成 PIC10F200/PIC10F202 的存储器分为程序存储器和数据存储器。 PIC10F200 具有一个 9 位的程序存储器(PC),能够寻址 512X12 的程序存储空间。但对于 PIC10F200 而 言主,只有前 256X12(0000H‐00FFH)地址单元是物理实现的。复位向量在 0000H,存储单元 00FFH 内存有 内部时钟振荡器校准值,切记不可覆盖该值。

PIC快速入门版

PIC快速入门版

在PIC单片机系列中,改变I/O口的输入输出依靠写入寄存器TRIS的值,相应位写0,表示对应管脚被定义成了输出,写1,就是输入。

现在假如预把GP1、GP2管脚定义成输出,其他脚全是输入。

那就应该向TRIS 寄存器写入二进制数11111001,换算成十六进制就是F9H.依照以前我们学到的知识,在PIC系列单片机里,本来应该用下列的语句来完成我们的设定:movlw 0F9H '常数进W 以字母开头的常数前面必须加0movwf TRISA'把W内的数复制到TRIS实际上PIC系列的单片机也都是这么写的,后面加的A,表示第一个8位的口(有的单片机不仅一个口,还有好几个8位的I/O口如TRISB TRISC TRISD等等) .但是,记住了, PIC12系列的单片机必须改写成为:movlw 0F9H '常数进W 以字母开头的常数前面必须加0tris GPIO '把W内的数复制到TRIS 以后凡见到这个指令一律理解成movwf TRISA写法不同,意思是一样的. 这样你就又学了一个指令TRIS,不过这个指令的实质还是你曾经学过的movwf 只是写法不同罢了.在PIC12系列里TRIS作为指令, 在其他系列(PIC16\17\18)里把TRIS 作为普通寄存器看待.因为我们现在讲的就是PIC12CE519,所以我们暂时用tris GPIO这个格式,等以后进入PIC16C877 我们再写成movwf TRISA , 至于理解按照后者进行.'-----------如果我们要控制GP1 GP2管脚的输出电平, 其他管脚作为输入.并且让GP1输出低电平,GP2输出高电平.完整的程序如下:movlw 0F9H '常数进Wtris GPIO '把W内的数复制到TRIS ,GP1 GP2为输出,其他为输入'此行无命令,起到的作用是容易读懂程序movlw 04H '常数4的二进制是00000100 ,GP1=0 GP2=1movwf GPIO 'W内的数进GPIO 输出生效,原来定义成输入的脚的电平,不会受该句影响?上面已经学会了三条指令,但是8位寄存器的概念概念一定要建立起来,程序通过写入寄存器不同的数据控制管脚作为输入使用还是输出使用,作为输出时是输出高电平还是低电平。

什么是PIC单片机

什么是PIC单片机

一、单片机应用基础什么是PIC单片机?PIC单片机(Peripheral Interface Controller)是一种用来开发的去控制外围设备的集成电路(IC)。

一种具有分散作用(多任务)功能的CPU。

与人类相比,大脑就是CPU,PIC 共享的部分相当于人的神经系统。

PIC 单片机是一个小的计算机PIC单片机有计算功能和记忆内存像CPU并由软件控制允行。

然而,处理能力—存储器容量却很有限,这取决于PIC的类型。

但是它们的最高操作频率大约都在20MHz左右,存储器容量用做写程序的大约1K—4K字节。

时钟频率与扫描程序的时间和执行程序指令的时间有关系。

但不能仅以时钟频率来判断程序处理能力,它还随处理装置的体系结构改变(1*)。

如果是同样的体系结构,时钟频率较高的处理能力会较强。

这里用字来解释程序容量。

用一个指令(2*)表示一个字。

通常用字节(3*)来表示存储器(4*)容量。

一个字节有8位,每位由1或0组成。

PIC16F84A单片机的指令由14位构成。

当把1K个子转换成位为:1 x 1,024 x 14 = 14,336位。

再转换为字节为:14,336/(8 x 1,024) = 1.75K。

在计算存储器的容量时,我们规定1G 字节= 1,024M 字节, 1M 字节= 1,024K 字节, 1K 字节= 1,024 字节. 它们不是以1000为倍数,因为这是用二进制计算的缘故。

1. 计算机的物理结构,包括组织结构、容量、该计算机的CPU、存储器以及输入输出设备间的互连。

经常特指CPU的组织结构,包括它的寄存器、标志、总线、算术逻辑部件、指令译码与执行机制以及定时和控制部件。

2. 指出某种操作并标识其操作数(如果有操作数的话)的一种语言构造3. 作为一个单位来操作(运算)的一个二进制字符串,通常比计算机的一个字短。

4. 处理机内的所有可寻址存储空间以及用于执行指令的其它内存储器。

在计算存储器的容量时,我们规定1G 字节= 1,024M 字节, 1M 字节= 1,024K 字节, 1K 字节= 1,024 字节. 它们不是以1000为倍数,因为这是用二进制计算的缘故。

pic单片机中文手册

pic单片机中文手册

pic单片机中文手册摘要:一、引言1.介绍pic单片机的发展历程2.阐述其在嵌入式领域的重要性二、pic单片机的特点1.结构简单2.成本低3.功能强大4.高度可编程性三、pic单片机的工作原理1.基本结构和工作原理2.指令集和寻址方式四、pic单片机的应用领域1.工业自动化2.通信设备3.消费电子4.汽车电子五、pic单片机的发展趋势1.工艺技术的进步2.功能模块的集成3.互联网和物联网的推动六、结论1.总结pic单片机的发展历程和优势2.展望其在未来的应用前景正文:一、引言PIC单片机是一种在嵌入式领域具有重要地位的微控制器,自20世纪80年代问世以来,已经在全球范围内得到广泛应用。

它凭借独特的优势,逐渐成为各类电子产品设计的首选。

本文将详细介绍PIC单片机的发展历程、特点、工作原理及应用领域,并展望其发展趋势。

二、pic单片机的特点1.结构简单:PIC单片机采用RISC精简指令集,减少了硬件资源的占用,使得其结构更为简单。

这种结构既降低了成本,也提高了运行速度。

2.成本低:PIC单片机的制造成本相对较低,这主要得益于它的采用的CMOS工艺技术。

此外,其丰富的内置功能模块也降低了外部元器件的成本。

3.功能强大:PIC单片机集成了多种功能模块,如定时器、中断控制器、串行通信接口等,使得开发者能够方便地实现各种功能。

4.高度可编程性:PIC单片机具有高度的可编程性,用户可以根据需要对其进行配置和编程,实现不同的功能。

三、pic单片机的工作原理1.基本结构和工作原理:PIC单片机的基本结构包括CPU、存储器、外设接口等部分。

CPU负责执行指令和控制整个系统的运行;存储器用于存储程序和数据;外设接口负责与外部设备进行通信。

2.指令集和寻址方式:PIC单片机采用RISC指令集,共有35条指令。

寻址方式包括直接寻址、间接寻址、寄存器寻址和寄存器间接寻址等。

四、pic单片机的应用领域1.工业自动化:PIC单片机在工业自动化领域有着广泛的应用,如智能传感器、可编程逻辑控制器等。

PIC单片机基础教程

PIC单片机基础教程

PIC单片机基础教程一、介绍单片机是一种集成了微处理器核心、存储器、外设接口等功能于一芯片上的微型计算机系统,广泛应用于各种电子设备中。

其中,PIC单片机是由微芯科技公司所生产的单片机系列产品,具有低成本、高性能、易编程等特点,被广泛应用于各个领域。

二、单片机基础知识1.硬件组成:PIC单片机包含微处理器核心、存储器、电源和时钟、IO口、ADC/DAC、串口等硬件组件,这些组件共同协作完成各种任务。

2. 存储器类型:PIC单片机主要有Flash存储器和RAM存储器,Flash存储器用于存储程序代码和常量数据,RAM存储器用于存储变量数据。

3.计时器/计数器:PIC单片机内置了多个计时器/计数器,用于进行时间测量、频率计算等操作。

4.IO口:PIC单片机具有多个IO口,可以通过IO口与外部器件进行数据交互。

5.ADC/DAC:PIC单片机内置了ADC(模数转换器)和DAC(数模转换器),可以实现模拟信号的采集和输出。

6.串口通信:PIC单片机支持串口通信,可以与其他设备进行数据通信。

7.中断:PIC单片机具有中断功能,可以在一些事件发生时暂停当前任务,执行中断服务程序。

三、PIC单片机开发工具1.MPLABIDE:这是一款由微芯科技公司提供的PIC单片机开发集成开发环境,可以用于编写、编译、调试PIC单片机的代码。

2. Hi-Tech C编译器:这是一款专门用于PIC单片机的C语言编译器,可以将C语言代码编译成PIC单片机可以执行的机器码。

3. PICKit:这是一款由微芯科技公司提供的PIC单片机编程器和调试器,可以与PIC单片机进行连接,用于烧录程序和进行调试。

四、PIC单片机编程基础1.引脚定义:在编程之前,首先需要定义PIC单片机的IO引脚,以便与外部器件进行连接。

2.程序结构:PIC单片机的程序结构由初始化、主循环和中断服务程序等部分组成。

3.输入输出操作:通过IO口可以实现数码管显示、LED亮灭、开关输入等操作。

PIC单片机入门教程V1.1

PIC单片机入门教程V1.1

PIC单片机入门教程V1.1PIC单片机入门教程一、简单介绍本文档主要介绍PIC单片机开发环境的建立、集成开发环境使用方法、简单示例程序说明、PIC单片机开发注意事项等。

ZC-ADK开发板作为Android外设开发套件(Accessory Developer Kit)时,提供两种与Android手机通信的方法,分别是USB和蓝牙通信,如果使用ZC-ADK做USB 外设开发时,只需支持USB Accessory的Android手机;如果使用ZC-ADK做蓝牙外设开发时,需要添加ZC-BLUE模块。

1.所需硬件:ZC-ADK开发板开发板数据线2.所需软件:集成开发环境:MPLAB_IDE_8_50,将代码编辑、编译、调试等功能集成于图形界面下的应用程序。

C编译器:MPLAB C30,用于将C源文件进行编译,生成汇编语言文件,并将编译器产生的文件与其他目标文件与库文件进行汇编和链接,产生最终的应用程序。

应用程序库:microchip-application-libraries,PIC单片机的应用程序库文件,包含图形、USB、Android外设等应用程序库。

程序下载:HIDBootloader,用于通过USB下载编译好的应用程序。

二、MPLAB IDE 8.50安装1.将MPLAB_IDE_8_50.zip解压缩,双击setup.exe开始安装,出现图2-1界面,点击NEXT继续。

图2-12.出现图2-2界面,选择I accept,点击Next图2-23.出现图2-3所示界面,选择Complete,点击Next。

图2-34.出现图2-4界面,选择安装目录,点击Next。

图2-45.出现图2-5界面,选择I accept,点击Next。

图2-56.出现图2-6界面,选择I accept,点击Next。

图2-67.出现图2-7界面,点击Next,开始安装。

图2-78.出现图2-8界面,询问现在是否安装HI-TECH C编译器,选择否。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

这个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),可以测量一个电阻的粗略值。

作为输出也可以直接推动扬声器奏出音乐。

这是后话暂且不提。

现在要控制使用这两只腿,我这个三脚猫功夫的说书的不得不讲一下软件了,要想讲明白软件又不得不涉及到单片机的内部结构。

那位说啦,你可别提这软件和结构了,以前俺就。

相关文档
最新文档