历史上的今天

今天是:2024年11月07日(星期四)

正在发生

2019年11月07日 | PIC16F690单片机初学者C语音编程参考

发布者:忙中取乐 来源: 51hei关键字:PIC16F690  单片机  C语音编程 手机看文章 扫描二维码
随时随地手机看文章

下面是其中一个单片机源程序如下:

/* 

* 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;

……………………



关键字:PIC16F690  单片机  C语音编程 引用地址:PIC16F690单片机初学者C语音编程参考

上一篇:(海尔)东软单片机 HR7P153 SOP-16数码管显示程序
下一篇:TM1640与PIC12F629单片机的结合

推荐阅读

据路透社报道称,美国联邦法官周二裁定芯片销售商高通公司(QCOM.O)必须将其部分技术许可给英特尔公司(INTC.O)等竞争对手。这项初步裁决是在美国联邦贸易委员会(U.S. Federal Trade Commission)于2017年初提起的针对高通的反垄断诉讼中做出的,预计将于明年开庭审理。 美国加利福尼亚州北区地方法院的Lucy Koh法官的初步裁决称,高通公司必须授...
Strategy Analytics 最新发布的研究报告指出,亚马逊强大的生态系统、低廉的零售价格,更新的产品组合以及7月进行的Prime Day促销活动推动了亚马逊平板电脑的销量同比增长141%,其市场份额达到14%,成为了2019年Q3全球第二大平板电脑厂商。2019年Q3全球平板电脑市场规模同比下降4%,出货量为3820万台。其它厂商能否复制亚马逊服务和生态系统战略的成...
现在有不少爱好者手上有数字万用表,但却没有测量温度的功能。这里向大家介绍一种DIY温度测量仪,其测量精度±0.1℃,测量范围-10~110℃。该温度计用途广泛。测量准确,读数直观,温度时间响应快。是家庭和监控温度的好帮手。以下介绍具体的制作方法。一、材料1.外壳 旧遥控器外壳1只,按照图2的样子在底盖上打两个发光二极管孔、1个电源开关孔、1个调...
摆脱芯片供应短缺问题 双芯片代工策略见效 11月4日,高通股价飙涨逾12%,相较同业,高通在面对芯片更显得心应手,并看好明年业绩将持续成长。 高通执行长 Crisano Amon 于电话会议上表示,预计12月底供应问题将明显好转,明年下半年将有足够的供应满足需求,预期 2022财年EPS有望年增20%。 Lily点评:芯片短缺一直影响5G手机的出货量。高通作为全...

史海拾趣

问答坊 | AI 解惑

防止电池过充的控制方法

 为了防止电池过充,需要对充电终点进行控制,当电池充满时,会有一些特别的信息可利用来判断充电是否达到终点。   一般有以下六种方法来防止电池被过充:   1. 峰值电压控制 : 通过检测电池的峰值电压来判断充电的终点 ;   2. dT/dt 控 ...…

查看全部问答∨

TMS320VC5402 DSP与ISD4004语音录放芯片的SPI接口设计

TMS320VC5402 DSP与ISD4004语音录放芯片的SPI接口设计 关键字: Flash接口技术 信号处理平台 软件锁相环 脉压处理平台 视频输入理器 内容摘要:根据语音录放芯片ISD4004的接口特点,设计了其与TMS320VC5402 DSP的SPI接口电路。完成了DSP对I ...…

查看全部问答∨

DSP为什么快?

遇到一位高手问我一个问题:DSP为什么快?这个问题是不是很高深?  到目前为止,还真说不清为什么快? 答案一:具体问题具体分析,DSP不一定什么都快。 不过,指令集和寻址方式,不是通用处理器都能支持的。典型的来一个FFT的位反转寻 ...…

查看全部问答∨

eboot调用EbootInitEtherTransport初始化以太网传输 问题??

开发板直连电脑 eboot进入 EbootInitEtherTransport()函数后没有返回, 如果选择静态IP  串口只打印到 Enter your selection: d +TOC_Write -TOC_Write System ready! Preparing for download... Using device name: \'SMDK24 ...…

查看全部问答∨

操作系统为vxworks时,测试c时怎么查看各自定义的各个函数的运行性能?

在windows下是有相应的工具可以查看的,但在vxworks下就不明白了…

查看全部问答∨

内核模式中怎么调用LoadLibrary

内核模式中怎么调用LoadLibrary 我想在驱动里恢复ssdt表。但是找原始表的方法是把ntoskrnl.exe载入内存 然后找原始表。 但是在内核模式下怎么把这个文件 载入内存?…

查看全部问答∨

想学习Win CE,高手引路!

最近看到大家都在讨论Win CE,我也想学习学习,但不知道从那里开始,请大家推荐点好的学习资料,感激!…

查看全部问答∨

有一套串口通信协议需要分析破解,寻求达人帮助

有一套串口通信协议需要分析破解,寻求达人帮助! 谢谢! to:hawking20001981(东东VC++Primer) 请速和我联系! QQ:652650436…

查看全部问答∨

如何在wince6.0下开发数字电视

如何在wince6.0下开发数字电视,有相关的资料吗?请发给我一份。提供个思路最好了。谢谢…

查看全部问答∨

嵌入式爱好者的学习笔记连载(三)

嵌入式爱好者的学习笔记连载(三)     1 U-Boot简介 U-Boot,全称Universal Boot Loader,是遵循GPL条款的开放源码项目。从FADSROM、8xxROM、PPCBOOT逐步发展演化而来。其源码目录、编译形式与Linux内核很相似,事实上,不少U-Boot ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved