University Programs Knowledge Base

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

University Programs Knowledge Base

Labels

Discussions

Sort by:
Take some time to get yourself familiar with C programming before you continue on the programming tutorial. Here is a list of topics that you should be comfortable with, and a couple of good tutorials below. Topics included: Program Structure Commenting Variables Keywords Data Types Decimal, Binary and Hexadecimal Equivalents ASCII Text/Number Conversion Math Operators Increment & Decrement Shift Logical Operators Bitwise Operators Loops If Statement Switch Statement Functions Recursion Local Variables vs. Global Arrays Pointers Typdef, struct and union Preprocessor Directives Static, const and Volatile Keywords Tutorial 1: PSU Intro to C for Embedded Design   From PSU Freescale Cup Senior Design Course Tutorial 2: Learning Programming with C This Freescale course consists of a collection of lessons that will introduce you to the fundamentals of programming using the C programming language. Coding for Readability Sometimes when a project has the ability to grow with new features, it is best to code in modules. This allows one to easily take a more modular approach to designing their program. Despite the fact that C does not support Classes like C++ does, you can create structures that can be addressed globally with little code, which is especially useful for microcontroller based projects. An example of a structure which will be made global: This goes in the globals.h file typedef struct {   unsigned char ServoPWM;   char ServoAngle;   unsigned char DrivePWM;   int TimeOut;   int Current;   int Speed; } sMotor; extern volatile sMotor Motor; This will go in any other file that we want our structure to be accessible from #include <Globals.h> volatile sMotor Motor; This is how to address the variable in the structure #include <Globals.h> volatile sMotor Motor; If you decided to have two distinguishable motors you could do this in the globals.h extern volatile sMotor Motor1; extern volatile sMotor Motor2; Then do this in the other files volatile sMotor Motor1; volatile sMotor Motor2; Helpful Hints In developing an algorithm to detect the line position, we found two basic errors in the coding practice which caused catastrophic errors in line detection. Both of these tips are very basic coding practice. First, when using C code, it usually benefits the user to initialize all variables to some value, especially if computations are involved. Often times when the value wasn't initialized it would seem to acquire a wrong value seemingly from nowhere. Secondly, when doing calculations with arrays, make sure to do calculations with array indices that actually exist. Many times we would make the mistake in our loops of trying to use an index that wasn't assigned a value. Therefore it would acquire an unknown value from memory that caused errors in our calculations.
View full article
One option for mounting the FRDM-KL25Z Freescale Freedom board to the car chassis. [no audio] Important Note:  Secure the wires coming from your motors!!  (I used a zip tie in the video)  If they are allowed to flex at the joint where the wire connects to the motor, it will eventually fail.
View full article
In this video we will look at the example code provided for the FRDM-TFC for use with the mbed development environment. Alternatively, you can see the same example code as it is used with CodeWarrior here:
View full article
The Freescale Cup has been around the world for the last 9 years. Over 23,000 students work each year on intelligent cars to make then run around the track at fast speed. Find more information on the community. Select the region you are part on and engage in the next season of the challenge.
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
The Freescale Cup East China 2013 challenge video 2 After formal competition finished in East China, we gave a challenge and asked teams to try a hill with >30 angle, some cars successes
View full article
In this training video we will decompose an NTSC video signal to gaining understanding of how to capture video data from a "analog" camera.
View full article
This video will examine how can design speed sensing into their vehicle platform.   An example of magnet and sensor placement is shown.
View full article
After formal competition finished in East China, we gave a challenge and asked teams to try a hill with >30 angle, some cars successes
View full article
One of the finalist vehicles for the Freescale Cup China 2012 event. In 2012, we switched the black lines to the outer edges for a new challenge twist for the students to adapt to.
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
Compilation of views taken during The Freescale Cup 2015 Worldwide Finals held at the Fraunhofer IIS during the event opening. Credit: Fraunhofer IIS
View full article
Footage taken using the Fraunhofer IIS Eagle Cam attached to the Car from the Politecnico of Torino on the final track layout. Credit: Fraunhofer IIS
View full article
Watch the video highlights of the Freescale Cup Worldwide Finals 2015 for the training sessions. Credit: Fraunhofer IIS
View full article
Footage from the technical inspection taken during The Freescale Cup 2015 Worldwide Finals. Credit: Fraunhofer IIS         
View full article
Second part in the series showing tips and tricks to getting the most of your line scan camera.
View full article
How to install a servo horn.  More specifically for the Freescale Cup kit. [no audio]
View full article
Footage highlights of the Freescale Cup Worldwide finals race 2015. Credit: Fraunhofer IIS
View full article
Video footage highlights taken during The Freescale Cup Worldwide Finals 2015 Award Ceremony Credit: Fraunhofer IIS
View full article
Clip provided by: Hanyang University Korea One of the challenges of the Korea event is to have the cars self-park. This car is using the S12XE chipset.
View full article