请问为什么USS中ADC数据采集后的传输控制模块DTC有64k,而他的目标存储LEA RAM只有4K,adc采集数据量较大时应该怎么办?
msp430fr6047 uss模块问题
STM32F103RB的替代MCU型号咨询
请问有替换STM32F103RB的MCU型号吗?
ARM芯片不需要PIN对PIN,主要是要求功能(目前所需的ARM资源有USRAT,I2C,SPI,Timer,Port Interrupt)一致即可,应用环境温度(-40°~125°)。
感谢。
MSP430FR2633芯片在CapTIvateDesignCenter只保留按键模块生成代码,下载到CCS失败。
现在使用CAPTIVATE-FR2633、CAPTIVATE-BSWP和 CAPTIVATE-PGMR。连接电脑。
打开.CapTIvateDesignCenter的例程后,只保留了MSP430芯片以及按键BOTTON模块。把接近感应、滑条等删除后。现在只需要按键模块。
生成源码,准备使用CCS8.3.0下载。但是一直下载失败。
出现了:
MSP430: Error initializing emulator: No USB FET was found
我打开驱动管理,发现并未出现黄色感叹号。说明电脑对他的驱动是认可的。但是为什么一直不能下载?还有TI的技术支持除了在这提问,就没有线上的吗?
开发套件是TI官方授权上买的,使用问题一直纠结着我。下载一直都是失败。
TB0 设为定时timer(aclk时钟源),TB1设置为PWM(smclk时钟源),为何TB1不同频率会影响定时timer周期?
msp430fr2311进入LPM3,TB0 设为定时timer(aclk时钟源),TB1设置为PWM(smclk时钟源),为何TB1不同频率会影响定时timer周期?
注: 在中断内触发PWM, 不同smclk对 指令周期确实有一定影响,设置tb1 8M smclk 比1M 时tb0 timer 周期缩短了10%
fr2311带电烧写固件的复位启动问题
因为带锂电池烧写固件,
IAR烧写完成后不能自启动(有些参考固件烧录后是可以启动的),
只能掉电复位,目前办法是进IAR debug,启动后离线,后面就可以自己运行了。。。
说明通过FET 调试器 可以发送复位命令的···如何设置IAR,或者设置msp430flash.exe ,
我们想集成msp430flash.exe做个批量烧录软件
msp430 IO中断问题
CCS装不上
以前装过几次CCS,但是用着用着老是会有问题。
这次又卸了重装,又装不上了,没有杀毒软件,我连安全设置里的东西能关的都关了
有没有人看得懂安装日志里的错误?(请访问站点以查看此文件)
msp430 精准延时函数 编译出错
已定义以下宏定义:
#define CPU_F ((double)8000000)
#define delay_us(x) __delay_cycles(long)(CPU_F*(double)x/1000000.0)
#define delay_ms(x) __delay_cycles(long)(CPU_F*(double)x/1000.0)
函数内部调用:delay_ms(1);
编译报错:Error[Pe029]: expected an expression C:\Users\87520\Desktop\SI4463_RX\main.c 72
Error[Pe109]: expression preceding parentheses of apparent call must have (pointer-to-) function type C:\Users\87520\Desktop\SI4463_RX\main.c 72
请问这是为什么?
FR6972 自升级方法
如何使用FR6972实现单片机自升级功能
bootloader 如何编写
ccs9.0用5.1的程序报错
Line:36,expression:c>=-1&&c<=255,For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts.
哪位朋友!有M430F2618的使用手册,麻烦给分享一下,谢谢!83348840@qq.com,非常感谢!
哪位朋友!有M430F2618的使用手册,麻烦给分享一下,谢谢!83348840@qq.com,非常感谢!
MSP430FR6047 USS模块 SDHS采样问题
在使用SDHS采集数据时,DTC的传输目标是由SDHSDTCDA寄存器控制,手册里说每次数据传输时,地址寄存器值增加1。
我想问一下SDHSDTCDA中的值在采样结束后会清零吗?
我想用USS的寄存器模式,手册里的启动步骤如下:
1.打开USS模块并等待UUPSCTL.UPSTATE = 3。只读,不用管
2.配置除SDHSCTL3,SDHSCTL4和SDHSCTL5寄存器之外的所有寄存器(无需特定顺序,SDHSCTL0.TRGSRC = 0)。
3.启用触发源:设置SDHSCTL3.TRIGEN = 1。
4.启动SDHS:设置SDHSCTL4.SDHSON = 1(如果SDHSCTL0.AUTOSSDIS = 1,则不需要其余步骤)。
5.等待SDHS建立时间(参见SDHS)。
6.开始转换:设置SDHSCTL5.SSTART = 1。
现在假设我做完了6步,开始采样,之后采满了我想要的数据,比如到了SMPSZ值或者我人为将SDHSCTL4.SDHSON,SDHSCTL5.SSTART置0了,采样停止了。然后我处理了数据,程序是想处理数据之后自动再次采样,这时候我是要将上述步骤重复一遍呢,还是直接SDHSCTL4.SDHSON,SDHSCTL5.SSTART置1就可以了呢?主要就是SDHSDTCDA中自动增加的值会不会在我SDHSCTL4.SDHSON,SDHSCTL5.SSTART置0时自动清零?
msp430F248 晶振不起振问题
各位大侠:
发现一个奇怪的问题,一个产品用的msp430F248芯片,接2M晶振,运行过程中,程序会关掉晶振进入低功耗模式,每隔1s唤醒晶振一次。
测试中发现几个产品晶振无法起振,外部看门狗每隔30s给一个复位信号也不起作用,测量无源晶振两端有1V左右电压,无波形。断电后再上电,可以恢复正常。
想问下各位大侠:
1、什么情况下会发生晶振无法起振问题,产品已经生产了很多了(1000个),只有这几个个例。
2、如何判断是晶振出了问题,还是单片机无法复位初始化。
3、单片机复位时会给晶振一个激励信号吗?
多谢!!!附原理图
grace在app center里面也没有,无论是v6还是v8都没有
MSP430F5418A,最小系统,所有IO口悬空,擦除所有程序,上电瞬间功耗很大,什么原因?
之前一直用的MSP430F149,但是由于代码空间不够,就换成了MSP430F5418A,
但是现在遇到一个问题,5418A的上电瞬间,电流会飙升很大,然后掉下来恢复正常。
之前怀疑是我电路问题,于是我用最小系统测试了下,所有IO口都悬空,
只有5418A和ldo(可以排除ldo问题,同样的电路用在msp430f149上没有这问题),
上电的那一瞬间,电流会飙升到4mA以上然后恢复正常。
我擦除了片内程序还是一样,上电瞬间电流飙升,然后回落。回落后一切都正常。
但是我的应用上,上电瞬间的功耗剧增会让我的应用启动不了,
因为剧增的功耗已经远远超过我电源能提供的功耗了。
这个方案之前用F149已经用了十年,一直都很稳定,
最近迫于代码空间不够,换了5418A,结果遇到这么个奇葩问题。。
各位朋友帮我分析下这是什么原因导致?是不是5418A这片子自身的原因?如何能解决这个问题?谢谢。
注:除了5418A,5438A也有同样的问题。
关于MSP430G2452操作flash读写的问题
项目里有些信息需要实现掉电不丢数据,所以我把一些数据放入了flash中,但是发现重新上电后数据并没有存入,我的读写flash的代码如下,读写的起始地址是0x1040
#define SegmentStart 0x1040 //0x01080 //Segment = 0x01000~0x010FF
void FlashWriteChar(unsigned int addr, char Data);
char FlashReadChar(unsigned int Addr);
void FlashWriteChar(unsigned int addr, char Data) { char *FlashPtr = (char *)addr; // Segment pointer FCTL3 = FWKEY; // Clear Lock bit FCTL1 = FWKEY + ERASE; // Set Erase bit *FlashPtr = 0; // Dummy write to erase Flash seg //_DINT(); *FlashPtr = Data; // Save Data //_EINT(); FCTL1 = FWKEY; // Clear WRT bit FCTL3 = FWKEY + LOCK; // Set LOCK bit } char FlashReadChar(unsigned int Addr) { char Data; char *FlashPtr = (char *)Addr; Data = *FlashPtr; return (Data); }
mian函数中部分初始化代码如下:
void main( void ) { WDTCTL = WDTPW + WDTHOLD; FCTL2 = FWKEY + FSSEL0 + FN1; // MCLK/3 for Flash Timing Generator
msp430f149 片内adc采集速度问题
adc的采样速度能达到200ksps嘛?
如果能的话 是采用单通道采集更好 还是采用多通道采集更好
采集到的数据主要希望通过写flash来储存起来
这两步操作是分开进行更好还是同时进行更有效呢
MSP430F1232串口通信问题
Hi,Everyone:
我有个问题,在使用MSP430F1232的时候遇到串口通信失败,无法接收到数据的情况,板子参考TI官方的Launchpad。
代码如下:
// MSP-FET430P120 Demo - USART0, UART 9600 Echo ISR, 32kHz ACLK + DCO // // Description: Echo a received character, USART0 RX ISR at high-speed using // 32kHz XTAL and DCO. Normal operation in LMP0, DCO continuously stabilized, // interrupt driven using CCR2. DCO used for UART baud generation. On a valid // RX character, character is echoed back. // Baud rate divider with 2MHz = 2MHz/9600 ~ 208 (00D0h) // ACLK = LFXT1/8 = 32768/8, MCLK = SMCLK = UCLK0 = DCOCLK ~2MHz // //* An external 32kHz watch crystal on XIN XOUT is required for ACLK *// // MSP430F123(2) // ----------------- // /|\| XIN|- // | | | 32768Hz // --|RST XOUT|- // | | // | P3.4|------------> // | | 9600 - 8N1 // | P3.5|<------------ #include <msp430.h> #define DELTA 488 // target DCO = DELTA*(4096) ~2MHz void delayms(int t) { int i; while(t--) for(i=150;i>0;i--); //delay ms } unsigned int Compare, Oldcapture; int main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop WDT P1SEL=0; // SET P1 AS IO P1DIR=0xFF; //SET P1 DIR OUT P1OUT=0xFF; //P1 OUT VALUE P3SEL |= 0x30; // P3.4,5 = USART0 TXD/RXD BCSCTL1 |= DIVA_3; // ACLK = LFXT1CLK/8 ME2 |= UTXE0 + URXE0; // Enabled USART0 TXD/RXD UCTL0 |= CHAR; // 8-bit character UTCTL0 |= SSEL1; // UCLK = SMCLK UBR00 = 0xD0; // 2MHz 9600 UBR10 = 0x00; // UMCTL0 = 0x00; // no modulation UCTL0 &= ~SWRST; // Initalize USART state machine IE2 |= URXIE0; // Enabled USART0 RX interrupt CCTL2 = CM_1 + CCIS_1 + CAP + CCIE; // CAP, ACLK, interrupt TACTL = TASSEL_2 + MC_2 + TACLR; // SMCLK, cont-mode, clear __bis_SR_register(LPM0_bits + GIE); // Enter LPM0 w/ interrupt } #if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__) #pragma vector=USART0RX_VECTOR __interrupt void usart0_rx (void) #elif defined(__GNUC__) void __attribute__ ((interrupt(USART0RX_VECTOR))) usart0_rx (void) #else #error Compiler not supported! #endif { while (!(IFG2 & UTXIFG0)); // USART0 TX buffer ready? TXBUF0 = RXBUF0; // RXBUF0 to TXBUF0 //while receive the data, led blink and resend data to tx. P1OUT=1; delayms(50); //delay P1OUT=0; delayms(50); //delay } // Timer_A3 Interrupt Vector (TAIV) handler #if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__) #pragma vector=TIMERA1_VECTOR __interrupt void Timer_A(void) #elif defined(__GNUC__) void __attribute__ ((interrupt(TIMERA1_VECTOR))) Timer_A (void) #else #error Compiler not supported! #endif { switch( TAIV ) { case 2: break; // CCR1 not used case 4: { Compare = CCR2; // Get current captured SMCLK Compare = Compare - Oldcapture; // SMCLK difference Oldcapture = CCR2; // Save current captured SMCLK if (DELTA < Compare) { DCOCTL--; if (DCOCTL == 0xFF) // DCO is too fast, slow it down { if (!(BCSCTL1 == (XT2OFF + DIVA_3))) BCSCTL1--; // Did DCO role under?, Sel lower RSEL } } else { DCOCTL++; // DCO is too slow, speed it down if (DCOCTL == 0x00) { if (!(BCSCTL1 == (XT2OFF + DIVA_3 + 0x07))) BCSCTL1++; // Did DCO role over? Sel higher RSEL } } } case 10: break; // not used } }
但串口依旧无法收发数据,通过示波器测得串口通信工具发送波形如下,请TI专家帮忙分析一下,谢谢!
I2C通信UCB1
我使用I2C进行通信,UCB0正常,通过port mapping功能使用UCB1时发现,只要端口功能一打开(PSEL置1),时钟和数据信号就开始缓慢的拉低(都接了上拉电阻)。
msp430fr6047 USS模块 高速AD采样输入电压范围是多少?
只找到了这个表,没找到电压范围。