Quantcast
Viewing all 262198 articles
Browse latest View live

RTOS/CC2650: Problem with osal_snv_read & osal_snv_write operation

Part Number:CC2650

Tool/software:TI-RTOS

Hi,

I want to store 40 bytes of information on flash during run time, which can be used when there is power recycle.

From  http://www.ti.com/lit/ug/swru393d/swru393d.pdf 

status = osal_snv_read(0x80,10, (uint8_t *)write_buffer );

status = osal_snv_write(0x80,10, (uint8_t *)write_buffer );


CDCEL913: 100MHz clock

Part Number:CDCEL913

Hi 

I'm using this CDCEL913 in my design and i need it to generate 100MHZ output, with 25MHz crystal,

Can someone tell me how should i use it ?

thanks in advance

Nir 

TDA2EVM5777: Vision SDK : want to create use case with 3 camera input and output will be 3 LCD display

Part Number:TDA2EVM5777

Hi,

I would like to create use case in Vision SDK which takes input from 3 camera and will display output on 3 LCD's , please help me.

We have already explored given examples of singlecamdualdisplay and dualcamdualdisplay but they were not helpful.

Thanks,

CCS/TMS570LS3137: vector table seeting on bootloader and application

Part Number:TMS570LS3137

Tool/software: Code Composer Studio

hello

right now i am trying to impliment the bootloader and application project on the tms570HDK,both the bootloader and the app use UCOS-II and tftp (lwip).

most scenario you talked about are like this :

(e2e.ti.com/.../225447)

  _c_int00     ;0x00   Bootloader reset
         b #0x7ff8    ;0x04   undefined_instruction, branch to application
         b #0x7ff8    ;0x08   software_interrupt, branch to application
         b #0x7ff8    ;0x0C   prefetch_abort, branch to application
         b #0x7ff8    ;0x10   data_abort, branch to application
        b #0x7ff8 ; reserved, branch to application
        ldr pc,[pc,#-0x1b0]        ;0x18
        ldr pc,[pc,#-0x1b0]        ;0x1C

The application vector table at the address 0x8000 should look as follows.

         b   _c_int00     ;0x00   application reset
         b  _undef_ISR;  0x04 undefined_instruction
         b  _swi_ISR    ;0x08   software_interrupt 
         b  _prefetch_abort_ISR    ;0x0C   prefetch_abort 
         b  _data_abort_ISR    ;0x10   data_abort
         b  _reserved_ISR ; reserved
         ldr pc,[pc,#-0x1b0]        ;0x18
         ldr pc,[pc,#-0x1b0]        ;0x1C

 in all these cases ,the irq using the vector mode,and in the boot proj, the udef ,abort , swi have no ISR,,they just jump to the app‘s ISR.

so is the spna236,

but for the ucos project, the IRQ have to use index mode (legacy arm7 mode ) ,and all the exceptions have to be down in the bootloader .

can you give me some advice?

or if the sharing vectors in sram method described in spna236 works ,can you give me some specific suggestions about how to do in the app?

i am stucking here for a month ,realy need your help!

thank you !

HAPPY Birthday (whoops) "NEW YEAR" ... Forum Users!

Best - "to all who see these presents."      (writing "borrowed" from a past U.S. Gov't certificate)

May 2018 bring health, peace/friendship, and "programming success" - to all here...

(as the (bit) errant Subject Line/Thread Title) reveals  -  one

  • should not "drive"
  • nor  "compose/design"

while, "under the influence."

Happy & successful New Year to all...

(in slight (very slight) defense - cb1 birthday - (very) close to this date!)

Must "seize the moment" and offer deep "thanks" to the many  forum Agents who  generously,  "Guide those here (especially moi) to programming & design Success!"      Mercî.

It may perhaps be noted that simple  "candles" are no longer the (sole/only) means to,  "illuminate a celebration."      (note the "pleasing glow" from one "more "inspired!")

(and - for those (sure to ask) ... ...  "Not YET - have we, "Burned down our Lab!")

Image may be NSFW.
Clik here to view.

 And - for  "extra credit" ...  why are the "Left-most" candle replacements  outperforming those  further right?

AFE4403: How does the EVM's LED calibration code works?

Part Number:AFE4403

Hi, I'm looking at the AFE4403 EVM's source code (FW_SRCV2.3_Release).

/* Variables to modify depending on the application */
const unsigned char ILED1_CURR_MAX_mA = 45;     // LED1 max current reqd. for application
const unsigned char ILED1_CURR_MIN_mA = 5;      // LED1 min current reqd. for application
const unsigned char ILED2_CURR_MAX_mA = 45;     // LED2 max current reqd. for application
const unsigned char ILED2_CURR_MIN_mA = 5;      // LED2 min current reqd. for application
const unsigned char LOW_THR_PERCENT = 10;       // Low Threshold Percent
const unsigned char HIGH_THR_PERCENT = 90;      // High Threshold percent
const unsigned char HYS_PERCENT = 3;            // Hysteresis percent
const unsigned char TARGET_THR_PERCENT = 33;    // Target Threshold percent
/* End of Variables to modify depending on the application */
calibRoutineParams calibParams;


void AFE44xx_PowerOn_Init(void){
  Init_AFE44xx_DRDY_Interrupt();
  AFE44xx_Default_Reg_Init();
}

VOID main (VOID){ // code for MSP430F5529

  WDTCTL = WDTPW + WDTHOLD;
  AFE44xx_PowerOn_Init();
  // ...

  while (1){
    if (readDataFlag){
      readDataFlag = 0;
      AFE44xx_SPO2_Data_buf[0] = AFE44xx_Reg_Read(42);  //read RED Data
      AFE44xx_SPO2_Data_buf[1] = AFE44xx_Reg_Read(43);  //read Ambient data
      AFE44xx_SPO2_Data_buf[2] = AFE44xx_Reg_Read(44);  //read IR Data
      AFE44xx_SPO2_Data_buf[3] = AFE44xx_Reg_Read(45);  //read Ambient Data
      AFE44xx_SPO2_Data_buf[4] = AFE44xx_Reg_Read(46);  //read RED - Ambient Data
      AFE44xx_SPO2_Data_buf[5] = AFE44xx_Reg_Read(47);  //read IR - Ambient Data
      
      //P5OUT |= BIT0;                                    //Turn on LED P5.0 (Green)
      if (CALIBRATION_ENABLED == TRUE)
      {
        calibrationLED1(AFE44xx_SPO2_Data_buf[2]);
        calibrationLED2(AFE44xx_SPO2_Data_buf[0]);
      }
      // ...
          else if (wholeString[0] == CALIBRATION_CMD) // Calibration Code Command
          {
            if (wholeString[1] == CALIBRATION_TRUE)
            {
              CALIBRATION_ENABLED = TRUE;
              AFE44xx_Default_Reg_Init();
              calibParams.ILED1_CURR_MAX_mA = ILED1_CURR_MAX_mA;        // LED1 max current
              calibParams.ILED1_CURR_MIN_mA = ILED1_CURR_MIN_mA;        // LED1 min current
              calibParams.ILED2_CURR_MAX_mA = ILED2_CURR_MAX_mA;        // LED2 max current
              calibParams.ILED2_CURR_MIN_mA = ILED2_CURR_MIN_mA;        // LED2 min current
              calibParams.LOW_THR_PERCENT = LOW_THR_PERCENT;            // Low Threshold Percent
              calibParams.HIGH_THR_PERCENT = HIGH_THR_PERCENT;          // High Threshold percent
              calibParams.HYS_PERCENT = HYS_PERCENT;                    // Hysteresis percent
              calibParams.TARGET_THR_PERCENT = TARGET_THR_PERCENT;      // Target Threshold percent
              initCalibrationRoutine(&calibParams);
            }
            else if (wholeString[1] == CALIBRATION_FALSE)
            {
              CALIBRATION_ENABLED = FALSE;
            }
          }
      // ...
}

void calibrationLED1(unsigned long LED1data)
{
  // Variable declaration  
  static unsigned int LED1_waitTimeCount = 0;
  static unsigned int LED1_blockSizeCount = 0;
  static unsigned int LED1_freezeTimeCount = 0;
  static unsigned long LED1_Meas_DC = 0;
  static unsigned long LED1_Meas_DC_Est = 0;
  static unsigned long ILED1Code;
  unsigned long LED1InterimCode;
  
  // LED1 Calibration State machine
  switch (LED1CalibrationState){
  // ...
}

How does this LED calibration State machine work for LED1 (IR LED) and LED2 (Red LED)?

Also, does each calibration algorithm works the same? I was curious whether there are some common parts of the both "calibrationLED1" and "calibrationLED2" function.

Lastly, how did those min/max/threshold/hysteresis values calculated?

66ak2h12: SPI boot table problem in keystone 2

Part Number:66ak2h12

hi all.

I need to build a standalone project on 66ak2h12 that boot by C66x CorePack0 master.I read the boot part of datasheet of 66ak2h12 and c6678 and see some difference in boot table parameter on them. some files (like b2i2c.exe or b2ccs.exe in mcsdk_2x) that I used them before for build a standalone projects in  C6678 aren't in mcsdk_3x and those files (from mcsdk_2x) didn't work on keystone 2.

Image may be NSFW.
Clik here to view.
Image may be NSFW.
Clik here to view.
Image may be NSFW.
Clik here to view.
Image may be NSFW.
Clik here to view.

can anyone help me for build a standalone program boot from SPI nor flash and C66x master?

F28M35H52C: Concerto F28M35H52C control cards some GPIO's are not working properly.

Part Number:F28M35H52C

Hello,

On concerto control card i am using some of the GPIO as output and trying to toggle them in 1 sec timer interrupt for testing purpose. 

int count=0;
__interrupt void cpu_timer0_isr(void)

{

PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;

count++;
if(count==1)
{

// GPIO high 

GpioG1DataRegs.GPADAT.bit.GPIO23      =1;

GpioG1DataRegs.GPADAT.bit.GPIO25      =1;

GpioG1DataRegs.GPBDAT.bit.GPIO42      =1;

GpioG1DataRegs.GPBDAT.bit.GPIO45      =1;

GpioG1DataRegs.GPBDAT.bit.GPIO46      =1;

}

else if(count == 2)

{

// GPIO Low 

GpioG1DataRegs.GPADAT.bit.GPIO23      =0;

GpioG1DataRegs.GPADAT.bit.GPIO25      =0;

GpioG1DataRegs.GPBDAT.bit.GPIO42      =0;

GpioG1DataRegs.GPBDAT.bit.GPIO45      =0;

GpioG1DataRegs.GPBDAT.bit.GPIO46      =0;

count =0;

}

for all above GPIO, i have done configuration of DIR and Mux registers  properly. But still GPIO's are not getting toggled.

Also i used one more method for toggling GPIO, that is as below

 

int count=0;
__interrupt void cpu_timer0_isr(void)

{

PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;

GpioG1DataRegs.GPATOGGLE.bit.GPIO23      =1;

GpioG1DataRegs.GPATOGGLE.bit.GPIO25    =1;

GpioG1DataRegs.GPBTOGGLE.bit.GPIO42      =1;

GpioG1DataRegs.GPBTOGGLE.bit.GPIO45      =1;

GpioG1DataRegs.GPBTOGGLE.bit.GPIO46     =1;

}

In this method, GPIO23 and GPIO25 are getting toggled. but others not. Also i observed while debugging that, on register level these bits are not getting toggle.

Please help me in this.

Regards,

Sandeep


RTOS/CC2650: Example usage of osal_snv_read and osal_snv_write

Part Number:CC2650

Tool/software:TI-RTOS

Hi,

I am looking for example code to use osal_snv_read and osal_snv_write operation.  How can I use these function in Project Zero App code. I have read BLE Developer's guide - Section 3.10.3. When I implemented these function it returns invalid parameters.

I have read couple of forums but still it does not offer any clarity.

My questions are:

  1.  Do I need to to call osal_snv_init function from APP? If yes, from where should I call it? As per my understanding this function is already called from BLE Stack.
  2. OSAL_SNV = 1 is set in BLE Stack (BLE SDK 2.2.1.18). It was already 1 , but I reprogrammed ble stack.
  3. Is there any particular order of calling osal_snv_read and osal_snv_write operation?
  4. status = osal_snv_write(0x80,10, (uint8_t *)write_buffer )  , Is this function call correct?
  5. It mentions that these operations are costly, How much time do I need to provide before calling any other functions?
  6. Can I call these functions from task functions?
  7. I only need to store 100 bytes of information once during configuration of device. Can I use osal read and write function or do I need something else

Thanks

CC2650: Programming CC2650 custom device using CC2650 launchpad

Part Number:CC2650

Hi there,

We are using CC2650 on one of our device.

I dont have a CC debugger currently, so I am using CC2650 launchpad to program. 

But the XDS110 debugger is not able to recognize my device.

I have tried almost everything on the hardware side, such as putting external Pull-up resistors on JTAG pins , using TCK, TMS combination only etc. but no success.

If anyone else has faced similar issue before, please help us.

Any assistance would be appreciated.

Thanks.

MSP430F5528: FIlesystem causing issue while copying or deleting the data

Part Number:MSP430F5528

Hello,

I am using some memory of the flash as a filesystem and storing some data in file system to use it in run time. Following are the cases which are erasing or corrupting the flashed firmware and I need to flash the firmware again.

  1. when I delete the file from the filesystem (happen sometimes).
  2. when I copy the more data in filesystem then its size allocated (happen always).

Please provide solution to prevent this situation for above cases.

Regards,

Rohit

TMS320F28377D: TMS320F28377D

Part Number:TMS320F28377D

Hi.
I write the C2000 project, running on TMS320F2837xD. The project was developed from blinky_cpu1 example.  I run the program via JTAG from RAM, measure duration of calculations and then change configuration to FLASH, because the application finally will be run from FLASH. The duration takes much more time (6-8 times more!) I looked for the information how to load to FLASH and run from RAM and was confused. I have several questions:
1. Can I change the project to the DSP/BIOS configuration? May be it will be the easiest way to solve the problem?
2. In order to copy functions to the section "ramfuncs" what exactly should I do? In the linker command file or/and in the code. I use 2837xD_FLASH_lnk_cpu1.cmd file. My code is written in C/C++.
3. If functions call other functions, all of them should be moved to RAM or linker will do it automatically?
4. I need examples which matching to my microcontroller TMS320F2837xD.
Thanks.

LMP8646: Inaccurate output voltage

Part Number:LMP8646

I wanted to use this IC as a current sensor so just for preliminary testing I used a sense resistor(Rsesne) of 0.5 ohms and gain resistance (Rg) of value 49.9K. The supply voltage given to the IC was 12V and the common mode voltage (Vcm) to the input terminals was 6V. I passed a current of 0.4 A. From this I calculated that the output voltage (Vout) would be 1.996 V however I was getting an output voltage of just 0.13 V.

I tried changing the currents to different values however I never got the expected value. The value that I got was always less than what I was expecting.  

Compiler/TMS320C6678: Build stopped due to lacking product although product was installed

Part Number:TMS320C6678

Tool/software: TI C/C++ Compiler

Hi,

I'm trying to build my project after moving to a new project  and I am getting the next error although I installed  "bios_mcsdk_02_01_02_06_setupwin32.exe" and "bios_mcsdk_02_01_02_06_patch01_setupwin32.exe"

The error is :
"

**** Build Finished ****
Buildfile generation error occurred..
Product 'com.ti.biosmcsdk.mcsdk' v2.1.2.6 is not currently installed and no compatible version is available. Please install this product or a compatible version.
Build stopped..

"

I'm using windows 7 Professional and CCS  7.2.0.00013.

Is there another patch that I need to install? how can I overcome this issue? 

Thanks,
Ronen

CCS/MSP430FR5994: Error Setting Multiple Timer Frequencies

Part Number:MSP430FR5994

Tool/software: Code Composer Studio

I am trying to generate multiple frequencies from timer interrupts (to flash LEDs at different rates, etc.) using Multiple Time Bases similar to the two links below.

www.ti.com/.../slaa513a.pdf
e2e.ti.com/.../1165370

However, when I try to set "TA0CCTL3" and "TA0CCR3" (and 4/5/6, not shown here) I get the following errors.

"../main.c", line 263: error #20: identifier "TA0CCTL3" is undefined
"../main.c", line 264: error #20: identifier "TA0CCR3" is undefined

With the MSP430FR5994 (on the MSP-EXP430FR5994 Development Kit) I should be able to define up to TA0CCR6. Any suggestions why this is not working?

Here is my code to configure the timers. I also use #include <msp430.h> in the code.

    TA0CTL |= TASSEL_1;             // Use ACLK as source
    TA0CTL |= ID_0;                 // Divide clock by 1
    TA0CTL |= MC_2;                 // Use CONTINUOUS mode timer
    TA0CTL |= TACLR;                // Clear timer

    TA0CCTL0 |= CCIE;               // Enable Interrupt on Timer
    TA0CCR0 = 5000;                 // Number of cycles in the timer

    TA0CCTL1 |= CCIE;               // Enable Interrupt on Timer
    TA0CCR1 = 10000;                // Number of cycles in the timer

    TA0CCTL2 |= CCIE;               // Enable Interrupt on Timer
    TA0CCR2 = 15000;                // Number of cycles in the timer

/*
These two lines create errors - TA0CCTL3 and TA0CCR3 are undefined.
See Table 25-8 in slau367o.pdf - should be able to define 7 counters.
*/

    TA0CCTL3 |= CCIE;               // Enable Interrupt on Timer
    TA0CCR3 = 20000;  		    // Number of cycles in the timer

    TA0IV = 0x0000;                 // Clear the interrupt flag


Linux/am3351: Displaying logo during kernel boot

Part Number:am3351

Tool/software: Linux

Hi, i am using "ti-processor-sdk-linux-am335x-evm-03.00.00.04" SDK

i am displaying logo in u-boot, but while loading the kernel it is resetting and display becomes blank.

1.is there any possibility to continue logo up to load the application?

2.in "ti-sdk-am335x-evm-08.00.00.00" SDK i am getting default ti psplash image, how can i enable same in  "ti-processor-sdk-linux-am335x-evm-03.00.00.04"

3. i created psplash.service file in /lib/systemd/system like below. but it is running after loading the kernel.


#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later versssn.rs

[Unit]
Description=Myinit scripts

[Service]
ExecStart=/etc/init.d/psplash.sh &

before=systemd-modules-load.service

[Install]
WantedBy=multi-user.target

please guide me to display  a logo in OS booting.
Thankyou.

Linux: Image for AM572x EVM

Tool/software: Linux

Hello.

I want to linux  image for am5728-evm (Root Complex) to launch on SD card and running linux on am5728-evm.

any body can send me a link to download .img file?

also I want to linux image for am5728-evm ( End Point)!

please help me.

Thanks 

RTOS/CC1310: __no_init const in IAR7.80 doesn't work as in IAR 7.50

Part Number:CC1310

Tool/software:TI-RTOS

I have move project from IAR 7.50 to IAR 7.80 for using simplelink_cc13x0_sdk_1_30_00_06.

In the original project I have const argument that get values before staring the run (before the main(). The address point to is set in the .icf to the  ROM section follow:

define symbol __ICFEDIT_region_ROM_start__ = 0x00000000;
define symbol __ICFEDIT_region_ROM_end__ = 0x0001FFFF;

and the variable itself declare as follow:

__no_init const TSProductInfo PRODUCT_INFO @ (0x20000 - 4096*3) = 
{
APP_VERSION,
APP_REVISION,
APP_BUILD,
APP_DAY,
APP_MONTH,
APP_CENTURY,
APP_YEAR
};

In the main.h

extern __no_init const TSProductInfo PRODUCT_INFO;

and every file need it get #include "main.h"

It work O.K. but when I move to IAR7.80 I get 2 problem with it.

1. It doesn't allow me to put predefined values inside before the run.

2. I get error from the file using it as "Error[Li005]: no definition for "PRODUCT_INFO" ....." also they have the #include and if I ask for its define it jump to its deceleration.

Is it something change in the IAR environment or I have declare it incorrect? 

TPS24770: Function inquiry

Part Number:TPS24770

Hi Sir,

May I have you help for TPS24770 function questions as below:

1.  What is TPS24770 quiescent current?

2. Why TPS24770 will retry once for latch version? (compare with fast latch version)

Thank you for your kindly help!

Best regards,

Edward Chen

TUSB3410: TUSB3410 driver for OSX 10.13

Part Number:TUSB3410

Dear Sir Could TUSB3410 drive support OSX 10.13? Or you could Email me TUSB3410 driver for OSX 10.13. My email ID is gsgill112 [at] gmail [dot] com Thanks GS GILL
Viewing all 262198 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>