历史上的今天
返回首页

历史上的今天

今天是:2025年01月31日(星期五)

2019年01月31日 | PIC16F877A内部比较器使用Demo

2019-01-31 来源:eefocus

内部比较器的用途是检测外部传感器的状态变化,例如霍尔开关,有金属接近的时候输出高电平,没有则输出低电平,为什么不直接用IO口来检测呢? 我想比较器跟普通 IO 检测一个很不同的地方就它有参考电压,设置一个合理的阀值就能让比较器正确的工作,这点是 IO 不能比拟的,而且比较器也有中断,方便程序的编写。


#include

 

__CONFIG(0xFF32);

 

#define LED0 RD0

 

/*

实验方法:

RA0(Vin-)和RA3(Vin+)的电平比较,并将结果输出到LED

*/

void CM_init(void)

{

TRISA=0x09; //RA0与RA3设置为输入

TRISD=0x00;

PORTD=0xff;

CMCON=0x02; //两个独立比较器,有C1OUT/C2OUT作为输出

CMIE=1;

GIE=1;

PEIE=1;

}

 

void main()

{

CM_init();

while(1);

}

 

void interrupt ISR(void)

{

if(CMIF)

{

CMIF=0;

LED0=C1OUT; //将比较器的结果输出到LED0

}

}


推荐阅读

史海拾趣

Frequency Sources公司的发展小趣事

Frequency Sources公司深知质量是企业生存和发展的基石。因此,公司始终将质量控制放在首位,建立了完善的质量管理体系和检测机制。从原材料采购到生产加工、成品检验等各个环节都严格把关,确保产品质量符合客户要求和行业标准。同时,公司还注重品牌建设和客户服务体验的提升,通过提供优质的售前咨询、售中支持和售后服务赢得了客户的信赖和好评。这些努力使得公司的品牌形象深入人心,成为了行业内的佼佼者。

Electron Products Inc公司的发展小趣事

随着产品线的不断丰富和市场竞争的加剧,EPI开始积极拓展市场,寻求更广阔的发展空间。公司制定了国际化战略,通过参加国际展会、建立海外销售渠道等方式,成功将产品打入国际市场。同时,EPI还积极与海外企业合作,共同开发新产品,拓展业务领域。

谷峰(GOFORD)公司的发展小趣事

面对电子行业快速变化的市场环境和日益激烈的竞争态势,GStek始终保持清醒的头脑和敏锐的洞察力。公司密切关注行业动态和技术发展趋势,及时调整战略方向和产品布局。同时,GStek还注重内部管理和团队建设,不断提升员工的综合素质和专业技能。这些努力使得GStek能够在复杂多变的市场环境中保持稳健的发展态势,为实现其成为全球主要电源管理IC设计公司的愿景而不断努力。

Daniels Manufacturing公司的发展小趣事

自1946年成立以来,Daniels Manufacturing Corporation一直致力于为军事和电信行业提供高质量的工具系统和技术。在20世纪70年代,DMC经历了一次重大的技术突破,成功研发出一种新型的手动压接工具,该工具能够精确、高效地处理各种电子连接器。这一技术的突破为DMC赢得了市场的认可,也为其后续的产品线扩展奠定了基础。在接下来的几十年里,DMC不断投入研发,推出了包括电动、气动、液压压接工具在内的多种产品,广泛应用于通信、光纤、激光等领域。

Anderson Power Products公司的发展小趣事

在当今社会,绿色环保和可持续发展已成为全球共识。作为一家具有社会责任感的企业,DMC积极践行绿色环保理念,致力于实现可持续发展。在生产过程中,DMC采用环保材料和清洁能源,减少废弃物和污染物的排放。同时,DMC还注重产品的环保性能设计,推出了一系列符合环保标准的产品。此外,DMC还积极参与社会公益活动,支持环保事业和社区建设。

CWIND公司的发展小趣事

在激烈的市场竞争中,CWIND公司始终坚持以客户为中心的服务理念。公司建立了完善的客户服务体系,为客户提供从产品咨询、购买到售后服务的全方位支持。同时,公司还注重品牌建设和宣传推广工作。通过加大广告投放力度、举办品牌活动等方式,CWIND逐渐提升了品牌知名度和美誉度。在消费者心中树立起了良好的品牌形象和口碑效应。

问答坊 | AI 解惑

新手请教:电容问题

今天我买了两个晶振电容:两个都是50V  10uf(微发)的,这两个是否合适做12M的晶振电容? 我怎么看到书上写的适合用20pf的电容? 另外请问电容上显示的50V是什么意思? 谢谢!…

查看全部问答>

帮分析个简单的程序。。实在扛不住弄出来了

用定时器1做的简单输出,友善micro2440的板子 请帮我分析下,搞了好长时间,还是出不来 流驱动:#include \"options.h\" #include #include #include #include #include #include #include #include #include \"time.h\"  ...…

查看全部问答>

请教SD卡读写的问题

  我在2440的开发板上使用SD卡用作U盘,在我的电脑上可以看到 ,也可以读写文件,但经常写一部分就出错,比如同时写200多个文件,写了几十个或100多个文件时(已经写进去的文件是好的,可以用读卡器读到),就出现错误。    ...…

查看全部问答>

C语言与单片机C语言(C51)有啥不同?

请问一下各位 学校里学的C语言和单片机C语言(C51)有啥子不一样的?哪个好学一点. 在学校里学了C语言后感觉没有学到啥子,挺浮浅的,现在只记得一些简单的规则和语法。 不知道现在是继续学它基础打扎实点呢,还是就开始学C51,希望大家给点建 ...…

查看全部问答>

wince界面设计问题

请问要设计出这样的界面需要使用什么软件? 这种界面设计使用的什么方法。都是贴的图吗? 那具体设计过程是怎么样的? 好像是先设计整个界面,然后在截图。 …

查看全部问答>

招聘嵌入式开发工程师

岗位描述: 1、   嵌入式软件设计与开发。 2、   根据项目需要进行软件技术支持。 3、   嵌入式项目软件开发过程控制 任职要求: 1、   熟悉Keil\\IAR开发环境,熟悉C/C++语言 2、    ...…

查看全部问答>

请各位帮忙看看这个题目

plc车库管理设计梯形图 控制要求: 1.入库车辆前进时,经过1#传感器-->2#传感后,计数器A加1,后退时经过2#传感器-->1#传感器后,计数器B减1;(计数器B的初始值由计数器A送来)只经过一个传感器则计数器不动作 2.出库车辆前进时,经过2#传感器-->到1# ...…

查看全部问答>

问高手一个关于STM8 I2C的问题

最近在调STM8 的I2C(不想搞模拟的I2C),结果I2C没有调通,不知道问题所在,软件是参考I2C EEPROM固件那个程序写的。初始化如下: void IIC_Init(void) { UCHAR temp; CLK_PCKENR1 |= 0x01; I2C_CR1    = 0x00;  &n ...…

查看全部问答>

那么这两种写法又有啥区别呢

那么这两个有啥区别呢?reg 【15:0】datareg  data【15:0】…

查看全部问答>

关于vca810的放大增益

本帖最后由 dontium 于 2015-1-23 12:51 编辑 我这两天用面包板按照vca810芯片的datasheet中的figure2 电路搭建了一个压控放大,将8脚的50欧姆电阻去掉,并在8脚加了一个vpp=30mv,f=800hz的正弦波(函数发生器产生),并在1脚直接接地。但是在Vc= ...…

查看全部问答>