访问电脑版页面

导航:老古开发网手机版Pic单片机PIC16系列单片机

PIC16F877A的T0定时器制作的电子钟程序

导读:
关键字:
定时器,PIC16F877A,

  经过努力,利用PIC16F877A的T0定时器制作的电子钟实验成功!下面是部分源程序:

  /#include 《pic.h》 //调用头文件

  __CONFIG(0x3F32); //芯片配置字

  #define uchar unsigned char

  #define uint unsigned int

  const uchar table[]={

  0xC0,/*0*/ 0xF9,/*1*/

  0xA4,/*2*/ 0xB0,/*3*/

  0x99,/*4*/ 0x92,/*5*/

  0x82,/*6*/ 0xF8,/*7*/

  0x80,/*8*/ 0x90,/*9*/

  0x88,/*A*/ 0x83,/*b*/

  0xC6,/*C*/ 0xA1,/*d*/

  0x86,/*E*/ 0x8E,/*F*/};

  const uchar table1[]={

  0x40,/*0*/ 0x79,/*1*/

  0x24,/*2*/ 0x30,/*3*/

  0x19,/*4*/ 0x12,/*5*/

  0x02,/*6*/ 0x78,/*7*/

  0x00,/*8*/ 0x10,/*9*/};

  //0-9的显示代码

  uchar sec,min,couter;

  void delay(uint x);

  void ShowLed(uchar a,uchar b,uchar c);

  void SHOW();

  void main (void)

  {

  uchar temp1;

  TRISA=0;

  TRISD=0;

  ADCON1=0X06;

  OPTION=0x07;

  INTCON=0XA0;

  TMR0=0x70;

  while(1)

  {

  if(couter》49)

  {

  couter=0;

  sec++++;

  if(sec》59)

  {

  sec=0;

  min++;

  }

  if(min》59)

  min=0;

  }

  SHOW();

  }

  }

  void interrupt TMR0INT()

  {

  T0IF=0;

  couter++;

  TMR0=0x70;

  }

  void delay(uint x)//延时

  {

  uint a,b;

  for(a=x;a》0;a--)

  for(b=110;b》0;b--);

  }

  ---------------

来源:51黑电子论坛   作者:51黑电子论坛  2020/5/15 9:42:00
栏目: [ PIC16系列单片机]

相关阅读

PIC16F631/677是从8/14引脚单片机向20引脚器件移植的理想选择

基于PIC16F73微处理器和RS485总线实现感应式智能电子门锁系统的设计

PIC16F877A的T0定时器制作的电子钟程序

如何利用PIC16F877A单片机读写AT24C系列储存器

nRF24L01无线模块在PIC16F877单片机上的应用解析

PIC16F874单片机为中心处理器的直流电机调速设计

PIC16F87X系列单片机引起内部复位的条件和原因分析

基于PIC16F628单片机的PVS控制系统设计

PIC16F877单片机原理图设计及应用

基于PIC16F877的新型二线制温度变送器

PIC16F84单片机控制电风扇的设计

PIC16F877A PICC AD转换程序

PIC16F877A单片机对24X24点点阵屏的驱动设计

基于PIC16F877单片机的电子秤包装机控制系统

pic16f877a c语言时钟程序

全球主流8位MCU芯片详细解剖No.3:微芯 PIC16F877

基于PIC16F628A的入侵探测装置

PIC16F877的矩阵键盘

基于PIC16F628单片机的便携式电子秤

PIC16F877A开发板 SPI总线驱动74595实验