微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > PIC12C508A-简单练习程序

PIC12C508A-简单练习程序

时间:11-18 来源:互联网 点击:
最近做个东西,手头上有8PIN的单片机PIC12C508A。于是拿来就用,芯片已经比较老款了,但是我只要做个简单功能的I/O操作,所以这个芯片足以满足要求。在实际进行编程下载后,我发现我使用的QL-2006编程器支持烧写,但不支持擦除。于是看了下数据手册并查了一些资料,原来PIC12C508A内部是EPROM,而且需要特定的编程器进行擦除。于是找了新一些的兼容芯片,原来PIC12F629/637也是8PIN并且和PIC12C508A引脚兼容,是FLASH型的,还内部有EEPROM,资源还算可以,下次打算用PIC12F629/637这款型号。现在只做个练习程序,对PIC12C508A进行了简单的应用,我用Real Pic Simulator软件进行了仿真,没问题,于是程序烧录到芯片进行测试,也能够正常工作。于是我的第一个使用PIC12C508A芯片的简单程序就这样诞生了,于是便记录下来。

/*************PIC12C508A单片机程序******************************/
/**********编译环境:MPLAB IDE v8.40 PICC*****************/
/*****File Function : PIC12C508A芯片测试 *****/
/*****Program Author : ZhengWen(ClimberWin) *****/
/*****MCU: PIC12C508A 内部RC *****/
/*****Compile Date : 2010/09/24 *****/
/*****Edition Info : V1.0 *****/
/*****************************************************************/

#include
#define uchar unsigned char
#define uint unsigned int

/////////////引脚定义///////////////////////
#define Input_Pin GP3 //信号输入口
#define LED GP4 //LED指示灯

#define add0 GP0 //信号输出口
#define add1 GP1
#define add2 GP2

//////////////////////主程序/////////////////////////
main()
{
unsigned int i;
GPIO=0B00000000;
TRIS= 0B00001000; //定义输入输出端口
while(1)
{
if(Input_Pin==0)
{

LED=1;add0=1;add1=1;add2=1;

for(i=0;i<20000;i++) //延时
{NOP();NOP();NOP();NOP();NOP();}

LED=0;add0=0;add1=0;add2=0;
for(i=0;i<20000;i++) //延时
{ NOP();NOP();NOP();NOP();NOP();}
}

else

{;}
}
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top