下面是其中一个单片机源程序如下:
/*
* File: newmain.c
* Author: YF006
*
* Created on 2018年7月11日, 上午8:20
*/
#include "hardware.h"
// CONFIG
#pragma config FOSC = INTRCIO // Oscillator Selection bits (INTOSCIO oscillator: I/O function on RA4/OSC2/CLKOUT pin, I/O function on RA5/OSC1/CLKIN)
#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled and can be enabled by SWDTEN bit of the WDTCON register)
#pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled)
#pragma config MCLRE = OFF // MCLR Pin Function Select bit (MCLR pin function is digital input, MCLR internally tied to VDD)
#pragma config CP = OFF // Code Protection bit (Program memory code protection is disabled)
#pragma config CPD = OFF // Data Code Protection bit (Data memory code protection is disabled)
#pragma config BOREN = ON // Brown-out Reset Selection bits (BOR enabled)
#pragma config IESO = ON // Internal External Switchover bit (Internal External Switchover mode is enabled)
#pragma config FCMEN = ON // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is enabled)
unsigned int dutych=0;
void interrupt Timer2_ISR(void)//这个不对
{
if(TMR2IF)
{
//LED8=!LED8;
TMR2IF = 0;
}
}
int main() {
hardint();//系统初始化
ledint();//LED初始化
keyint();
pwmint();
while(1)
{
if(KEY==0)
{
delay_for(50);
if(KEY==0)
{
delay_for(10);
dutych++;
}
}
if(dutych>5)
{
dutych=0;
}
if(dutych==0)
{
DC1B1=0;
DC1B0=0;
CCPR1L=0X00;
LED1=0;
LED2=0;
LED3=0;
LED4=0;
LED5=0;
}
if(dutych==1)
{
DC1B1=1;
DC1B0=1;
CCPR1L=0X0F;
LED1=1;
LED2=0;
LED3=0;
LED4=0;
LED5=0;
}
if(dutych==2)
{
DC1B1=0;
DC1B0=1;
CCPR1L=0X1F;
LED1=0;
LED2=1;
LED3=0;
LED4=0;
LED5=0;
}
if(dutych==3)
{
DC1B1=1;
DC1B0=1;
CCPR1L=0X2E;
LED1=0;
LED2=0;
LED3=1;
LED4=0;
LED5=0;
}
if(dutych==4)
{
DC1B1=1;
DC1B0=0;
CCPR1L=0X3E;
LED1=0;
LED2=0;
LED3=0;
LED4=1;
LED5=0;
}
if(dutych==5)
{
DC1B1=0;
DC1B0=0;
CCPR1L=0X4E;
LED1=0;
LED2=0;
LED3=0;
……………………
上一篇:(海尔)东软单片机 HR7P153 SOP-16数码管显示程序
下一篇:TM1640与PIC12F629单片机的结合
推荐阅读
史海拾趣
为了防止电池过充,需要对充电终点进行控制,当电池充满时,会有一些特别的信息可利用来判断充电是否达到终点。 一般有以下六种方法来防止电池被过充: 1. 峰值电压控制 : 通过检测电池的峰值电压来判断充电的终点 ; 2. dT/dt 控 ...… 查看全部问答∨ |
TMS320VC5402 DSP与ISD4004语音录放芯片的SPI接口设计 TMS320VC5402 DSP与ISD4004语音录放芯片的SPI接口设计 关键字: Flash接口技术 信号处理平台 软件锁相环 脉压处理平台 视频输入理器 内容摘要:根据语音录放芯片ISD4004的接口特点,设计了其与TMS320VC5402 DSP的SPI接口电路。完成了DSP对I ...… 查看全部问答∨ |
eboot调用EbootInitEtherTransport初始化以太网传输 问题?? 开发板直连电脑 eboot进入 EbootInitEtherTransport()函数后没有返回, 如果选择静态IP 串口只打印到 Enter your selection: d +TOC_Write -TOC_Write System ready! Preparing for download... Using device name: \'SMDK24 ...… 查看全部问答∨ |
|
内核模式中怎么调用LoadLibrary 我想在驱动里恢复ssdt表。但是找原始表的方法是把ntoskrnl.exe载入内存 然后找原始表。 但是在内核模式下怎么把这个文件 载入内存?… 查看全部问答∨ |
|
有一套串口通信协议需要分析破解,寻求达人帮助! 谢谢! to:hawking20001981(东东VC++Primer) 请速和我联系! QQ:652650436… 查看全部问答∨ |
|
嵌入式爱好者的学习笔记连载(三) 1 U-Boot简介 U-Boot,全称Universal Boot Loader,是遵循GPL条款的开放源码项目。从FADSROM、8xxROM、PPCBOOT逐步发展演化而来。其源码目录、编译形式与Linux内核很相似,事实上,不少U-Boot ...… 查看全部问答∨ |