University Programs Knowledge Base

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

University Programs Knowledge Base

Discussions

Sort by:
A total of 40 teams of more than 120 electrical and electronics engineering undergraduates from 19 local public and private universities competed in The Free...
View full article
1.  Go to community.freescale.com and Log in with your www.Freescale.com account, if you don´t have one, create one. 2.  Create a New Document 3.  Write your Project Name and a paragraph with a quick description of your project. Next, click the insert video icon to add your video of your project working. 4.  If your Project Report is less than 3 pages long, post it right below the video. If not, add it as Attachment. 5.  Also add your complete program project in a .zip file as an attachment. 6.  In the Category section, select if is a Student Project or other. 7.  In the Tags section, add any search words that can help anyone to find your project. Use University_Programs, your evaluation board name (ex. TWR-K40X256-KIT) and family (ex. Kinetis ). It is optional if you want to add your_university_name, region (ex. latin_america, emea), etc. 8.  In the Collaboration Options, add your team members if you want them to be able to edit it. And set Comments to be "Open". 9. Select Publish when you are done.
View full article
Acronyms related to electronics and embedded systems. Can't find the term you are looking for here?  Add it to the comments section below and I will research and add to this list. A ABIST-Array Built-In Self-Test ADAM-Advanced Doherty Alignment Module  [a special module to do Doherty phase amplifers] ADMA-Asynchronous Direct Memory Access ADC - Analog to Digital Converter APU-​Application Processor Unit AWIC-Asynchronous Wake-up Interrupt Controller B BLE or BTLE - Bluetooth Low Energy BME-Bit Manipulation Engine BOM-Bill of Materials BSP -Board support package. A group of files that are specific to a particular type of processor on a particular type of board. It includes drivers. C CAN-Controller Area Network CMSIS- Cortex™ Microcontroller Software Interface Standard CMT-Carrier Modulator Transmitter CPU-Central Processing Unit CRC-Cyclic Redundancy Check D DAC- Digital to Analog Converter DCSR-Debug configuration and status register​ DCU-Display Control Unit DIMM-dual in-line memory module DMA-Direct Memory Access DPA-Doherty Power Amplifier​ E eTPU-​enhanced Time Processor Unit EWM - External Watchdog Monitor F FPGA-Field programmable gate array FPU-Floating Point Unit FRAM-Ferroelectric Random Access Memory​ FSM-Finite State Machine​ FTM-Flexible Timer Module G-H GPIO - General Purpose Input/Output HID-[USB] Human Interface Device HMI - Human Machine Interface I I2C-Inter Integrated Circuit​ I2S -Inter-IC Sound IDE-Integrated Development Environment IFC-​Integrated Flash Controller IFTT-​Inverse Fast Fourier Transform ICE-In-circuit emulator J-L JTAG - Joint Test Action Group LED-Light Emitting Diode LCD-Liquid Crystal Display LVD-Low Voltage Detect M MAC-Media Access Control mbed- Cloud based IDE for rapid prototyping MCG- Multi-Clock Generation MII-Media Independent Interface MOSFET-Metal Oxide Semiconductor Field Effect Transistor MPU-Memory Protection Unit MSD-mass storage device N-O NMI-Non-maskable interrupt NVIC-nested-vectored interrupt controller NVM-Non-volatile memory OpenSDA-Open-standard Serial and Debug Adapter. P PCIe-PCI Express (Peripheral Component Interconnect Express) PEx-Short form for the Processor Expert PEG - Portable Embedded GUI PGA- Programmable-gain amplifier PIT-Periodic Interrupt Timer PMC-Power Management Controller PSP - Processor Support Package PWM-Pulse Width Modulation R RNG - Random Number Generation RoHS-Restriction of Hazardous substances RTC - Real Time Clock RTOS-Real Time Operating System RRAM-​Resistive Random Access Memory S SCI-Serial Communications Interface (see also UART) SDHC - Secure Digital Host Controller SIM - System Integration Module SPI-Serial Peripheral Interface T TDM - Tamper Detection Module TPMS-Tire Pressure Monitoring System​ TSI-Touch Sensing Interface U-W UART - Universal asynchronous receiver/transmitter WiMAX ​Worldwide Interoperability for Microwave Access
View full article
Freescale Cup 2016 Worldwide Rules
View full article
This educational application by Freescale teaches you about sensor fusion and lets you experiment with some of the routines already present in your Android™ device. It does not require that your device uses Freescale sensors. The app supports 6 and 9-axis fusion routines native to your device, as well as those on compatible development boards. This app just lets you experiment with what you already have. http://www.freescale.com/webapp/sps/site/overview.jsp?code=XTRSICSNSTLBOX
View full article
FTF2011 - Freescale Cup Invitational - Finals Second Place Team
View full article
Students from the University Applied Sciences TDU Deggendorf gave yesterday a demonstration of their Freescale Cup cars. 10 teams had worked during the semester in getting their cars running on their homemade Freescale Cup track based on Tower K60 kits. They ran them with lights on, lights off, in both directions on the track. Solid performance overall. HDU Deggendorf's teams are led by Prof. Gerald Kupris and have enrolled for the 3rd consecutive season into the Freescale Cup EMEA Challenge 2014. They are preparing another set of cars to compete in the upcoming racing season.
View full article
How to use the SysTick peripheral in the Cortex core with interrupts
View full article
Depending on which MCU Devlopment board you have chosen, you will need to figure out a way to mount this to the chassis. I have seen everything from cardboard, to aluminum, to wood. Below is a template complete with CAD drawings to mount the Qorivva TRK-MPC5604B board and the Motor Board onto the chassis. We use plexiglass for ours, but any other millable material is appropriate. The large hole in the middle is for cables from the servo. We attach the board to the car using the plastic standoffs (you will need them 55 mm long, so in our case, we used the combination of 40 + 15 mm) - see an example (SOS code 10260). To attach both the processor and interface boards the simillar 5mm plastic standoffs were used. Preview (.pdf) CAD file (.dxf)
View full article
The attached final rules are valid for the 2013 China Freescale Innovation Competition
View full article
Clock setup on the Kwikstik
View full article
Photos Videos
View full article
Congratulations to all teams of the inaugural West Coast Freescale Cup event!  Our three fastest times, covering a total distance of 147 feet.  Full collection of event photos and videos!! Top 3 Teams: * First Place - UC Berkeley - 21.27 seconds Second Place - UC Davis - 27.92 seconds Third Place -  UC Davis - 28.00 seconds
View full article
INTRODUCTION Hi everyone, Making/Developing/Porting a Bootloader is a tedious task for newbies (even for professionals) and inexperienced hobbyists who wish to use them on their custom hardware for rapid prototyping. After searching a lot on different forums I came to a conclusion that I cant develop a bootloader just like that so my next option was porting ,that too wasnt easy if you are going with old bootloaders with limited support. I then found a very easy and efficient way of rapid software development platform that can be used on almost any IDE (Keil,Codewarrior,KDS,etc.) and can be used to develop softwares like USB MSD Bootloaders,Serial Bootloaders and other applications for almost all Freedom Development Boards ,Freescale Kinetis MCUs (on a Custom Development Board ) with minimal ARM Programming Knowledge, which is perfect for newbies like me who are just starting with ARM Development using freescale or other boards.See Welcome to the homepage of the µTasker operating system with integrated TCP/IP stack, USB and target device simulator Now my project was to make custom board using MK22DX256VLF5 (48 LQFP) MCU ,my board is a rather a simple one using basic filtering circuits for powering the MCU and almost all the pinouts given as hardware pins on the dev board.Somehow I was able to flash my first blink code using Keil IDE using the OpenSDA circuitry of FRDM-KL25Z (J-11 trace cut ) with CMSIS-DAP firmware (OpenSDA app ) loaded on to it using SWD Programming. With the steps mentioned below I'll show you how to port a Mass Storage Device (MSD) Bootloader using uTasker project from scratch. REQUIREMENTS Programmer(Hardware) or Emulated Programmer(OpenSDA apps): Segger Jlink, P&E Multilink ,OpenSDA Emulators (Jlink-SDA, CMSIS-DAP,USBDM ) IDE :Keil,Codewarrior, Kinetis Design Studio etc. (I prefer CW 10.6 ) Target MCU: Choose any MCU between Kinetis,Coldfire V2,STM32  (I am using Freescale Kinetis MK22DX256VLF5 ,48 LQFP ) refer - http://www.utasker.com/ PROCEDURE 1. Lets start by downloading the uTasker project/framwork (for Kinetis ) from µTasker Kinetis Developer's Page . Then extract and copy the folder to your CW workspace ,import the project to CodeWarrior IDE, It should look like this. (I am using version 14-9-2015)   2.Next Select "uTaskerSerialLoader_Flash" from the Five build configurations (refer http://www.utasker.com/docs/uTasker/uTaskerSerialLoader.PDF  ).uTaskerBM_Loader is described in http://www.utasker.com/docs/uTasker/uTasker_BM_Loader.pdf This is a very small loader alternative that works together with an initial application. uTaskerV1.4_BM_FLASH is the application to build so that it can be loaded to a loader (including the USB-MSD one). uTaskerV1.4 is a 'stand-alone' version of the application that doesn't work together with a loader (and doesn't need a loader).If you want to build application to load using the USB-MSD loader you need to use uTaskerV1.4_BM_FLASH. after that find the files config.h and ap_hw_kinetis.h.These files define the type of MCU you use. 3.In config.h Select your board or MCU type or the closest MCU resembling the architecture of your own MCU. My MCU  MK22DX256VLF5 was not there so with a little help from mjbcswitzerland  I chose TWR_K21D50M Board settings as TWR-K21D50M module is a development board for the Freescale Kinetis K11, K12, K21 and K22 MCUs. (Note : Be sure to remove or comment any other defined boards ) After Selecting the Board/MCU scroll down to find USB_INTERFACE and USB_MSD_LOADER and make sure that these two are defined (not commented ).This is necessary to enable USB enumeration as Mass storage device. Also comment the following if already defined : HID_LOADER KBOOT_HID_LOADER USB_MSD_HOST This is necessary as we are using our Bootloader in MSD Device Mode not in MSD Host Mode. Also we arent using HID_LOADER and KBOOT. Now open  ap_hw_kinetis.h and Find your selected MCU (in my case its TWR_K21D50M ) So, Find the String "TWR_K21D50M" (or whatever your MCU is ) and see if the follwing lines are defined. #define OSC_LOW_GAIN_MODE #define CRYSTAL_FREQUENCY    8000000  #define _EXTERNAL_CLOCK      CRYSTAL_FREQUENCY #define CLOCK_DIV            4                                      or    #if(..........)         #define CLOCK_MUL        48                                            #define SYSTEM_CLOCK_DIVIDE 2                                      #else         #define CLOCK_MUL        24 #endif     #define USB_CLOCK_GENERATED_INTERNALLY Here comes an integral part of USB MSD Bootloading/Programming.You must be wondering about CRYSTAL_FREQUENCY  8000000 and  CLOCK_DIV   4  .This is the frequency of an external crystal oscillator  (8mhz) connected between EXTAL0 and XTAL0 pins of the Target MCU.If your MCU has an internal oscillator then check whether the latter is defined. refer- https://cache.freescale.com/files/microcontrollers/doc/app_note/AN4905.pdf          http://www.utasker.com/kinetis/MCG.html There are two ways to be able to use USB: 1. Use a crystal between EXTAL0 and XTAL0 - usually 8MHz is used. (with or without load capacitor -both worked for me ) 2. Use a 48MHz oscillator on the USB-CLKIN pin. First one is easier and it worked for me.Since my MCU doesnt have an internal oscillator I have used and External 8Mhz crystal. If you want to use a 16Mhz crystal then just make the following changes : #define CRYSTAL_FREQUENCY    8000000 #define _EXTERNAL_CLOCK      CRYSTAL_FREQUENCY #define CLOCK_DIV            4                                 TO #define CRYSTAL_FREQUENCY    16000000 #define _EXTERNAL_CLOCK      CRYSTAL_FREQUENCY #define CLOCK_DIV            8 Note: The CLOCK_DIV should be such that it prescales the crystal frequency to range of 2-4MHz. Here is the clocking diagram of My MCU.The next diagram shows an oscillator crystal connected externally to my dev board. Next search for "PIN_COUNT" under your corresponding MCU/Board (mine is TWR_K21D50M).My MCU is 48 LQFP with 256kb flash and 32kb SRAM (you have to change them according to your MCU ).So I have changed the following lines                              from   #define PIN_COUNT           PIN_COUNT_121_PIN                         #define SIZE_OF_FLASH       (512 * 1024)                          #define SIZE_OF_RAM          (64 * 1024)                              to   #define PIN_COUNT           PIN_COUNT_48_PIN                      #define SIZE_OF_FLASH       (256 * 1024)                              #define SIZE_OF_RAM          (32 * 1024)  Next if you search for your MCU/Board (in this case TWR_K21D50M) ,you will find this line : #define UART2_ON_E This defines the alternative port for UART2,since many boards doesnt have PORTE ,it can be chaned to other ports. [its not important though] Note : When building the serial loader for a device with small RAM size reduce the define #define TX_BUFFER_SIZE (5512) to 512 bytes so the buffer can be allocated (the large size was used only for some debugging output on a larger device) [loader version :14.9.2015] Now search for the String "BLINK_LED" under your corresponding MCU/Board ( mine is TWR_K21D50M ) .The uTasker Bootloader has a special function ,whenever it is in MSD/LOADER mode it blinks a test LED on the board.This is not important but it can be used for debugging purposes.I have a test LED on my board at PORTB16 .You can also specify hardare pins to force bootloader mode and to stop watchdog timer if you pull SWITCH_3 and SWITCH_2 down to ground respectively.I am setting SWITCH_3 and SWITCH_2 as PORTD7 and PORTD6 respectively. Now on the toolbars go to Project > Properties > C/C++ Build > Settings > Tool Settings > Target Processor :Change it to your MCU type (mine is cortex-m4 ) .Next go to Linker >General and change the linker script file to match your MCU's flash,RAM,Type.I have set mine to K_256_32.ld (Kinetis K type processor with 256kb flash and 32 kb RAM) Apply your changes.Now you are ready to go. 4.  Build your project under SerialLoader_FLASH configuration .If there are no compilation errors then you have done it! (if there are then recheck everything with this guide ) Now Click the Flash programmer icon a and Select Flash File to Target. (if your not getting the icon switch to "DEBUG" perspective view ) Now you may choose your Programmer (or emulated programmer )[connection tab] ,select the correct Flash configuration file ,then browse for the binary file that has been generated under C:\Users\<computer user>\workspace\Kinetis_14-9-2015\Applications\uTaskerSerialBoot\KinetisCodeWarrior\uTaskerSerialBoot_FLASH\uTaskerSerialBoot.bin and Click on "Erase and Program". You may skip Step 5 and go to Step 6. 5.I am using the OpenSDA circuitry of my FRDM-KL25Z (J-11 trace cut ) as a programmer using J-link OpenSDA app. Download the app from SEGGER - The Embedded Experts for RTOS and Middleware, Debug Probes and Production Programmers - OpenSDA / OpenSDA V2 depending on your OpenSDA version (FRDM KL25Z has OpenSDAv1). Refer - Using the Freedom Board as SWD Programmer | MCU on Eclipse 5.1.First Enter bootloader mode and Flash the Jlink sda app into it.Connect the SWD wires from the board to your  Target MCU/Board ,also connect the target board        to the external oscillator.Also connect the FRDM's OpenSDA through USB. (A drive with the name JLINK Should come )                                          5.2. Go to Flash File to target and under connections tab click new. give any name and click new under Target Tab.Then select the target type (your target MCU ,mine is                      K22DX256M5).Then check Execute Reset under Initialization Tab. Click finish.    Now you'll get the option to select connection type ,then choose J-Link/J-Trace for ARM and change the Debug port interface to SWD .If you get the error :connection name is not        unique then just change the name (I have used jlink1).Click Finish.     Now I have set up my connections so I can flash the MCU with Jlink app on my OpenSDA circuitry. 6. Now to verify USB Enumeration of your Custom Board ,connect it to PC using USB and you should get a drive with the name UPLOAD_DISK.
View full article
See how Sylvain got a position at NXP.
View full article
Wanted to let you know of the new textbook on Freescale ARM Cortex M is published. Here is the link to Amazon: http://www.amazon.com/Freescale-ARM-Cortex-M-Embedded-Programming-ebook/dp/B00P4ABTP6/ref=sr_1_1?ie=UTF8&qid=1414942909&sr=8-1&keywords=Freescale+ARM The support materials are here: http://www.microdigitaled.com/ARM/Freescale_ARM_books.htm Author: prof1982
View full article
TFC2015 UCDavis Team Chucksgon Final Report Thanks for sharing Lance Halsted​
View full article
The file contains the rules for The NXP Cup EMEA 2016-2017 edition of the challenge. Revision 1 dated 13-Jul-2016 For any question : marion.thierry@nxp.com
View full article
The TRK-MPC560xB: MPC560xB StarterTRAK (Development Kit) is a Freescale evaluation board powered by the qorivva chip. The Qorivva microcontrollers family is a set of 32 bit Power Architecture chips. Which Chip do you have? The chipset mounted on the boards for the Freescale Cup can vary. Always validate your chipset to know it's full capabilities. MPC560xB Product Information Page Difference Highlights: 5604B = 512MB Code Flash; no DMA 5606B = 1MB Code Flash; Has 16-Channel DMA 5607B = 1.5Mb Code Flash; Has 16-Channel DMA TRK-MPC5604B Hardware Setup There are several main hardware configuration steps. After installing the battery, once the USB cable has been connected between the evaluation board and PC, it may be necessary to update the chip firmware which requires moving a jumper pin on the evaluation board. TRK-MPC5604B Hardware Setup Instructions Lectures: The Freescale Cup – Lecture 5: MPC5607B Overview Overview Slides from lecture Overview Slides from Lecture (PDF) other Lectures from the Freescale Cup Lecture Series Other Qorivva Tutorials: qorivva-blink-led qorivva-drive-dc-motor qorivva-turn-a-servo qorivva-line-scan-camera Board Tips Important Documents TRK-MPC5604B User's Manual TRK-MPC5604BQuick Reference Guide TRK-MPC5604B Schematics Reference manual External Links TRK-MPC5604B Webpage
View full article