Quantcast
Channel: MSP 低功耗微控制器论坛 - 最近的话题
Viewing all 3634 articles
Browse latest View live

msp430i2041

$
0
0

msp430 程序执行,结果死循环在   初始化_c_int00_noargs() at boot.c:111 0x82AC (the entry point was reached)


MCSP432 外接DHT11温湿度传感器

$
0
0

按照51的形式修改代码操作DHT11温湿度传感器的发现发送的数据电压正常,但是一直得不到DH11温湿度传感器的回应,

51的代码:

void RH(void)
{
//主机拉低18ms
P2_0=0;
Delay(180);
P2_0=1;
//总线由上拉电阻拉高 主机延时20us
Delay_10us();
Delay_10us();
Delay_10us();
Delay_10us();
//主机设为输入 判断从机响应信号
P2_0=1;
//判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行
if(!P2_0) //T !
{
U8FLAG=2;
//判断从机是否发出 80us 的低电平响应信号是否结束
while((!P2_0)&&U8FLAG++);
U8FLAG=2;
//判断从机是否发出 80us 的高电平,如发出则进入数据接收状态
while((P2_0)&&U8FLAG++);
//数据接收状态
COM();
U8RH_data_H_temp=U8comdata;
COM();
U8RH_data_L_temp=U8comdata;
COM();
U8T_data_H_temp=U8comdata;
COM();
U8T_data_L_temp=U8comdata;
COM();
U8checkdata_temp=U8comdata;
P2_0=1;
//数据校验

我修改后的代码:

void RH(void)
{
//主机拉低18ms
P5->DIR |= 0x01;
P5->OUT &= ~0x01;
Clock_Delay1ms(18);
P5->OUT |=0x01;
//总线由上拉电阻拉高 主机延时20us
P5->DIR &= ~0x01;
Clock_Delay1us(20);
//主机设为输入 判断从机响应信号
P5->DIR &= ~0x01;
//判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行
if(!(P5->IN&0x01)) //T !         此处一直检测不到低电平的回应
{
U8FLAG=2;
//判断从机是否发出 80us 的低电平响应信号是否结束
while((!(P5->IN&0x01))&&U8FLAG++);
U8FLAG=2;
//判断从机是否发出 80us 的高电平,如发出则进入数据接收状态
while((P5->IN&0x01)&&U8FLAG++);
//数据接收状态
COM();
U8RH_data_H_temp=U8comdata;
COM();
U8RH_data_L_temp=U8comdata;
COM();
U8T_data_H_temp=U8comdata;
COM();
U8T_data_L_temp=U8comdata;
COM();
U8checkdata_temp=U8comdata;
P5->DIR |=0x01;
P5->OUT |=0x01;
//数据校验

我不知道我这样操作GPIO的方式是否正确 ,有没有GPIO操一线式的例子可以参考。

客户咨询MSP432P401R中,Bootloader存放的地址范围,主程序存放的起始地址如何设置,及中断向量如何进行配置。

$
0
0

Dear all,

我们有客户使用MSP432P401R,关于bootloader有问题咨询。

希望确认一下,MSP432P401R是否可以像ST的MCU那样,在flash中存储booloader及主程序,如果可以,希望确认一下booloader占用的地址范围是哪些,主程序的入口地址如何指定,另外中断向量表是否需要认为设置中断入口和返回的偏移量。

目前客户使用的软件开发环境是IAR。

我从网上了解到一些ST的MCU的相关设置,请参考:blog.csdn.net/.../82774808

对于帖子中提到的配置,MSP432P401R在IAR环境中是否有类似的配置,希望能获取指导。

Best Regards.

Kevin Chen

msp430f149有 官方库函数吗

$
0
0

如题 msp430f149有没有官方的的硬件操作库函数?

类似操作硬件spi的库函数 

谢谢各位

MSP430F5438A 串口问题

$
0
0

使用了IAR自带的MSP430F5xx_6xx串口例程,我用的串口是UA2的所以改了相关部分,但是问题多多

1.下载完程序后串口输出1,给串口发送数据过半天返回一个0,再发数据就能快速返回了。

2.当不发送数据后,串口会不断自动输出0,速度很慢

代码如下:

(请访问站点以查看此文件)

MSP430F249的REV E版本与REV D版本差异

$
0
0

REV D版本的芯片我在烧写程序时一插上UIF电源指示灯就会灭,而REV E版本就没有问题,是因为XOSC8这个问题吗?

MSP432操作数码管或点阵屏

$
0
0

我使用MSP432P401R操作MAX7219数码管和点阵屏,没有成功,想找一些例子。

如何解决msp430程序跑飞的问题?

$
0
0

1.中断或主函数中有死循环,程序停在某处。

2.堆栈溢出,程序跑飞。


如何利用MSP430F6638的FLSH的主存储器存储数据?

$
0
0

将FLSH的主存储器当作信息存储器来用是否可以?若能使用如何定义存储地址?

MSP430F6638如何往RAM里面存储数据,可写可读?

$
0
0

  怎样开发RAM的可利用空间,当作EEPROM来使用

MSP430FR2353 使用CCS9 debug调试问题

$
0
0

void Test(int Byte);

void Test(int Byte)
{
int i=0;
if(Byte ==0x55)    //调用函数调用该函数,Byte默认0?????
{
i++;

}

}
/**
* main.c
*/
int main(void)
{
int SendByte=0x55;
WDTCTL = WDTPW | WDTHOLD; // stop watchdog timer
while(1)
{
SendByte++;      //SendByte 定义成全局变量是FET430UIF调试工具进行在线调试单步执行能执行到该步,但是定义成局部变量不能执行该步骤???????
Test(SendByte);  //自己写的调用函数也没有办法调用,意见传参数失败
}
//return 0;
}

不清楚是什么原因?

需要MSP432P401R 的I2C操作的例程

$
0
0

可不可以提供MSP432P401R的I2C操作例程,初始化配置,数据接收函数,数据发送函数,完成例程。

不同版本IAR共存问题

$
0
0

电脑里以前安装了IAR FOR ARM ,最近安装了IAR FOR MSP430,但以前CC1310的工程不能正常打开了,该怎么解决这个问题?

MSP430F437的静电等级

$
0
0

Hi team:

     使用MSP430F437IPZR需要了解静电参数以及属于哪个静电等级,还有湿敏参数。在手册中未找到,请帮忙提供一下,谢谢。

MSP430F6638主存储器储存数据的问题?

$
0
0

我往信息存储器中写数据可以按我设定的地址中写,比如我设定的地址是0X1800的D区,确实是写进D区了,但是我往主存储器中写数据时,我设置的起始地址时bank3的首地址038000H,为啥调试的时候显示的写在了08000H为首地址的区中呢?


使用MSP-Gang.dll下载时,如何配置Secure Device?

$
0
0

如题,请问使用MSP-Gang.dll进行下载时,如何配置Secure Device?需要使用哪个指令?

MSP430 DMA问题

$
0
0

430的DMA可以让两个串口的收发寄存器直接传输吗?

MSP430FR2353 IIC与从机通讯,想用中断方式发送接收数据?接收数据没有问题,发送数据失败,但是抓波形看到了发送的地址没有发送数据

$
0
0

/* --COPYRIGHT--,BSD_EX
* Copyright (c) 2016, Texas Instruments Incorporated
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*******************************************************************************
*
* MSP430 CODE EXAMPLE DISCLAIMER
*
* MSP430 code examples are self-contained low-level programs that typically
* demonstrate a single peripheral function or device feature in a highly
* concise manner. For this the code may rely on the device's power-on default
* register values and settings such as the clock configuration and care must
* be taken when combining code from several examples to avoid potential side
* effects. Also see www.ti.com/grace for a GUI- and www.ti.com/msp430ware
* for an API functional library-approach to peripheral configuration.
*
* --/COPYRIGHT--*/
//******************************************************************************
// MSP430FR235x Demo - eUSCI_B0 I2C Master RX multiple bytes from MSP430 Slave
//
// Description: This demo connects two MSP430's via the I2C bus. The master
// reads 5 bytes from the slave. This is the MASTER CODE. The data from the slave
// transmitter begins at 0 and increments with each transfer.
// The USCI_B0 RX interrupt is used to know when new data has been received.
// ACLK = default REFO ~32768Hz, MCLK = SMCLK = BRCLK = DCODIV ~1MHz.
//
// *****used with "msp430fr235x_euscib0_i2c_11.c"****
//
// /|\ /|\
// MSP430FR2355 10k 10k MSP430FR2355
// slave | | master
// ----------------- | | -----------------
// | P1.2/UCB0SDA|<-|----|->|P1.2/UCB0SDA |
// | | | | |
// | | | | |
// | P1.3/UCB0SCL|<-|------>|P1.3/UCB0SCL |
// | | | P1.0|--> LED
//
// Cash Hao
// Texas Instruments Inc.
// November 2016
// Built with IAR Embedded Workbench v6.50.0 & Code Composer Studio v6.2.0
//******************************************************************************
#include <msp430.h>

volatile unsigned char RXData[128];
int i =0,r=0;
void init_receive(void)
{
// Configure USCI_B0 for I2C mode
UCB0CTLW0 |= UCSWRST; // Software reset enabled
UCB0CTLW0 |= UCMODE_3 | UCMST | UCSYNC; // I2C mode, Master mode, sync
UCB0CTLW1 |= UCASTP_2; // Automatic stop generated
// after UCB0TBCNT is reached
UCB0BRW = 0x0008; // baudrate = SMCLK / 8
UCB0TBCNT = 0x0005; // number of bytes to be received
UCB0I2CSA = 0x0048; // Slave address
UCB0CTLW0 &=~UCTR; //接收模式
UCB0CTL1 &= ~UCSWRST;
UCB0IE &=~UCTXIE; //停止发送中断
UCB0IE |= UCRXIE | UCNACKIE | UCBCNTIE;

}
void init_trans(void)
{
// Configure USCI_B0 for I2C mode
UCB0CTLW0 |= UCSWRST; // put eUSCI_B in reset state
UCB0CTLW0 |= UCMODE_3 | UCMST | UCSYNC; // I2C master mode, SMCLK
UCB0BRW = 0x8; // baudrate = SMCLK / 8
UCB0CTLW0 |=UCTR; //发送模式
UCB0I2CSA = 0x48; // configure slave address
UCB0CTLW0 &=~ UCSWRST; // clear reset register
UCB0IE &=~UCRXIE; //停止接收中断
UCB0IE |= UCTXIE | UCNACKIE | UCBCNTIE; // transmit and NACK interrupt enable
}
int main(void)
{
WDTCTL = WDTPW | WDTHOLD;

// Configure GPIO

P1SEL0 |= BIT2 | BIT3; // I2C pins

// Disable the GPIO power-on default high-impedance mode to activate
// previously configured port settings
PM5CTL0 &= ~LOCKLPM5;

_EINT();
_NOP();
while (1)
{


//配置成接收模式中断接收字节
init_receive();
while (UCB0CTL1 & UCTXSTP); // Ensure stop condition got sent
UCB0CTL1 |= UCTXSTT; // I2C start condition

__delay_cycles(2000);
//配置成发送模式发送字节 中断发送字节
init_trans();
while (UCB0CTLW0 & UCTXSTP); // Ensure stop condition got sent
UCB0CTLW0 |= UCTR | UCTXSTT; // I2C TX, start condition
__delay_cycles(10000);

}
}

#if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)
#pragma vector = USCI_B0_VECTOR
__interrupt void USCIB0_ISR(void)
#elif defined(__GNUC__)
void __attribute__ ((interrupt(USCI_B0_VECTOR))) USCIB0_ISR (void)
#else
#error Compiler not supported!
#endif
{
switch(__even_in_range(UCB0IV, USCI_I2C_UCBIT9IFG))
{
case USCI_NONE: break; // Vector 0: No interrupts
case USCI_I2C_UCALIFG: break; // Vector 2: ALIFG
case USCI_I2C_UCNACKIFG: // Vector 4: NACKIFG
UCB0CTL1 |= UCTXSTT; // I2C start condition
break;
case USCI_I2C_UCSTTIFG: break; // Vector 6: STTIFG
case USCI_I2C_UCSTPIFG: break; // Vector 8: STPIFG
case USCI_I2C_UCRXIFG3: break; // Vector 10: RXIFG3
case USCI_I2C_UCTXIFG3: break; // Vector 14: TXIFG3
case USCI_I2C_UCRXIFG2: break; // Vector 16: RXIFG2
case USCI_I2C_UCTXIFG2: break; // Vector 18: TXIFG2
case USCI_I2C_UCRXIFG1: break; // Vector 20: RXIFG1
case USCI_I2C_UCTXIFG1: break; // Vector 22: TXIFG1
case USCI_I2C_UCRXIFG0: // Vector 24: RXIFG0
RXData[i] = UCB0RXBUF; // Get RX data
i++;
if(i>52)
{
i=0;

}

break;
case USCI_I2C_UCTXIFG0:


UCB0TXBUF = 0x55; // Load TX buffer

UCB0CTLW0 |= UCTXSTP; // I2C stop condition
UCB0IFG &= ~UCTXIFG; // Clear USCI_B0 TX int flag
r++;
if(r>20)
{
r=0;
}

break; // Vector 26: TXIFG0


case USCI_I2C_UCBCNTIFG: // Vector 28: BCNTIFG

break;
case USCI_I2C_UCCLTOIFG: break; // Vector 30: clock low timeout
case USCI_I2C_UCBIT9IFG: break; // Vector 32: 9th bit
default: break;
}
}

//以上是我参考TI官方提供的例程,两个合在一块,接收正常,但是发送失败?不知道自己配置哪里出现问题,单独两个例程(master  读例程 master写例程)与从机测试都OK

求助,请问MSP432P401R这款MCU的the Technical Reference Manual为什么我在TI官网上没有找到?

$
0
0

求助,请问MSP432P401R这款MCU的the Technical Reference Manual为什么我在TI官网上没有找到?

MSP430FR6047软件问题

$
0
0

我们客户有一个水表项目,采用了MSP430FR6047设计,目前样机阶段,关键在校准算法上有些问题,希望能够支持下。

1.  水表要如何校准,看TI的介绍,是将全量程进行分区,每一个区采用一个线性函数(y=kx+b)去校准,但我们发现要采用10几个线性函数,才有可能将水表较的比较准确,线性度较差。这种方式无法实现量产,是管段结构设计问题还是算法方面需要调整,客户表示TI在校准奥迪威的管段参考中只使用了3-4个线性函数,请问这个是怎么得到的。 

        2.  在零流量时,就是管段里充满水,但无流量的时候,看算法给出来的瞬时流速波动比较大,这个是什么原因导致需要怎么解决?另外,客户表示超声算法给出的瞬时流量波动大,这是不是同样的原因导致的?

        3.  在设计管段的时候需要注意什么问题。

Viewing all 3634 articles
Browse latest View live