PIC12F508单片机是没有中断的,定时器只能是查询方式。
编译器用的XC8,编译环境IDE用的是MPLAB X IDE。
//***************************************************
// __________________
// VDD-| 1 8 |-VSS
// GP5-| 2 27 |-GP0/DAT
// GP4-| 3 26 |-GP1/CLK
//GP3/RMCLR--| 4 25 |-GP2
// |________________|
// 12F508
//***************************************************
//定时器模式试用
#include
#include
// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.
// CONFIG
#pragma config OSC = IntRC // Oscillator Selection bits (internal RC oscillator)
#pragma config WDT = OFF // Watchdog Timer Enable bit (WDT disabled)
#pragma config CP = OFF // Code Protection bit (Code protection off)
#pragma config MCLRE = OFF // GP3/MCLR Pin Function Select bit (GP3/MCLR pin function is digital input, MCLR internally tied to VDD)
#define uchar unsigned char
#define uint unsigned int
uchar count;
//uchar GP3_F;
void Init()
{
TRIS=~0x3F; //GP3输入,其它输出
//GPWU = 0;//引脚中断唤醒使能;引脚中断要引起复位的,可以查询复位原因,这样就可以知道是谁的中断了
//GPPU=0;/弱上拉使能
OPTION=0xC5;//分频器给定时器 64 4MHz x=257-tJ/4F
TMR0=0x63; //10ms x=257-tJ/4F
}
void main()
{
Init();
while(1)
if(TMR0==0xFF)
{
TMR0=0x63; //
if(++count==50)//1s
{
count=0;
GP2=~GP2;//LED闪烁
}
}
}
}
关键字:PIC12F508 单片机 定时器
引用地址:
PIC12F508单片机学习之一——定时器
推荐阅读最新更新时间:2024-11-13 04:18
基于AT89S52单片机的温度和湿度检测系统设计
引言 温度、湿度是工农业生产的主要环境参数.对其进行适时准确的测量具有重要意义。利用单片机对温、湿度控制。具有控温、湿精度高、功能强、体积小、价格低,简单灵活等优点,很好的满足了工艺要求。本文介绍了利用AT89S52单片机进行温度和湿度的检测及其控制的智能化方法。 l系统基本方案 本系统采用AT89S52单片机作为控制核心.对采集到的湿度模拟电压信号通过ADC0809进行分析处理.实现A/D转换.以便数码管显示其湿度值。本设计可以手动设置温度/湿度的上、下限值,如只要有一样与设定的值不符合时,即温度/湿度过高或过低,则该系统会发出语音报警,同时继电器立即切断电源.实现系统的保护。 2硬件系统的组成 (1)主控模块:采用AT
[单片机]
PIC16C71单片机按键换醒CPU的源程序
; p=pic16c71,xt=40000hz LIST P=16c71 ; Z EQU 2 RBPU EQU 7 TEMP EQU 10H OPTIONREG EQU 1H F EQU 1 PORT_B EQU 06H ; INCLUDE P16c71.INC LIST ; ORG 0 ;复位地址 GOTO START ; ORG 4 ;中断向量 GOTO SERVICEINTERRUPT ; START CALL INITPORT_B
[单片机]
单片机学习方法总结
从刚开始接触单片机,到现在已经有4年的时间了,在这期间学习和使用了51单片机、飞思卡尔单片机,LPC2138,PIC16F887等系列的单片机,每接触一款单片机,都会经历熟悉其基本开发,然后将其用于项目中的过程,对于如何学习一款单片机,自己做了如下的总结。 大家都知道,51单片机是最容易入门的,不仅因为其编程简单,更重要的是网上的资料非常丰富。所以一般学习单片机开发的都将51单片机作为入门开发的首选。我学习51单片机的时候是采用这样的一个步骤进行学习的: 第一步(熟悉的过程):买了一款51单片机开发板,然后就开始了我的学习之旅,刚开始的时候没有去看视频教程,而是对着一本实验教材进行学习,那本实验教材的名字记不清楚了,但是其内容
[单片机]
STM32单片机开发环境安装与工程搭建
一、认知STM32 1、STM32概念 STM32: 意法半导体基于ARM公司的Cortex-M内核开发的32位的高性能、低功耗单片机。 ST:意法半导体 M:基于ARM公司的Cortex-M内核的高性能、低功耗单片机 32:32位单片机 2、STM32开发的产品 STM32开发的产品:无人机、扫地机器人、3D打印机、平衡机、智能手环等 3、学习STM32对应的招聘职位 招聘职位:单片机开发工程师、单片机软件工程师、STM32开发工程师、嵌入式开发工程师、嵌入式软件工程师。 二、ARM与STM32 嵌入式系统 以应用为中心,以计算机技术为基础,软硬件可裁减,以适应应用系统对功能、可靠性、成本、体积和功耗等有严格要求的专用计算机系统
[单片机]
MCS-51单片机,编程序,计算分段函数的函数值
MCS-51单片机,简单的一个汇编语言程序,计算分段函数的函数值。 已知25H单元中有一个变量X,要求编制程序,按下列函数关系式计算变量Y的值,并将Y的值送到31H、30H单元中。 X*X X 6 Y = 3X-5 2 =X =6 2X+1 X 2 ================================================= 最佳答案: 说明:为了便于网友进行功能测试,所以在下列程序中,比网页上的答案增加了一个测试用的程序段和一些注释。 org 0000H mov 25H, #7 ;这里的数字,可以写 0~255,进行全面调试 call fen_zhi ;调用子程序
[单片机]
【单片机学习】51单片机【串口】,详细介绍
一、先知先会 1、计算串行通信基础 2、串行通信的基本概念 (1)、异步通信与同步通信 a.异步通信 异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发送和接收过程。为使双方的收发协调,要求发送和接收设备的时钟尽可能一致。 异步通信是以字符(构成的帧)为单位进行传输,字符与字符之间的间隙(时间间隔)是任意的,但每个字符中的各位是以固定的时间传送的,即字符之间不一定有“位间隔”的整数倍的关系,但同一字符内的各位之间的距离均为“位间隔”的整数倍。 b、同步通信 同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全同步,。此时,传输数据的位之间的距离均为“位间隔”的整数倍,同时传送的字符间不留间隙,即保
[单片机]
单片机I/O口的状态
单片机有很多引脚,这些引脚负责控制外面的设备。图2-47所示的是用Vcc驱动LED小灯,这个LED小灯可以用发光二极管或者是数码管。 图 2-47 点亮一个发光二极管的电路图 现在当我们把GND去掉,换成I/O口,把VCC去掉,换成I/O口。当I/O口输出大电流时,它是有一定的要求的,把单片机的这个I/O画出来了,如图2-48所示。 图 2-48 单片机引脚内部原理图 这个是单片机的一个I/O口,方框里是单片机的内部,方框外是单片机引脚外部,内部和三极管的原理是一样的,所以我们用三极管来说明,当单片机输出一个高电平时,三极管不会导通,外部也输出一个高电平;当单片机输出一个低电平时,三极管导通,外部I
[单片机]
单片机步进电机转速控制程序(速度LED显示)
单片机源程序如下: //数码管位 高位-----低位 //四个按键控制步进电机:正转,反转,加1,减1 //上电时电机启动,数码管上显示速度最小档1,加减档位均能通过数码管显示出来,电机采用单双八拍方式 //电机转速一共10档,通过按键调节转速 //电机正转时最高位数码管显示0,反转时显示1 #include reg51.h #define uchar unsigned char #define uint unsigned int #define led P0//数码管段选 #define haha P2 sbit s1 = P1^0; sbit s2 = P1^1; sbit s3 = P3^0; sbit s4 = P
[单片机]