历史上的今天
返回首页

历史上的今天

今天是:2025年03月26日(星期三)

正在发生

2020年03月26日 | MSP430教程13:MSP430单片机比较器A模块

2020-03-26 来源:eefocus

比较器A模块 
以下图可以看出比较器A的结构大概可以分4部分构成,分别为模拟输入,比较器A核心,低通虑波器,基准电压部分和中断部分组成。


首先,整个比较器A的工作必需由CAON位置为1时才能工作的,此位属CACTL1控制寄存器。单片机上电时此位是为0的,也就是说比较器是不工作的。
以下大概讲述几个部分电路的功能和一些相关信息。

模拟输入电路:
外部模拟引脚信号CA0,CA1(正负端)可以分别由P2CA0,P2CA1位控制开或关。经过软件的设置可以分别与内部的几个基准电压进行比较(0.5VCC,0.25VCC,三极管门值电压)或外部其中的电压进行比较。

应用的硬件比较可以分为以下三种组合:
两个外部引脚输入信号进行比较
其中一个外部引脚信号与内部的0.5VCC或0.25VCC比较
其中一个外部引脚信号与内部基准电压比较

参考电压发生器
参考电压电路是可以由CARSEL,CARERF0,CARERF1位来控制电压的产生。通过软件设置可以选择几种电压输出到比较器的输入中作为比较,当然此参考电压也可以通过单片机的引脚往外部提供参考电压之用。

比较器A核心
比较器CAON位控制开关,CAEX位控制位控制方向。

低通虑波器
低通虑波器只需一个CAF位来控制此虑波器的功能开与关。此虑波器功能是用于消除比较器输出信号的毛剌,以保证信号的质量和中断请求的可靠性。

中断请求
比较器A模块是具有中断功能的,如比较器功能CAIE中断允许开了,在CAIF信号产生时将生产中断(当然GIE要为1时)。比较器A模块是具有中断独立向量的,是一个单独的中断,CUP接受请求后会硬件自动清除中断标志位CAIFG。
        

比较器模块相关寄存器说明
CACTL1 比较器控制寄存器1

   
CAEX: 控制内部比较器A的输入信号和输出信号的方向

CARSEL:控制内部参考电压加到比较器A的正输入端还是负输入端 
由结构图可以看出,CAEX,CARSEL在不同设置时,比较器A输入端的所加的参考电压是有不同的.


请参考以下列表:
----------------------------------- 
CARSEL   CAEX     参考电压接入端
  0        0       内部参考源加到比较器的正端
  0        1       内部参考源加到比较器的负端 
  1        0       内部参考源加到比较器的负端 
  1        1       内部参考源加到比较器的正端

 

CAREF1, CAREF0 选择参考源:
 0 使用外部参考
 1 选择0.25VCC为参考电压
 2 选择0.5VCC为参考电压
 3 选择二极管电压为参考电压,须参见具体IC的资料

 

CAON: 控制比较器A的打开与关闭
 0 关闭比较器工作
 1 打开比较器工作

 

CAIES: 中断边沿触发模式选择
 0 上升沿使中断标志CAIFG置位
 1 下降沿使中断标志CAIFG置位

CAIE:比较器中断允许
 0 禁止中断
 1 允许中断

 

CAIFG: 比较器中断标志
 0 没有中断请求
 1 有中断请求标志信号



CACTL2 比较器控制寄存器2


   
P2CA1:控制输入端CA1
 0 外部引脚信号不与比较器A连接
 1 外部引脚信号与比较器A连接

 

P2CA0:控制输入端CA0
 0 外部引脚信号不与比较器A连接
 1 外部引脚信号与比较器A连接

 

CAF: 选择比较器输出端是否经过RC低通滤波器
 0 开通RC低通滤波器
 1 直通信号

 

CAOUT: 比较器A输出的信号
 0 CA0小于CA1
 1 CA0大于CA1


CAPD 端口禁止寄存器
比较器A模块的输入输出与IO口共用引脚,可以控制IO端口输入缓冲器的通断开关.CAPD控制位初始化为0,则端口输入缓冲器有效.当相应位为1时,端口输入缓冲器无效。

程序范例:
#include
void main (void)
 {
  WDTCTL = WDTPW + WDTHOLD;     // 停止WDT
  CAPD |= 0x08;           // 断开与IO端口输入
  CACTL2 = P2CA0;          // 设置P2.3为+comp
  CCTL0 = CCIE;           // CCR0 允许中断
  TACTL = TASSEL_2 + ID_3 + MC_2;  // SMCLK/8,计数模式
  _EINT();             // 开总中断

 

 while (1) // 循环
 {
  CACTL1 = 0x00;          // 没有参考电压
  _BIS_SR(LPM0_bits);        // 进入LPM0
  CACTL1 = CAREF0 + CAON;      // 0.25*Vcc=P2.3, 比较器开
  _BIS_SR(LPM0_bits);        // 再次进入LPM0
  CACTL1 = CAREF1 + CAON;      // 0.5*Vcc=P2.3, 比较器开
  _BIS_SR(LPM0_bits);        // 再次进入 LPM0
  CACTL1 = CAREF1 + CAREF0 + CAON;  // 0.55V on P2.3,比较器开
  _BIS_SR(LPM0_bits);        // 再次进入LPM0
  }
 }

// Timer A0 interrupt service routine
#pragma vector=TIMERA0_VECTOR
__interrupt void Timer_A (void)
{
 _BIC_SR_IRQ(LPM0_bits);       //退出LMP0模式
}

推荐阅读

史海拾趣

福建国光公司的发展小趣事

对于具有锁定功能的物体检测报警电路,网友可能会有多种问题,以下是一些常见问题及其回答:

一、电路工作原理相关问题

  1. 问题:具有锁定功能的物体检测报警电路是如何工作的?
    回答:该电路通常包括光电检测部分、信号处理部分和报警输出部分。当有人或物体入侵到光电检测的空间时,光被遮挡,导致光敏晶体管截止,其集电极电压上升。这一变化被信号处理部分检测并转换为控制信号,使报警电路启动,发出声音或光等报警信号。同时,电路具有锁定功能,即一旦报警触发,需要特定操作(如断开开关)才能解除报警状态。

  2. 问题:锁定功能是如何实现的?
    回答:锁定功能通常通过记忆电路或状态保持电路实现。当报警信号被触发后,这部分电路会保持一个高电平或低电平状态,使报警信号持续输出,直到接收到解除报警的外部信号(如断开开关)。这种设计可以防止短暂的遮挡或误触发导致的短暂报警,提高系统的稳定性和可靠性。

二、电路设计与实现相关问题

  1. 问题:在设计具有锁定功能的物体检测报警电路时,需要考虑哪些因素?
    回答:设计时需要考虑的因素包括检测灵敏度、报警响应时间、误报率、功耗、成本以及与其他系统的兼容性等。此外,还需要考虑电路的稳定性、可靠性和安全性,确保在各种环境条件下都能正常工作。

  2. 问题:如何降低电路的误报率?
    回答:降低误报率的方法包括优化光电检测器的布局和参数设置,以减少外界光线的干扰;采用信号处理算法对检测信号进行滤波和去噪处理;以及设置合理的报警阈值等。此外,还可以通过增加确认机制(如二次检测)来进一步降低误报率。

三、电路应用与维护相关问题

  1. 问题:这种电路在哪些领域有应用?
    回答:具有锁定功能的物体检测报警电路在多个领域都有广泛应用,如安防监控、工业自动化、智能家居等。在安防监控领域,它可以用于入侵检测、门窗防护等场景;在工业自动化领域,可以用于生产线上的物料检测、机器人避障等场景;在智能家居领域,则可以用于门窗传感器、人体存在检测等场景。

  2. 问题:如何对电路进行日常维护和故障排查?
    回答:日常维护包括定期检查电路的连接是否牢固、光电检测器是否清洁无遮挡等。故障排查时,可以使用万用表等工具检测电路各部分的电压和电流是否正常,定位故障点。同时,也可以结合报警记录和监控视频等信息进行综合分析,以快速准确地判断故障原因并采取相应的解决措施。

以上是针对具有锁定功能的物体检测报警电路可能提出的问题及其回答。需要注意的是,由于电路的具体设计和实现方式可能因应用场景和需求的不同而有所差异,因此在实际应用中还需要根据具体情况进行调整和优化。

ZTE高新兴(Gosuncn)公司的发展小趣事

对于J-107B型高频双头式热合机电路,网友可能提出的问题及回答如下:

问题一:J-107B型高频双头式热合机的主要工作原理是什么?

回答:J-107B型高频双头式热合机的主要工作原理是利用高频电场作用于塑料材料,使其内部分子发生极化现象,并在高频电场的快速变化下,这些被极化的分子以同样极快的速度跟随变化,从而因介电损耗产生大量的热量。这些热量聚集并达到高温,使塑料材料熔化。在熔化状态下,通过施加一定的压力,可以使两块或多块塑料熔合粘结在一起,实现高频热合的目的。

问题二:J-107B型高频双头式热合机的电路结构有哪些主要部分?

回答:J-107B型高频双头式热合机的电路结构主要包括以下几个主要部分:

  1. 高频振荡电路:这是热合机的核心部分,通常由电子管(如Fu-33中功率发射电子管)组成,用于产生高频电场。电子管通过自激振荡方式工作,利用电子管的授间电容作振荡回路的主电窖,组成考毕兹振荡器。

  2. 时间控制电路:用于控制热合的时间,通常由电子管(如6P6P电子管)和时间控制元件(如RP1和RP2调节器)组成。通过调整这些元件,可以精确地控制热合过程中的各个阶段时间,如预热时间、熔合时间和冷却时间。

  3. 电源电路:为整个热合机提供稳定的电源供应,确保高频振荡电路和时间控制电路的正常工作。电源电路需要满足一定的电压和电流要求,通常要求电源电压在190~230V范围内。

  4. 保护电路:为了防止电路过载、短路等异常情况的发生,热合机还配备了保护电路。这些电路能够在检测到异常情况时迅速切断电源,保护设备和操作人员的安全。

问题三:如何维护和保养J-107B型高频双头式热合机?

回答:为了保持J-107B型高频双头式热合机的良好性能和延长使用寿命,需要进行定期的维护和保养。以下是一些建议:

  1. 定期检查电源线和插头:确保它们没有损坏或松动,避免电源问题导致的故障。

  2. 清洁机器内部:定期清理机器内部的灰尘和杂物,保持机器内部的清洁和干燥。这有助于防止电子元件因灰尘积累而损坏。

  3. 检查电子元件:定期检查高频振荡电路和时间控制电路中的电子元件是否损坏或老化。如有需要,应及时更换以确保电路的正常工作。

  4. 调整和维护模具:模具是热合机的关键部件之一,需要定期进行调整和维护。确保模具的接合位置准确、平整,避免模具损坏导致的热合质量下降。

  5. 注意安全操作:在操作过程中,应注意安全用电和防火措施。避免在潮湿或腐蚀性气体环境下使用热合机,以防止触电或设备损坏。

  6. 定期校准:对于需要精确控制时间或温度的热合机,应定期进行校准以确保其准确性。这有助于提高热合质量和生产效率。

General Electronic Devices公司的发展小趣事
负责产生控制信号,驱动开关元件按一定频率和占空比工作。
C-TON Industries公司的发展小趣事

在电子行业的早期阶段,C-TON Industries公司以其创新的技术理念脱颖而出。公司创始人李先生,一位电子工程领域的专家,意识到半导体技术的重要性,并决定将其作为公司的发展重点。通过不断投入研发,C-TON成功开发出了一款性能卓越的芯片,这款芯片在速度和稳定性上都远超当时市场上的同类产品。这一创新不仅赢得了客户的青睐,也帮助C-TON在市场上取得了突破性的进展。

EPC公司的发展小趣事

最后一家EPC公司深知创新是企业发展的核心动力。公司注重研发投入和人才培养,建立了专业的研发团队和完善的研发体系。公司不断跟踪行业发展趋势和技术动态,积极引进新技术、新工艺和新材料,推动产品升级和产业升级。同时,公司注重创新成果的转化和应用,将新技术、新工艺和新材料应用于实际项目中,提高了项目的竞争力和附加值。通过持续的创新和积累,公司逐渐在电子行业中形成了独特的技术优势和核心竞争力。

请注意,以上故事仅为框架性描述,并未包含具体的公司名称、项目细节和具体数字。您可以根据这些框架性描述进一步深入了解相关公司的发展情况,并结合实际案例进行具体分析和撰写。

鸿展光电(GPO)公司的发展小趣事

另一家EPC公司认识到全球化市场的重要性,积极拓展海外市场。公司首先在欧洲和北美地区设立了分公司,通过深入了解当地市场需求和法规要求,成功开展了多个项目。随后,公司进一步将业务拓展至亚洲和非洲等地区,形成了全球化的市场布局。在全球化的过程中,公司注重本土化经营,积极融入当地市场,为客户提供定制化的解决方案,赢得了客户的信任和支持。

问答坊 | AI 解惑

红外学习型万能解码遥控开关及调光调速器

有需要请联系我  免费的  截止时间2009.6.28(上班了,就没时间了) [ 本帖最后由 sjl105105 于 2009-6-26 12:31 编辑 ]…

查看全部问答>

在绘制原理图时如何设置标题

在protel99绘制原理图中,要求设置标题。为什么在disign菜单option中设置标题,为什么显示不出来呢…

查看全部问答>

要下载一个设备的SDK,大家帮我看看应该下哪个

CE上开发MC3000的程序,我去MC3000下他的SDK,没有搞清楚应该下载下面的哪个. 1:Platform SDK for MC3000 v1.1 with Windows CE 5.0 Core 2:Platform SDK for MC3000 v1.1 with Windows CE 5.0 Professional 不知道这两个有什么区别. 另外还有一 ...…

查看全部问答>

74HC244内部的三态门是如何实现缓冲和驱动的?

我在用proteus做LPC2132的串口通信仿真时,外接一个虚拟终端和示波器,用示波器来查看数据发送的波形 当把示波器和虚拟终端接在一起然后连到Txd0 Rxd0上时,虚拟终端上面不能显示LPC2132发过来的数据,但是示波器可以看到LPC2132串口数据发送的波 ...…

查看全部问答>

LabVIEW关于定时的研究

1.如果想实现定周期While循环时,需要用Wait(ms).vi而不是Wait Until Next ms Multiple.vi2.Wait(ms).vi在与代码并行时可以保证整个运行时间为设定值,这个功能一般都会以为是Wait Until Next ms Multiple.vi的特性3.Wait Until Next ms Multipl ...…

查看全部问答>

FPGA设计中的异步信号处理

        近来一直在学习在fpga如何进行异步信号的处理,有一些心得,开个贴,把自己的一些体会贴出来,跟大家分享,也期待可以得到高手的指点。       目录如下:  &n ...…

查看全部问答>

IAR中如何在执行main()之间关闭看门狗

IAR中如何在执行main()之间关闭看门狗?论坛上有人问,但是说的不具体。不知道怎么弄。会的告诉一下,谢谢! …

查看全部问答>

基础的LED灯和数码管同时点亮的问题

如题,我在练习的时候遇到了一个可能比较基本的问题:不通过定时器,只写一个delay函数来实现LED灯的闪烁和数码管的点亮。 我自己用这种方式写的(8个LED闪烁,点亮2个数码管),无法实现上述功能。LED能闪烁,但是两位数码管中的第一位不能稳定显 ...…

查看全部问答>

1602取字模软件及其设置

看到论坛里面有用1602显示汉字的,很好奇,也整弄了下 找了个区模的软件,能很好的取模,共享给大家 第一步:先新建一个 x*y  的模; 第二步:自己一个点点自己点; 第三步:使字模左右翻转下; 第四部:设置(看图片) 第五部: ...…

查看全部问答>