Jump to content

Search the Community

Showing results for tags 'stellaris'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • News
    • Announcements
    • Suggestions
    • New users say Hi!
  • Spotlight!
    • Sponsor Spotlight
    • Sponsor Giveaways
  • Energia
    • Energia - MSP
    • Energia - TivaC/CC3XXX
    • Energia - C2000
    • Energia Libraries
  • MSP Technical Forums
    • General
    • Compilers and IDEs
    • Development Kits
    • Programmers and Debuggers
    • Code vault
    • Projects
    • Booster Packs
    • Energia
  • Tiva-C, Hercules, CCXXXX ARM Technical Forums
    • General
    • SensorTag
    • Tiva-C, Hercules, CC3XXX Launchpad Booster Packs
    • Code Vault
    • Projects
    • Compilers and IDEs
    • Development Kits and Custom Boards
  • Beagle ARM Cortex A8 Technical Forums
    • General
    • Code Snippets and Scripts
    • Cases, Capes and Plugin Boards
    • Projects
  • General Electronics Forum
    • General Electronics
    • Other Microcontrollers
  • Connect
    • Embedded Systems/Test Equipment Deals
    • Buy, Trade and Sell
    • The 43oh Store
    • Community Projects
    • Fireside Chat
  • C2000 Technical Forums
    • General
    • Development Kits
    • Code Vault
    • Projects
    • BoosterPacks


There are no results to display.

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start



Website URL





Found 30 results

  1. Hello it looks like I bumped into an issue which might be of interest, and needs to be investigated. I have a string of I2C devices running on i2C Bus on Arduino Mega (MCP4531 potti, LM-75 Temp sensor, 2x PCF 8575 I/Expanders). All running smooth. The next step I had to exchange the Mega with Tiva Stellaris Launchpad (EK-TM4C129E ), which I did, I havent changed anything on the setup besides the Mega2560 with Launchpad. While running the i2C scanner I saw, full Bus of devives. Furthermore I changed the i2C modules (0,1,2 with setModule()) nothing changed, same issue persists. Pull-ups varied from 1KOhm - 9Kohm, still same issue. Anyone experienced something like that before?
  2. I know that Stellaris is dead already. The only reason I still own an Stellaris EK because my friend gave it to me......for free and brand new! I just want to fade an LED, that's all ! And btw, are there any good tutorials for Stellaris MCUs? Thanks alot, to anybody that is willing to help me.
  3. Is there a way to use the SoftwareSerial library on the Stellaris Launchpad TM4C123GXL board? I am trying to connect a Sparkfun serial enabled LCD screen to the board but the SoftwareSerial library is only compatible with 20, 16, and 8 MHz processors, and the TM4C123GXL is an 80 MHz chip. How can I use this LCD screen with the Stellaris Launchpad over a UART connection? Do I need to use SoftwareSerial or can I do without it? I am programming in Energia 0101E0017 on Windows 7 64 bit. Any help is greatly appreciated, thanks!
  4. Hi all, Based on reading the 430 forum and Github Energia/Pervasive issues lists, it appears that someone has successfully setup and tested the EPD Booster with Stellaris (LM4F120). I have acquired an older 2.7 Pervasive Display (which appears to require PWM) and booster board (version 1.5). Using Energia, I can successfully directly connect using my MSP430G2553 so I know the board/display is ok. I want to connect the EPD to my Stellaris -- since there is a PWM requirement, I believe I will need to use the wireharness (instead of direct connecting) and set up a macro for PWM to connect from a Stellaris pin to pin 9 of the EPD. In the EPD_PINOUT_Energia.h under the EPD_PINOUT under sketches, I see the PWM macro for MSP430F5529 -- what is the equivalent macro and pin mapping for Stellaris? The header below it for LM4F120 in EPD_PINOUT_Energia.h simply uses Pin 9 (which is ok for the newer displays which do not require the PWM). Please advise. Thanks! Jim
  5. Buy: The 43oh Store or Rob's Tindie Store. The newest version of the Ethernet BoosterPack is based on the newest chip from WIZnet, W5500. P1.5 - SCLK P1.6 - MISO P1.7 - MOSI P2.3 - /CS P2.4 - /INT P2.5 - /RST Configuration jumpers are on the bottom, PMODE1-PMODE3, LINK LED, and ACT LED. LED jumpers control which LEDs are used, on board or socket. Available on Tindie.
  6. Hello All, Is there any sample program for using the CAN with Stellaris/Tiva-C with energia IDE ? I could see D:\energia-0101E0017\hardware\lm4f\cores\lm4f\driverlib can.c and can.h files. How to include this .h files and have a program which transmit some data Thanks for your support Dino
  7. The other day I recorded myself unboxing this kit I got for a training I am taking, and uploaded it to my youtube channel. In case anyone would like to watch, here is the link: The kit is quite nice, featuring a Cortex M4 processor and a lot of goodies on board (OLED display, accelerometer, temperature sensor, current sensor, etc.). The other nice thing about it is the demo application it comes with, that is basically a data logger that can record all of the things mentioned above (XYZ channels of the accelerometer, current, internal and external temperature) PLUS 4 channels that are connected to the ADC (meaning you have a simple 4 channel oscilloscope out of the box). Go watch the video if you want to see more :-)
  8. I'm back with another issue with my Stellaris LaunchPad. I have a short Energia sketch which uses the SPI library to write to the serial LCD on the ADS1118 Booster Pack. The sketch works as expected. The problem is that it somehow leaves the Stellaris in a state in which it cannot be flashed successfully by lm4flash. I have to connect the Stellaris LaunchPad, flash it (works fine the first time), disconnect the USB cable, reconnect, flash again, and so on. The symptoms seem to match what a TI employee posted on the E2E Community back in 2011, where changing the function of PORTC pins 0 to 3 would interfere with JTAG. However, I couldn't see where my Energia sketch or the SPI library would be doing anything to those PORTC pins. I'm using SPI.setModule(2) to select the Stellaris SPI module which is connected to the proper pins for this Booster Pack. If I flash another Energia sketch which does not use the SPI library, then I can flash over and over again with lm4flash without disconnecting and reconnecting the USB cable. Can someone point me to the problem? Here's what I see if I do the flashing from a MinGW command line: $ # TI Stellaris ICDI/JTAG/SWD Interface driver 2.0.7922.0 $ # Windows 7, 64-bit $ # Just plugged in the Stellaris LaunchPad $ /c/energia-0101E0015/hardware/tools/lm4f/bin/lm4flash.exe -V LM4Flash version 0.1.3 - Flasher for Stellaris Launchpad ICDI boards Copyright (C) 2012 Fabio Utzig <fabio@[member="utzig"].net> Copyright (C) 2012 Peter Stuge <peter@stuge.se> This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ /c/energia-0101E0015/hardware/tools/lm4f/bin/lm4flash.exe -v Stellaris_ADS1118_2.cpp.bin Found ICDI device with serial: 0E1011C2 ICDI version: 9270 $ # completed quickly, no problem, sketch is running OK $ /c/energia-0101E0015/hardware/tools/lm4f/bin/lm4flash.exe -v Stellaris_ADS1118_2.cpp.bin Found ICDI device with serial: 0E1011C2 ICDI version: 9270 [output stops here for several seconds, unplug USB cable] Error receiving data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error transmitting data -9 Error verifying flash Error transmitting data -9
  9. I'm trying to combine some Energia libraries for the ADS1118 ADC and the SPI serial LCD included on the ADS1118 Booster Pack. Using simple digitalWrite() calls, I'm able to write to the LCD, but I'm trying to switch to using the Energia SPI library. The documentation for SPI.begin() says I can set a slave select pin; however, the compiler rejects a call to SPI.begin(LCD_CS) because there is no SPI.begin(int slaveSelectPin) defined. With the following code, the default pin 2 slave select appears to be used, because it happens to be connected to the buzzer on the ADS1118 Booster Pack, and I can hear it. Judging from the description, Energia commit 5c4dab5 seems to be aimed at fixing this, but it still doesn't work as expected. // Stellaris LaunchPad with ADS1118 Booster Pack #include <SPI.h> int LCD_RS = 12; // Register Select int LCD_CS = 13; // LCD chip select int ADC_CS = 8; // ADS1118 chip select int SI = 15; // Slave Serial data Input int SO = 14; // Slave Serial data Output int SCL = 7; // Serial data CLock int BUZZER = 2; // ADS1118 buzzer pin void setup() { Serial.begin(9600); Serial.println("# -+-+- RESET -+-+-"); // initialize the LCD pinMode(LCD_RS, OUTPUT); pinMode(SI, OUTPUT); pinMode(SO, INPUT); pinMode(SCL, OUTPUT); pinMode(LCD_CS, OUTPUT); delay(10); writecom(0x30); // wake up writecom(0x30); // wake up writecom(0x30); // wake up writecom(0x39); // function set writecom(0x14); // internal osc frequency writecom(0x70); // contrast writecom(0x56); // power control writecom(0x6D); // follower control delay(10); writecom(0x0C); // display on writecom(0x01); // clear delay(5); writecom(0x06); // entry mode delay(10); } void loop() { Serial.print("# loop "); lcdClear(); lcdPrint("Hello world!"); sleep(1000); } void lcdClear() { writecom(0x01); delay(5); } void lcdMoveTo(unsigned int x) { writecom(0x80 + (x & 0x7f)); delay(5); } void lcdPrint(char *s) { while(*s != 0) { lcdPrintChar(*s++); } } void lcdPrintChar(char c) { writedata(c); delay(1); } void writecom(int d) { SPI.begin(); // SPI.begin(LCD_CS) does not work SPI.setClockDivider(SPI_CLOCK_DIV128); digitalWrite(LCD_CS, LOW); digitalWrite(LCD_RS, LOW); // LOW = command SPI.transfer(d); digitalWrite(LCD_CS, HIGH); SPI.end(); // SPI.end(LCD_CS) does not work } void writedata(int d) { SPI.begin(); // SPI.begin(LCD_CS) does not work SPI.setClockDivider(SPI_CLOCK_DIV128); digitalWrite(LCD_CS, LOW); digitalWrite(LCD_RS, HIGH); // HIGH = data SPI.transfer(d); digitalWrite(LCD_CS, HIGH); SPI.end(); // SPI.end(LCD_CS) does not work }
  10. I've just noticed that the ADS1118 Booster Pack's J4 connector has long pins extending below the PCB, and one of them can contact the top of the VDD jumper. It looks like a possible short could occur between these two points. For now, I've stuck a business card in between to keep them from touching. Do the Booster Pack design guidelines include any bottom-side exclusion areas for downward-extending pins?
  11. Camera Flash Timer and Measurement Tool This project is an amalgamation of many other ideas and projects by other brilliant folks plus my own twist on things. Hopefully I have given credit to all those whose work I have expanded upon and incorporated. Apart from libraries, I have written the majority of the code from scratch implementing what I have learnt from this and other forums. Still quite a few bugs and it is probably 80 - 90% complete. I did get some perspex laser cut for it, but I didnt have the right software for it and borked the file conversion and received cute little minature versions. Will have another shot at that in the near future. Particular mention goes to the following folks for their posts and/or help. Maurice Ribble, Creator of the Camera Axe and Original Multiflash. @@RobG , Colour LCD with Touch https://www.tindie.com/products/RobG/color-lcd-boosterpack-touch/ I would be lost without this boosterpack and assistance. @@jkabat , http://forum.stellarisiti.com/topic/684-stellaris-fast-analog-reads/ John's Assistance with the Fast Analog reads required was awesome. Thanks! @@Rei Vilo, For help on many matters. @@calinp, For the porting of PetitFatfs. @@bluehash, For the SD card boosterpack. I have pretty much directly copied this circuit into my board. Thanks guys Main Components. RobG's Touchscreen Booster Pack. Stellaris Launchpad SD Card Socket I2C EEPROM Flash Sensor OptoIsoloators for Flashes Indicator LEDs Phototransistor Useage Takes the original flash signal and triggers up to 8 additonal flashes. The flashes can be either fired instantly or via delayed timings of which there are multiple modes. - Instant - Constant - Varies - Factor Increasing - Factor Decreasing - Synchronize It can also measure T0.1 and T0.5 camera flash durations via another menu. For ages I couldn't figure out what the spike was prior to many of the flash measurements. I am thinking it is a prepulse to the main flash which helps ionize the flash prior to main burst. If that's what it is, I am pretty stoked I can see it. Just need to modify my calcs routine to ignore it. http://en.wikipedia.org/wiki/Flashtube The purpose of measuring the flash lags and durations is an attempt to align flashes with different characteristics so that they are as closely synced as possible which removes ghosting of images. Jkabats help with fast analog routine has been key to achieving the 1Msps sampling rate. As each flash is profiled, the full curve data is stored in an I2C EEPROM along with summary details. This is then extracted by the Synchronize routine to set the delays for each flash. I have 7 different modes for aligning the flashes timewise. The results don’t differ too much depending on choice of method. 1. Peak (default) 2. T0.1 Midpoint 3. T0.1 Centroid of area under curve 4. T0.5 Midpoint 5. T0.5 Centroid of area under curve 6. Full Curve Midpoint 7. Full Curve Centroid of area under curve The faster flashes are held back, and they all cross the finish line at the same time. The whole flash array inherits the lag of the slowest flash. All the data from the I2C chip can be written to an SD Card for further analysis on a PC. Here is the data ported to excel. Code The code is still underway but most things are working. This is version 0.26 PTB_Flash_Measurement_Tool.zip (The main file is PTB_Iridium.INO . Will need to create folder structure to suit) Schematic This is the current schematic but will be updated in the near future to fix some problems. Multiflash 3.sch.pdf Stellaris Launchpad Mods Remove Resistors R2, R9, R10, R11, R12. Bugs and Issues Slowly working through things. 1. Flash Port 3 isn't firing for some reason. I think it used to. I wonder if it is related to issue #2 below. 2. I ran into strife with my indicator leds. They are Dual Colour red/blue and then I got a better understanding of forward voltage. The blue is very close to the operating voltage of 3.3v. I have done arduino thing before this and it was all 5v, so it caught me. (again) I am waiting on some lower resistance arrays, but I think this may create other problems to do with how much current the Stellaris can sink. http://e2e.ti.com/support/microcontrollers/stellaris_arm/f/471/t/45816.aspx Sooooo... I plan to redo the schematic in the near future implementing a darlington array to drive the optos and indicator leds. Gotta think that through. It will be my third board revision. Can't keep doing that forever. 3. I seem to be only able to get it to run with Energia 0009 at the moment. Later versions don't seem to work with touch screen. Deffo my Software issue. 4. I2C EEPROM Speeds are very slow. There is a lot of data I am writing in there, but I think some better coding on my part will help a lot. Luckily that only really affects 2 operations. The rest is zippy enough. 5. Haven't written code for reading back from SD card into I2C EEPROM Chip. 6. I seem to have some kind of problem with I2C addressing. I think its an Energia Wire library thing which may have been fixed in later versions. I had a 24lc512 but I wanted more space so I dropped in a 24lc1025 which I then found is like 2 different addresses. Couldn't write to one bank without writing to the other, so it defeated the purpose. I want more space to save longer curves from more powerful flashes. It is currently good enough to deal with common flashes at full power. 7. I too have the problem of scanning the I2C bus and getting an address found at every address. The I2C Eeprom works as required though. More as I think of them..... Cheers PTB
  12. main.cHallo How to implement an CAN BUS COMMUNICATION between CAN1 and CAN2 on Stellaris microcontroller.I need to transmit and receive the messages between two ifferent CANs. Herwith I am attaching my main function Thx in advance
  13. Hello, fellow launchpad enthusiasts! I am having problems reading temperature sensor values on my stellaris launchpad (LM4F120H5QR). The values returned by analogRead(TEMPSENSOR) are erratic and do not correlate with actual temperature. I use ubuntu 14.04 and energia 0101E0014. I tried following code: uint32_t TempRead = 0; float TempC = 0; void setup() { Serial.begin(9600); analogRead(TEMPSENSOR); } void loop() { TempRead = analogRead(TEMPSENSOR); TempC = (float)(1475 - ((2475*TempRead)/4096))/10; Serial.print("ADC value: "); Serial.println(TempRead); Serial.print("Temperature in C: "); Serial.println(TempC); Serial.println("------------------------"); delay(1000); } While runnning this code and putting my finger on MCU this code gives: ADC value: 1939 Temperature in C: 32.40 ------------------------ ADC value: 1871 Temperature in C: 34.50 ------------------------ ADC value: 1899 Temperature in C: 32.80 ------------------------ ADC value: 1895 Temperature in C: 33.00 ------------------------ ADC value: 1895 Temperature in C: 33.00 ------------------------ ADC value: 1899 Temperature in C: 32.80 ------------------------ ADC value: 1899 Temperature in C: 32.80 ------------------------ ADC value: 1895 Temperature in C: 33.00 ------------------------ ADC value: 1899 Temperature in C: 32.80 ------------------------ ADC value: 1899 Temperature in C: 32.80 ------------------------ ADC value: 1895 Temperature in C: 33.00 ------------------------ ADC value: 1899 Temperature in C: 32.80 Basicaly no changes in reading, apart from random-like stuttering. Anyone have an idea what could be the problem here?
  14. Hello, I managed to port the MPU9150Lib at https://github.com/richards-tech/MPU9150Lib to Energia. I had to make few changes in defines in dmp code, and the provided CalLib, and now it compiles for MSP430G2553, MSP430F5xx, Stellaris Launchpad, and the Tiva-C series (TM4C123) launchpad. CalLib writes to either flash or eeprom depending on architecture. It has failed for MSP430G2553, due to code size. It compiles for MSP430F5xx although I dont have a board yet to test. I have not tested the stellaris launchpad but I suspect it works, it does WORK on the Tiva-C series launchpad. Here is the picture of the setup: On one side I have an arduino nano v3 connected to a MPU9150 module (The cheap GY 9150) and on the other side I have a Tiva-C series launchpad with a sensorhub booster pack. (that contains a MPU9150 as well) and I have hooked up a usbee logic analyzer to i2c (sda, scl) of both mcus For some reason, it is running slow on the TM4C123 then the arduino. It is supposed to work much faster on the Tiva-C launchpad, but on the contrary it does not. I measured mpu.read() times, and on Energia it wont go less then 50ms, where on arduino I have tested up to 200hz sensor read rates with no problem. Here are two screenshots from the logic analyzer: The top two signals are from arduino sda scl, the bottom is the sda(3) scl(3) of the Tiva-C The MPU9150 is configured to update at 20Hz for both systems. however the i2c bus activity seems quite different. I am thinking there might be a problem with the i2c speed on Energia, or that it works different. And finally here is my code: MPU9150LibEnergia.rar I will be posting all the code on github later - for now I made a zip file for all. Best Regards, Can
  15. Hello to everyone, I am new to this forum after playing around happily with TI MSP 430 and also a bit with Stellaris Board. Mostly with Getting Started with the MSP430 Launchpad from Fernandez/Dang as my reference. So far so good anything did work well but I am just wondering if someone thought about porting Energia in a way that it would run on a Raspberry Pi Bramble( clust er of RPi) And by doing that also being able to run DEV on RPi only connected to USB hubs for power. The HDMI monitor excluded. Thanks in advance for any feedback Regards Gottfried
  16. WS2812 driver for Tiva is available here
  17. Hi friends. I began to a project at school which is about connecting ARMs. I have two stellaris launchpads and I'm trying to connect them over an nRF24l01. I use keil platform. Project is about sensors when first module sees an obstacle it will transmit it to the other Launchpad through RF. However I couldnt find any rf libraries. I dont know what to do and I really need your advice. Hope you can help me. Have a good day:)
  18. Hello friends, I just now got the stellaris launchpad to have hands on experience with ARM architecture. I have installed the driverlib and I can blink the LEDs through the APIs. The driverlib makes it easy to program the stellaris but with these APIs we cannot understand how the registers are programmed even when we look at the definitions of the APIs. These APIs are specific to a particular family. Thus, I wont be able to understand the ARM architecture. I request you all to please guide me regarding this problem. It would be great if I could find online training material with examples of stellaris, especially without the APIs so that internal complex architecture of ARM (cortex M4F) can be understood. Thanks & Regards Vin255
  19. Hi all, I'm working with Stellaris Stepper motor RDK from TI- Luminary Micro. I'm using USB Serial Interface for interfacing the Device with my Application developed using C#. Currently i'm stuck with sending the control commands from my Application. I can able to start & stop the Stepper motor by sending the following commands. But i'd like to set the Target Steps/sec. I cant understand how to form a command control with requred Target Steps. So any Help regarding this is appreciated. code: To startMotor: byte[] StartMotorRequest = new byte[] {0xff,0x07,0x13,0x14,0x00,0xcf,0xff, 0x04,0x30,0xcd,0xff,0x09,0x13,0x08,0x00,0xd0,0x30,0x0e,0xcf }; _serialPort.Write(StartMotorRequest, 0, StartMotorRequest.Length); To StopMotor: byte[] StopMotorRequest = new byte[] { 0xff,0x04,0x31,0xcc}; _serialPort.Write(StopMotorRequest, 0, StopMotorRequest.Length); Thank you, Balaji.R
  20. Hello, I am trying to analogWrite on the RGB leds, with energia. Appearently this can be done, as the original came with a demo program of this sort. Also the documentation of energia, the hardware documentation states that this RGB led pins are indeed analogWritable (purple) But when i try to use analogWrite - it will either take a 0 or 1 position, and no PWM will be outputted. It works as expected with digital output. Any ideas? Best Regards, -C.B.
  21. Hi together, I am trying to get UART working on my Stellaris Launchpad (LM4F120H5QR) using the onboard PIN headers (UART1/2) instead of the USB cable (UART0). This is how my code looks like (based on uart_echo from StellarisWare). I am using a FOCA tiny break-out board (integrating a FT232 IC) to receive the data on my terminal software. Currently, I am trying to set up UART1 and GPIOB (PB0 / PB1). However, I do not receive anything on my temrinal software, while using the standard uart_echo code for UART1 it works properly. Can somebody tell me what I am missing? If this works, I am getting closer to my actual goal, which is enabling and using UART1/2 in ASM. Best regards uart_echo.c uart_echo.c int main(void) { // // Enable lazy stacking for interrupt handlers. This allows floating-point // instructions to be used within interrupt handlers, but at the expense of // extra stack usage. // ROM_FPUEnable(); ROM_FPULazyStackingEnable(); // // Set the clocking to run directly from the crystal. // ROM_SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ); // // Enable the GPIO port that is used for the on-board LED. // ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); // // Enable the GPIO pins for the LED (PF2). // ROM_GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_2); // // Enable the peripherals used by this example. // ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_UART1); ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); // // Enable processor interrupts. // ROM_IntMasterEnable(); // // Set GPIO A0 and A1 as UART pins. // GPIOPinConfigure(GPIO_PB0_U1RX); GPIOPinConfigure(GPIO_PB1_U1TX); ROM_GPIOPinTypeUART(GPIO_PORTB_BASE, GPIO_PIN_0 | GPIO_PIN_1); // // Configure the UART for 115,200, 8-N-1 operation. // ROM_UARTConfigSetExpClk(UART1_BASE, ROM_SysCtlClockGet(), 115200, (UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE | UART_CONFIG_PAR_NONE)); // // Enable the UART interrupt. // ROM_IntEnable(INT_UART1); ROM_UARTIntEnable(UART1_BASE, UART_INT_RX | UART_INT_RT); // // Loop forever echoing data through the UART. // while(1) { UARTSend((unsigned char *)"Hello World!\n", 13); } } And I changed the corresponding values in the Startup file to the following values: startup_rvmdk.S ... ... DCD IntDefaultHandler ; The PendSV handler DCD IntDefaultHandler ; The SysTick handler DCD IntDefaultHandler ; GPIO Port A DCD IntDefaultHandler ; GPIO Port B DCD IntDefaultHandler ; GPIO Port C DCD IntDefaultHandler ; GPIO Port D DCD IntDefaultHandler ; GPIO Port E ;DCD UARTIntHandler ; COMMENTED OUT ... UART0 Rx and Tx ;DCD IntDefaultHandler ; COMMENTED OUT ... UART1 Rx and Tx DCD IntDefaultHandler ; UART0 Rx and Tx DCD UARTIntHandler ; UART1 Rx and Tx
  22. Hello everyone, I recently purchased a stellaris for a school and I am having trouble finding a code for the space invaders game that I can play on a 16x2 LCD. can anyone help me?
  23. Hi all, I'm testing system clock frequency. 1) change board.txt (energia_dir)\hardware\lm4f\boards.txt ###################################################### # Tiva C TM4C1233H6PM 80MHz # with launchpad ###################################################### lpTivaC-1.name=Tiva C w/ TM4C1233H6PM (80MHz) lpTivaC-1.upload.maximum_size=262144 lpTivaC-1.build.mcu=cortex-m4 lpTivaC-1.build.f_cpu=80000000L lpTivaC-1.build.core=lm4f lpTivaC-1.build.variant=stellarpad lpTivaC-1.ldscript=lm4fcpp.ld ###################################################### # Tiva C TM4C1233H6PM 25MHz # with launchpad ###################################################### lpTivaC-2.name=Tiva C w/ TM4C1233H6PM (25MHz) lpTivaC-2.upload.maximum_size=262144 lpTivaC-2.build.mcu=cortex-m4 lpTivaC-2.build.f_cpu=25000000L lpTivaC-2.build.core=lm4f lpTivaC-2.build.variant=stellarpad lpTivaC-2.ldscript=lm4fcpp.ld 2) change wireing.c, (energia_dir)\hardware\lm4f\cores\lm4f\wiring.c void timerInit() { #if F_CPU >= 80000000 ROM_SysCtlClockSet(SYSCTL_SYSDIV_2_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN); #elif F_CPU >= 50000000 ROM_SysCtlClockSet(SYSCTL_SYSDIV_4|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN); #elif F_CPU >= 40000000 ROM_SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN); #elif F_CPU >= 25000000 ROM_SysCtlClockSet(SYSCTL_SYSDIV_8|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN); #elif F_CPU >= 16000000 ROM_SysCtlClockSet(SYSCTL_SYSDIV_12_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN); #elif F_CPU >= 8000000 ROM_SysCtlClockSet(SYSCTL_SYSDIV_25|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN); #elif F_CPU >= 4000000 ROM_SysCtlClockSet(SYSCTL_SYSDIV_50|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN); #else ROM_SysCtlClockSet(SYSCTL_SYSDIV_2_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN); #endif // // Run at system clock at 80MHz // // // SysTick is used for delay() and delayMicroseconds() // // ROM_SysTickPeriodSet(0x00FFFFFF); ROM_SysTickPeriodSet(ROM_SysCtlClockGet() / TICKS_PER_SECOND); ROM_SysTickEnable(); ..... } unsigned long micros(void) { volatile unsigned int conMz = ROM_SysCtlClockGet()/1000/1000; // return (milliseconds * 1000) + (HWREG(TIMER5_BASE + TIMER_O_TAV) / 80); return (milliseconds * 1000) + (HWREG(TIMER5_BASE + TIMER_O_TAV) / conMz); } void delayMicroseconds(unsigned int us) { volatile unsigned int conMz = ROM_SysCtlClockGet()/1000/1000; volatile unsigned long elapsedTime; unsigned long startTime = HWREG(NVIC_ST_CURRENT); do{ elapsedTime = startTime-(HWREG(NVIC_ST_CURRENT) & 0x00FFFFFF); } // while(elapsedTime <= us*80); while(elapsedTime <= us*conMz ); } 3) check clock @ Stellaris LaunchPad // // Check System Clock // // #include "Energia.h" #include "inc/hw_ints.h" #include "inc/hw_nvic.h" #include "inc/hw_sysctl.h" #include "inc/hw_types.h" #include "inc/hw_timer.h" #include "driverlib/rom.h" #include "driverlib/cpu.h" #include "driverlib/debug.h" #include "driverlib/interrupt.h" #include "driverlib/timer.h" #include "driverlib/sysctl.h" #include "driverlib/systick.h" void setup() { Serial.begin(38400); pinMode( PUSH1, INPUT_PULLUP ); pinMode( PUSH2, INPUT_PULLUP ); } uint32_t system_clock; uint32_t tick_value; void loop() { // put your main code here, to run repeatedly: system_clock = SysCtlClockGet()/1000; Serial.println( system_clock ); tick_value = ROM_SysTickPeriodGet(); Serial.println( tick_value ); tone( BLUE_LED,500,100); delay(1000); }
  24. Please refer to LaunchPads and BoosterPacks Pins Maps for the updated and maintained pins maps. Thank you! ---- Please find the map for the pins on the StellarPad (aka. LaunchPad Stellaris LM4F). Front Rear Originals are in Energia wiki at https://github.com/e...a/wiki/Hardware
  25. I'm working with the stellaris launchpad on energia (version 1010E0009). I need to use two hardware serial ports, and I'm finding that it does not work. I've made a VERY simple sketch that demonstrates this behavior: When every port but one is commented out, the program runs fine. The light blinks, serial data moves, etc. When more than one is created, the first round of data goes out to each port, but it crashes somewhere. Often, the first few characters of the second loop begin printing on port zero. This doesn't happen when the delay(100) is in there. I'm not sure if this is a known bug or not, but it seems like the hardware serial library should be able to have multiple instances and work fine. Ideas?
  • Create New...