电子制作天地网站欢迎您的光临,欢迎提出宝贵意见或建议。本站信息产业部备案: 粤ICP备05114582号
PIC16F84A单片机点LED灯电路及源程序
PIC16F84A FLASH LED

时间:2012-6-10 21:38:19 来源:互联网 作者:不详 编辑: 【关闭


PIC16F84A单片机点LED灯电路及源程序,PIC16F84A FLASH LED

关键字:PIC16F84A,LED灯电路图

作者:丁锦滔
下面以控制PIC16F84A单片机端口寄存器PORTB口外接的8只LED任一位的亮灭为例,介绍相关C语言程序的编写。电路如下图所示。
PIC16F84A单片机点灯电路图PIC16F84A FLASH LED
  使用MPLAB IDE V7.40集成开发环境及PICC编译器所生成的C语言源程序又称源文件。
  在编写C的源程序时,需要定义硬件的标志头文件(也称包含头文件或头文件)。因为用户经常使用的标准寄存器地址和其位地址都被定义在Pic.h标志头文件中。按C语言编译器编译源程序的语法规则,在编写C语言程序时,必须使用#include语句,把这个pic.h头文件包含到自己的源程序中。即对于PIC中级产品的单片机,C语言程序的开头是固定格式#include。编译器在编译处理#include语句时,会把pic.h的内容,复制到你的源程序中,这样PICC才认为用户使用的标准寄存器的端口地址和端口的位地址已经被定义,源程序就会合法地使用这些标准寄存器及其对应的位。
  PIC16F84A单片机PORTB口外接8只LED间亮和位1、2、6外接的LED分别点亮的程序清单如下(源文件名PIC01.C):
PIC16F84A单片机点灯电路及源程序PIC16F84A FLASH LED
PIC16F84A单片机点灯电路及源程序PIC16F84A FLASH LED
  说明:以上是一个完整的,可执行上图LED点灯的C程序,主要由端口寄存器PORTB口的位定义,延时函数delay()定义;主函数main()、延时函数void delay()及各种语句等组成。
  
  该C程序第三行以符号“∥”开头的说明文是一个注释,它可在一行内写完,亦可分多行写完。注释可写在程序的任何位置,用于帮助阅读和理解程序,说明程序的相关功能、注意事项,以及说明有关算法等。注释应尽可能简捷。在编译时,注释不产生代码。C程序还可用“/#”开头到“#/”结尾之间的内容作注释,与符号“∥”开头的注释是等效的。
  上述程序的第一行,是引导程序开始的用#include语句的头文件。
  第二行是PIC单片机PORTB口的位定义,这里指8位,即(&add)*8。
  第三行是第二行端口寄存器PORTB的位定义的注释。
  第四行~第六行是端口寄存器PORTB口的RB0、RB1、RB6三位的定义,以便在后续程序中对其赋值之用。
  第七行是RB0、RB1、RB6三位的定义注释。
  第八行是延时函数的定义第九行到结尾的功能(参看相关注释)。
  
  PIC16F84A单片机点灯电路及源程序PIC16F84A FLASH LED
  它们都是等效的。但一旦位定义中用了PORTB_0,则在赋值时也应用PORTB_0:或位定义用了PORT_0,对应赋值时也应用PORT_0。


◆相关文章◆
◆ 编辑推荐 ◆
用户:
更多评论
您要为您所发的言论的后果负责,故请各位遵纪守法并注意语言文明。60个字以内
留言:
验证码:

免责声明:
●本站所有内容均来自网络,以学习为目的,如果侵犯了您的利益,请来信告知,立即删除,站长邮件为"diy+dzdiy.com",请将"+"变更为"@"
●电子制作存在风险,请注意人身安全,如果您在根据本站电路进行制作过程中发生伤害,本站不负任何责任。

版权所有:www.dzdiy.com ? 2001-2019 本站信息产业部备案: 粤ICP备05114582号