PIC16F877A第一个程序

玩过很多单片机,擅长的有51,MSP430,STM8,STM32唯有PIC没有玩过,去淘宝上买了块开发板玩玩,说真的第一次买PIC,真不知道需要买哪些硬件,看中了一款开发板,于是问商家除了开发板还需不需要编程器之内的? 商家说自己不懂技术,这让我就懵逼了~ 于是厚着脸皮去别的家问了还需要买哪些才能开发程序,结果发现还差一个kit编程器.

PIC16F877A第一个程序_第1张图片

开发板和仿真器都买回来了,第一件事情就是搭建开发环境了,这个开发环境由2部分组成,一部分是IDE安装,另一部分是PICC编译器的安装;

首先介绍下IDE,我装的是MPLAB IDE v8.92版本,安装过程非常简单;

C编译器我安装的是HI-TECH PICC9.83版本;

都安装好了之后,在 Project->Project Wizard 写我们第一个点灯程序了:

PIC16F877A第一个程序_第2张图片PIC16F877A第一个程序_第3张图片

PIC16F877A第一个程序_第4张图片

 

/***************************************************************************************************
*** 功能:开发板8个发光管一起闪动
*** 实验内容:输出底电平可以点亮RD口的发光管 高电平可以关掉发光管
*** 开发板连接方法:装上J2。
****************************************************************************************************/
#include              	//包含单片机内部资源预定义
__CONFIG(0xFF32);
//芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M晶体HS振荡

void delay();              		//delay函数申明

/****************************************************************************
* 名    称:main() 
* 功    能:主函数
* 入口参数:
* 出口参数:
****************************************************************************/
void main()                 
{
	TRISD = 0;  		//设置portd为输出
	
	while (1)         	//死循环,让数码管持续点亮
	{
		PORTD=0b00000000; //点高发光管
		delay();
		PORTD=0b11111111; //关掉发光管 也可以写成16位的 自己试一试吧
		delay();
	}
}
/****************************************************************************
* 名    称:delay()   
* 功    能:延时
* 入口参数:
* 出口参数:
****************************************************************************/
void delay()              
{
	int i;                 //定义整形变量
	for (i = 0xfffff;i--;)
		;     //延时
}

写完之后编译下:

PIC16F877A第一个程序_第5张图片PIC16F877A第一个程序_第6张图片

程序中有个__CONFIG()宏配置我还没看到,等后面我学习到了再讲解.

 

你可能感兴趣的:(PIC单片机)