推荐阅读最新更新时间:2024-11-13 12:43
msp430单片机通过串口向上位机发送浮点数
组装数据 首先将数据组装起来,通过sprintf函数。 组装数据时用的小技巧: length = 0; sprintf(Storage+length, Rr=%4.3f , g_StrComm.aSBuf ); length = strlen(Storage); //strlen =12 sprintf(Storage+length, Rh=%4.3f , g_StrComm.aSBuf ); length = strlen(Storage); //strlen =24 sprintf(Storage+length, B1=Rr/Rh=%2.4f , g_StrComm.aSBuf /g_
[单片机]
MSP430 PIN 操作寄存器
1、P口端口寄存器: (1)、PxDIR 输入/输出方向寄存器 (0:输入模式 1:输出模式) (2)、PxIN 输入寄存器 输入寄存器是只读寄存器,用户不能对其写入,只能通过读取该寄存器的内容知道I/O口的输入信号。 (3)、PxOUT 输出寄存器 寄存器内的内容不会受引脚方向改变的影响。 (4)、PxIFG 中断标志寄存器 (0:没有中断请求 1:有中断请求) 该寄存器有8个标志位,对应相应的引脚是否有待处理的中断请求; 这8个中断标志共用一个中断向量,中断标志不会自动复位,必须软件复位; 外部中断事件的时间必须 =1
[单片机]
[MSP430] 2.中断和计时器
在这一部分中我们将会初步了解到中断的概念及其作用, 我们会尝试使用计时器中断和 I/O 中断操作 LED 灯,让我们开始吧! 什么是中断?我们可以将它理解为一个约定的信号,来告知单片 机特定的事件发生了,引起程序从正常运行的主函数中断开,转而 执行中断处理程序,处理特定的事件。 中断是一个非常重要的概念,它可以让处理器免于执行冗余的轮 询操作等待特定的外部事件的发生。在 MSP430 的架构中,有许 多种类的中断:计时器中断,I/O 中断,ADC 中断等等。每一种中 断在使用前都要使能和配置,每一种中断又分别有中断处理程序 (Service Routine)。 下面就让我们尝试写一个小程序,实现使用计时器中断和 I/O
[单片机]
分享MSP430用TB捕获脉宽问题与解决心得
============================================================================================================================= 硬件:单片机:MSP430F149 晶振:32K,8M 输入信号:通过无线接收到低电平10ms,高电平7.5ms, 输入口:P4.0(TB0) 要求:捕获低电平的脉宽 =============================================================================================================
[单片机]
MSP430F149单片机能输出多少路PWM波?
在使用430的PWM波的时候,我一直有一个困惑,那就是它到底能输出几路PWM波?我想别的朋友可能也有相同的困惑,在我查找了好多资料之后最终搞懂了,下面分享一下学习经验。 首先,MSP430F149有两个16位的定时器Timer_A和Timer_B,其中TA有3个捕获比较单元,TB有7个捕获比较单元,产生PWM波需要将定时器配置在比较模式下,刚开始我以为既然TA有三个捕获比较模块,那么就应该有三个PWM波,结果怎么配置都无法产生TA1,后来在我仔细查看User's Guide才弄懂了,下面先上图: 上图说道:每个捕获、比较模块的输出可以产生PWM信号,每个输出根据EQU0和EQUX可以配置为8种模式。 我们知道
[单片机]
msp430g2553的ADC10多通道输入
msp430g2553有8个外部通道可以输入,下面将完成3路输入控制3个LED亮灭的程序。 寄存器说明 msp430g2553的ADC10寄存器 代码说明 在熟悉adc10的几个寄存器后,来看代码 1、ADC10CTL1 = INCH_5+CONSEQ_1;控制寄存器设置了最高的通道和转换模式。 2、ADC10AE0|= BIT5+BIT4+BIT3;输入使能寄存器设置了要输入的引脚。 3、采样次数和存放位置: ADC10DTC1 = 0x03;设置采样次数 unsigned int a ={0}; ADC10SA = (unsigned int)a; 存放地址 若p1.5,p1.4,p1.3输入,采样3次,通道序列单次(转换模式
[单片机]
MSP430单片机低功耗控制与系统工作模式详解
CPU内状态寄存器SR中的SCG1、SCG2、OscOff和CPUOff位是 重要的低功耗控制位。只要任意中断被响应,上述控制位就被压入堆栈保存,中断处理之后,又可以恢复先前的工作方式。在中断处理子程序执行期间,通过间接访 问堆栈数据,可以操作这些位;这样允许程序在中断返回(RETI)后,以另一种功耗方式继续运行。各控制位作用如下: SCG1:当SCG1复位时,使能SMCLK;SCG1置位则禁止SMCLK。 SCG0:当SCG0复位时,直流发生器被激活,只有SCG0被置位且DCOCLK信号没有用于MCLK或SMCLK,直流发生器才能被禁止。 OscOff:当OscOff复位时,LFXT晶体振荡器激活,只有当OscOff
[单片机]
基于MSP430FE42x防窃电电能表应用
当前,电子式电能表的防窃电技术在电能表行业中的地位越来越重要,不同国家、地区的电能表市场都在不同程度上要求电能表的防窃电计量。人们所意识到的窃电现象和防窃电技术的类型在不断增多,而且每年都会针对新的窃电行为,研究出相应的防窃电技术。 在传统的电子式电能表设计中,由于以下几点原因,导致它们不能较完善的检测或处理窃电行为:仅使用进线端的电压和火线的进出端所流经的电流作为电能计量的依据;绝大多数没有使用很可靠的铅封;一些窃电方式很容易操作,但是很难检测。 MSP430FE42x系列单片机是美国德州仪器公司新推出的单相防窃电多功能电能表专用芯片,它是德州仪器MSP430系列产品的成员,是一款超低功耗的16位单片机。MSP430FE42
[单片机]