Heidenhain Programming
(Read to the end for Heidenhain Programming tips)
The Heidenhain control is very easy to learn because it gives the operator prompts right from the outset. Follow these ten easy Heidenhain Programming steps to create your first working CNC program.
(1) Start your Heidenhain Programming.
input a Program Number when asked. On starting a new program you are asked if you want millimetres or inches.
(2) Create some stock for the graphics. You go on to create what is known as a blank form (BLK FORM). This is optional but is the blank shape for the graphics.
The first figure 0.1 is the bottom left hand corner and the second figure 0.2 is the top right. Take your datum figure into account when you dimension the blank.

This is a blank 110 x 110 x 10 and the datum is in the centre. If your datum was in the bottom left hand corner then it would be like this.

Hope this does not confuse you but I will be machining a 100mm square so this blank would leave me 5mm all round and you will see it removed when the graphics run..
Now we Need A Tool
(3) Define the tools to use. 

Above is the tools defined in the programme. The length has not been put in yet.
In Heidenhain programming tool offsets can be defined inside the program, which is traditionally how these controls worked. You can have them in an external file the same way as Fanuc and Mazak controls. These offsets are controlled from outside of the program.
In Heidenhain Programming work offsets (datums) again can be embedded in the program or external. If you use the external work offsets then each one has a number that you can call out to use it. It’s a bit like G54 to G59 on a Fanuc Control
It’s All So Easy On This Control.
You can just zero the display to set your datum position if you wish.
There is an advantage to everything being self-contained within a program. It means that when you recall the program everything is set and ready to go. Tools are defined in the program using the TOOL DEF button and you can either define all tools at the beginning or on the fly as you use them.
If your machine has an automatic tool changer the these will usually be in an external table.
You’re doing Well, So Far so Good
(4) Get the tool. 

Call Tool 1
The tool call button will ask for a tool number and a spindle speed which you input. Once this line is read the tool is active. You may need to add an M6 if you have a tool changer. The M6 will instigate the tool change in this case Tool 1.
(5) Make a move to where you want to drill your first hole. 

At the end of this line 5 you will need an M3 to start your spindle. The second line 6 brings your Z axis down to the component (3mm above).
Linear moves are programmed by using the L key which then prompts the operator for and X Y and or Z input. As you enter each figure you are prompted for the next input. It doesn’t take long to get the idea of how this is done.
Later controls have help screens.
After the XYZ input you are prompted to choose for RO RL or RR which is the choice of cutter compensation cancel or compensation to the left or right. You won’t need this because you are only drilling holes. So skip it or use RO.
There is no actual rapid on these controls you just program maximum feed (F9999). On the newer controls there is a FMAX soft key which does this for you.
You can input all the values in a line or press the END key which will complete the line. I recommend you play around with different keys to get the hang of how it all works. You can then just delete the program and have a go at a real one.