University Programs Knowledge Base

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

University Programs Knowledge Base

Discussions

Sort by:
Illustrates some basic concepts with respect to microcontroller design tools. A generic design flow will be introduced to orient the audience to the most common steps in the software development process.
View full article
Features General Tower card Form Factor Connections to allow use with a TRK-MPC5604B Board Camera Interfaces 1. 5-pin header to connect directly to Freescale Line Scan Camera 2. Header for 2nd linescan camera (optional) 3. RCA Camera Interface. Includes an LMH1981 Sync Extraction chip and connectors to MCU to allow for low resolution (32x32) decoding of signals Servo Outputs 3-pin Header to connector directly to steering Servo 1 Extra Servo header. Power Accepts direct Battery Power – Onboard Switching regulator 5-18v Tower Card will source power to other tower modules. All circuitry except for motor controller can be optionally powered over USB Connector Battery Input and motor Outputs will be a Tyco (TE Connectivity) TE Connectivity Screw Terminal http://search.digikey.com/us/en/products/1776275-2/A98036-ND/1826899 Motor Driver 2x MC33887APVW : Dual, Independent 5A Motor Driving Circuit Supports forward, reverse and braking. Current Feedback to MCU ADC to allow for closed loop torque control Programming Integrated Kinetis MK20DN512ZVLL10MCU with OSJTAG Can be used stand-alone or be used as a peripheral in the tower system. Additional I/O Extra signals from K40 routed to tower edge card connector. Signals for H-bridge, camera and servo can be routed to Tower Edge connector to be driven by another MCU card. Each can be disconnected via jumper. - We will need to crosscheck the signals to all other CPU modules. Would it be easier to just have a version that doesn't have the K40 populated and OSJTAG populated? Also, we may not need jumpers. Simply configure the Kinets I/O to inputs. Some basic I/O for debugging. 4-poistion DIP Switch + 4 LEDs. Inputs for Tach Signal/Speed Sensor Design Files Rev Alpha Schematics (Sent to MyRO on 4.4.2012) - Includes 3d view Assembly Prints (For Reference) PCB Fabrication Notes Bill of Materials Rev A Errata: Pins 4 & 5 for the camera (Gnd and +3.3v) got swapped on the PCB. You will need to swap the wires in the cable. You can pop the contacts out of the connector housing with tweezers. POT0 has a jumper wire to pin 26 (ADC1_SE18 . This was done to put all signals *except* the NTSC video onto ADC1 to simplify software. Future versions will have this change in the artwork Some components interfere with the tower connector. It can be mated to about 95%. Will work fine. Future versions will fix this issue Rev Beta Schematics, Assembly Prints, BOM, etc. - Includes 3d view Rev B Errata: None known! Google Code repository for the Example Code: https://code.google.com/p/tfc-twr/ This code works with Rev B of the board (and Rev A). All major interfaces & peripherals have been tested. At some point we will make a video going through the code. By default the Linescan camera code is enabled. The code in Main.c is pretty easy to follow. There is also code for the NTSC camera but must enabled in the TFC_Config.h file via a pre-processor directive. There is also code used for teh OSTAG interface, Labview demo applications and drivers for the USB Pictures Just verified the OSJTAG. Test Project to blink the battery LED's was downloaded into the K20 Videos Testing the Servo circuits….. Testing the pots, servos, H-bridges and K20 USB port Linescan Camera Bringup with Labview NTSC Camera Bringup with Labview 1.) This is a basic demo of an NTSC camera being brought in using the a Combo of the ADC, port interrupts and DMA transfers. 2.) I *ahem* overclock the ADC to 24MHz to get some extra resolution for a 64x64 pixel image (the first 6 columns are junk as they contain color burst data*) 3.) I decimate the images to a few frames per second to send over the WIFI (the booster pack card I made) to a Labview program. The Kinetis can bring the data in a the same frame rate of the camera, I just need to send much slower as there is some overhead in my communications scheme (ASCII text) and the WIFI is driven via a UART. 4.) In reality, I can get a 64 x 480 pixel image in memory as I pull in all the lines. I just decimate the rows to get a 64x64 result on the labview display. 5.) DMA does most of the work freeing up the CPU to do algorithms in the foreground.
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
A Livecast has been set up for you to enjoy The Freescale Cup EMEA Finals on 28-29 April that are hosted at the Politecnico of Torino. Connect on Freescale Cup 2015 live streaming - SeLM - Politecnico di Torino
View full article
How to interrupt the core from a a peripheral outside of the core - TPM overflow
View full article
25 student teams from 21 universities coming from 11 countries will meet on 29-30 April for the Freescale Cup EMEA Challenge. Check out the event information at https://www.facebook.com/events/1425416907713292/
View full article
En este video puedes consultar paso a paso la descarga e instalación del CodeWarrior 10.4 para microcontroladores. Accede a la liga www.freescale.com/cwmcu10
View full article
DIP breakout board for the Kinetis Microcontrollers   2 layer board of 0.65x1.35 inches (16.54x34.29 mm).  Minimal component requirements. You can buy the board from Osh Park ($4.95) or download the design files here! Thanks dgd for sharing the link!
View full article
A look at interrupts in a microcontroller from a generic point of view. This will be used to put the other videos relating to interrupts of the ARM core in context.
View full article
Footage from the technical inspection taken during The Freescale Cup 2015 Worldwide Finals. Credit: Fraunhofer IIS         
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
Footage highlights of the Freescale Cup Worldwide finals race 2015. Credit: Fraunhofer IIS
View full article
Entrenamiento acerca del MCG de la herramienta de desarrollo Freedom, para los microcontroladores Kinetis L series. Para acceder al material completo visita: https://community.freescale.com/docs/DOC-95205
View full article
Freescale Cup China - Two Wheel Self Balancing Challenge 2012 In China they have another tier of competition in which the cars must complete the track autonomously while balancing on the rear wheels. For this challenge they use a charged wire in the track for which to sense and navigate the vehicle by. Really cool!
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 [Qorivva Freescale Hosted Kinetis Discussion Forum] [ ???? Community Website]
View full article
Video footage highlights taken during The Freescale Cup Worldwide Finals 2015 Award Ceremony Credit: Fraunhofer IIS
View full article
Data acquisition system for Kinetis K Family Author : Mauro Padin (Student) Supervisors : Professor Daniel A. Jacoby, Juan Pablo Vega (Teacher Assistant)   Summary:   This project is based on the FRDM-K64F board, a HC-05 Bluetooth module, and a smartphone. In this application, an analog signal is sampled and transmitted wirelessly to a smartphone, using an external Bluetooth module, where it is displayed. The complete CodeWarrior C code and MIT App Inventor code can be found in the .zip file. System Structure SysTick Module: Periodically triggers ADC conversions and UART transmissions. ADC Module: Samples the analog signal and manages the ADC input buffer. UART Module: Manages the UART output buffer and transmits the digitized data. Bluetooth Module: When connected, wirelessly transmits the data coming from the UART module. Smartphone App: Handles Bluetooth connection, receives the digitized data and manages the display.   Software Structure   A project template is provided to the students in order to establish a simple, and easy, program organization for the duration of the course. A portion of the template was built with the help of the Processor Expert so that, later on, the students would be able to understand its structure and limitations, and transition to this new tool. A wrapper was built around this auto-generated code and the resulting function, void __LDM_init (void), is to be used at the very beginning of the project given. This function mainly configures internal processor registers related to clock configuration.   The project is composed of separate files for each hardware and software module:   The template is composed of four files: LDM.c/h, main.c, and misc.h. The application is found in: App.c/h RTI, ADC, UART, LED Drivers are defined in: RTI.c/h, adc.c/h, uart.c/h, and LED.c/h.   The basic Driver structure consists of a void DRV_init(void) initialization, a set of void DRV_x_ISR(void) interrupt handlers, a set of void DRV_x_PISR(void) periodic interrupt handlers, and a set of void DRV_x services function. Only the initialization function is mandatory, the others being optional and dependent on the driver purpose. Service functions are interfaces between the application and the Driver and do not necessarily access any subjacent hardware. Indeed, this Driver structure can be nested and thus not handle any hardware at all. When a Driver function does access hardware, it is recommended to further use a Hardware Abstraction Layer to enhance productivity and improve portability.   Extracts of the system   As an example of the Driver Structure, the LED Driver is described below:   init void LED_init  (void)   ISR N/A   PISR void LED_PISR  (void)    Services void LED_write  (color_t color, bool value) void LED_set  (color_t color) void LED_clear  (color_t color) void LED_toggle (color_t color)   The entire application is interrupt driven, so that only initialization are necessary and the run loop is empty:   void App_init(void) {   LED_init();  // LED driver init function   uart_init();  // UART driver init function   adc_init();  // ADC driver init function   RTI_init();  // RTI driver init function }   void App_run(void) { }       Hardware interrupts are not serviced in their specific handler but referred to external handlers for readability and organization. The SysTick interrupt handler is composed of a ISR and a Service:   ISR_t SysTick_Handler(void) {   LED_isr code   ADC_conv code } The code for the smartphone side is depicted below:     Finally, a screenshot of the result:       Original Attachment has been moved to: -ADC-bluetooth-TP6.zip
View full article
Lecture 1: Introduction and Motor Basics  This training module presented by Professor L. Umanand of CEDT, Indian Institute of Science, Bangalore provides an overview of the Freescale Cup – 2011. It introduces to the challenge describing the various components of the intelligent car tracker. Lecture 2: Pulse Width Modulation  This lecture provides an overview of Pulse Width Modulation Lecture 3: Control Design  This lecture describes controller design and PID control Lecture 4: Speed and Position  This Lecture discusses integrating your PID with sensor data Lecture 5: MPC5607B Overview  This training module provides an overview of the 32-bit Qorivva MPC5607B Processor. The course is targeted towards beginners in order to enable them to quick start the development of software on the MPC5607B.
View full article
Find the complete material at https://community.freescale.com/docs/DOC-95205
View full article