Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by jsolarski

  1. jsolarski

    USB to gameport project

    This is awesome!
  2. did you set the serial monitor to the correct baude? default is 9600, but your sketch uses 4800
  3. jsolarski

    Msp430g2553 and CC3200

    why not use SPI to transfer data, or any UART on the msp to talk to the CC3200, there are even code examples to help get it setup.
  4. it looks like you compiled code is too big for your uC. or your selecting the wrong chip or board.
  5. http://www.ti.com/lit/ug/spruhd4m/spruhd4m.pdf This should get you going
  6. No file system is expected when writing data to the SD card like you are, you have to implement a file system, that's why i pointed to FATFS....basically you need to write to a file to read from a computer. You have a few options on how to get the data. 1) Dump the SD card data using DD or other command that can read block devices, hex editors and file recovery software are places to start. 2) create a function that dumps it to the serial output, and have your computer put it in a file. 3) implement a file system, where you write data to a file on the SD card. im researching some things for you to get you pointed out in the right direction.
  7. so lets start simple, have you tried a different sd card? or tried a different sector? (not all SD cards are equal) have you made sure the card lock switch is in the correct position? (im sure you have but just want to make sure.) are you able or do you know how to use "dd" to see if you actually have written to the sd card? (dd is a command to either write or read raw data from a disk or image.) we want to verify that you are actually writing to the sd card The code looks good, but i dont use RTOS, and dont have a way to test at this time, im sure i could but I dont have time to get it wall setup.
  8. Hi sara, I can only give you limited support, and hopefully point you in the right direction......... Your HW does have SPI, so you should be able to write to SD cards with out issue. Try looking here the only thing I see is you have to change the code to fit your HW, I do not know if SSI is close to USCI or USI. also if you add more info on your setup we maybe able to guide you in the right direction as well.
  9. jsolarski

    Microphone data output

    OK, i did my best with out having the device and while working so it may or may not work, but you should be able to get the idea of what I mean #include <msp430.h> unsigned int voice; volatile unsigned char volt [5]; //JS edits volatile unsigned char raw_adc_data // added global for adc data to serial void init_serial (void); void init_serial (void) { P5SEL |= 0xC0; // 5.6 and 5.7 for TX/RX- UCA1 UCA1CTL1 |= UCSWRST; UCA1CTL1 |= UCSSEL_1; //32768 Hz UCA1BR0 = 03; // Baudrate 9600 UCA1BR1 = 0x00; UCA1MCTL = 0x06; // Modulation Sx=3, Fx= 0 UCA1CTL0 = 0x00; UCA1CTL1 &= ~UCSWRST; // In operation mode } //js edit removed for testing. //void ADC_value (int); //void ADC_value (int ADC_Data) /*{ volatile char x=3; volt [3] = volt [2] = volt [1] = volt [0] = 0x30; while (ADC_Data > 0) { volt [x] = (ADC_Data%10)| 0x30; // Separating unit digit ADC_Data = ADC_Data/10; // rest of the digit than last digit x--; } volt [4] = '\0'; }*/ void Send_Serial (void); void Send_Serial (void) { //js edit removed for testing //volatile char i=0; /*while (volt[i] != '\0') { UCA1TXBUF = volt[i]; while (UCA1STAT & UCBUSY); i++; }*/ UCA1TXBUF = raw_adc_data; while (UCA1STAT & UCBUSY); UCA1TXBUF = 0x0a; while (UCA1STAT & UCBUSY); UCA1TXBUF = 0x0d; while (UCA1STAT & UCBUSY); } int main(void) { P6OUT |= BIT4; // microphone power P6OUT &= ~BIT5; // microphone connected at input channel 5 P6SEL |= BIT5; WDTCTL = WDTPW + WDTHOLD; // Stop WDT /* Initialize the shared reference module */ REFCTL0 |= REFMSTR + REFVSEL_0 + REFON; // Enable internal 1.5V reference /* Initialize ADC12_A */ ADC12CTL0 &= ~ADC12ENC; // Ensure ENC ADC12CTL0 = ADC12ON + ADC12SHT02; // Set sample time ADC12CTL1 = ADC12SHP + ADC12SSEL_3; // Enable sample timer ADC12MCTL0 = ADC12INCH_5; // ADC input ch A5 => MIC init_serial (); while (1) { ADC12CTL0 &= ~ADC12SC; ADC12CTL0 |= ADC12SC + ADC12ENC; while (ADC12CTL1 & ADC12BUSY) __no_operation(); // voice = ADC12MEM0; js edit raw_adc_data = ADC12MEM0; // ADC_value (voice); js edit Send_Serial (); } }
  10. jsolarski

    Microphone data output

    void ADC_value (int ADC_Data) { volatile char x=3; volt [3] = volt [2] = volt [1] = volt [0] = 0x30; while (ADC_Data > 0) { volt [x] = (ADC_Data%10)| 0x30; // Separating unit digit ADC_Data = ADC_Data/10; // rest of the digit than last digit x--; } volt [4] = '\0'; } I' thinking this is your issue... what happens if you pass straight ADC values to your serial output? does it show the same thing?
  11. Yes, Pins will affect ADC values, for internal temp. My suggestion would do pull downs, on those ports connected to the ADC. when you do pull ups, there may be some leakage into the ADC that could skew the readings.
  12. jsolarski

    Error.h : No such file or directory

    @energia can we add a note to this sketch that it requires TI-RTOS? or do you have a work around for this?
  13. jsolarski

    Error.h : No such file or directory

    you need to download TI-RTOS to get the corresponding files. I do not use energia, so I would not know where or how to load it other then downloading it from http://www.ti.com/tool/TI-RTOS-MCU
  14. jsolarski

    Error.h : No such file or directory

    in Button. h on mine it is missing the same file with the same error..... looking into it further......
  15. jsolarski

    Converting MPS430 assembler code to Energia

    Energia may not have all the options implemented, you are probably going to have to setup the timer manually and hope it doesnt conflict with what energia sets up. what kind of timer interrupt are you looking for? WDT? TIMER0A? periodic or one time? and are you planning to put the CPU to sleep? I can help to get a basic code setup for you.
  16. jsolarski

    I2C issue with tiva C

    It looks like you gave good info on the git post, be patient the maintainer usually replies pretty quick, but it is the holidays
  17. jsolarski

    Converting MPS430 assembler code to Energia

    even if you are no good at C, you can start reading and understanding it, it will help in all your projects. it will give you an understanding of what the code is actually doing. just start with learning bitwise operators. |,^,~,&...etc you can do fancy things like toggle a pin on and off with few lines of code. I do agree not to use CHANGE, and just look for rising or falling edges.
  18. jsolarski

    Is Energia a portable installation on Windows?

    I can run the IDE with out it installing anything on a locked down machine..... I have not tried to compile or run debuggers since they are not installed on this machine.
  19. jsolarski

    Converting MPS430 assembler code to Energia

    the code for the attach interrupt -- the magic that makes it work....lol void attachInterrupt(uint8_t interruptNum, void (*userFunc)(void), int mode) { uint8_t bit = digitalPinToBitMask(interruptNum); uint8_t port = digitalPinToPort(interruptNum); if ((port == NOT_A_PIN) || !((mode == FALLING) || (mode == RISING) || (mode == CHANGE))) return; __dint(); switch(port) { case P1: if(mode != CHANGE) { P1IES = mode ? P1IES | bit : P1IES & ~bit; } else { intChangeVectP1 |= bit; P1IES = (P1IN & bit) ? (P1IES | bit) : (P1IES & ~bit); } P1IFG &= ~bit; intFuncP1[bit_pos(bit)] = userFunc; P1IE |= bit; break;
  20. jsolarski

    Converting MPS430 assembler code to Energia Interrupt Edge Select Registers (PxIES) Each PxIES bit selects the interrupt edge for the corresponding I/O pin. • Bit = 0: Respective PxIFG flag is set with a low-to-high transition • Bit = 1: Respective PxIFG flag is set with a high-to-low transition as for example code, it depends on what you are trying to detect. lets say you know the initial state, then you can toggle the PxIES bit on each interrupt call. or if you dont know the initial state, then you can toggle PxIES in your main code, but may miss a change. or you can poll the pin for the change in SW .
  21. jsolarski

    MSP432P401R SD card interface

    Its hard to give you an answer on this. If its say, SD card not initlized, then you really need to verify your setup and wiring. and post any modifications of the code provided.
  22. Yes, there is a way, by writing the corresponding bits to the right register, and having a delay after your code to give it time to stabilize. you may need to switch to a different clock while setting it up. I cant tell you how to do it in energia, since i do not use it.
  23. jsolarski

    ADC12 timer trigger

    to expand 1. Should my sample and hold time be 0.28ms? your hold time should start after .28ms, and holding the peak value between 0ms and .28ms 2. If so then should I wait for next 0.04ms + 9.68ms to collect my next ADC value as the next input pulse needs that much time to arrive? Your next sample should start on your next pulse to the LED which is 9.68ms 3. If 1 and 2 are correct, how can I set up my ADC for this? ADC setup is a case by case basis, and will be trial and error. but a good place to start is the code examples for your chip, and the user guide.... My tip to you, is look into pulse sampling.
  24. jsolarski

    ADC12 timer trigger

    Reading the data sheet..... you need a PWM time of 10ms. with a duty cycle of .32ms Your AD read time should be from 0ms to .28ms from the start of your pulse on the LED Setup up your ADC for single conversion, one channel count how many clock pulses and figure out how long conversion and sampling time.
  25. jsolarski

    Brew day monitor suite

    This is a start to a bigger project and will be expanded on. Temperurature sensor for Mash -- MSP430, LM75B, possible other sensors, thermal couple. (working on code and proof of concept) Temperurature sensor for fermentation -- TBD Specific gravity sensor -- TBD User Interface -- TBD automation of pumps gas lines and equipment -- Requirements: Food safe, easily cleaned. probes and sensors sealed...... What I want is mash temp monitoring and logging to help me improve my brew days and procedure and maybe add a heater to keep the tempature stable during this time. Yes this has all been done before, but I want a home built one and one customized to my equipment.