Step-7 é possível organizar o programa por blocos que podem ser chamados no programa principal. O próprio programa principal é um bloco que é executado ciclicamente (OB1). Esta forma de estrutura de programa possibilita que o usuário crie sua próprias estruturas de dados (DB’s) e funções (FC’s e FB’s). 5.1 – Blocos de Organização OB Os blocos de organização OB’s fazem a interface do sistema operacional e programa de usuário. Os diversos blocos de organização possuem funções específicas. Um programa de usuário é composto pelo menos pelo bloco de organização OB1, este é responsável pela varredura cíclica de memória de imagem de entradas, saídas e do processamento do programa do usuário. A seguir apresentam-se alguns blocos de organização mais utilizados. OB1: Execução cíclica do programa; OB100: Acionado quando a CPU é ligada ou quando passa de STOP para RUN, zera todas as memórias (temporizadores, contadores, retentivas, plihas). OB101: Acionado quando a CPU de STOP para RUN, zerando todas parcialmente as memórias (temporizadores, contadores, retentivas, plihas). Esta opção é possível nas CPU’s do S7- 400. OB80, OB87, OB121 e OB122: Na ocorrência de erros de hardware que não mande a CPU para STOP. OB10: Interrupção cíclica. OB35. Interrupção programada. Um bloco de organização só pode ser acessado pelo próprio sistema operacional, não podendo portanto, ser chamado por outro OB, ou seja, é o proprio sistema operacional da CPU que define a prioridade para execução dos blocos. Por exemplo o OB1 tem o menor nível de prioridade de execução. 5.2 – Blocos de Função FB e FC O particionamento e a estrutura do programa podem ser realizados a partir do Bloco de Função - FB e Função - FC. Um bloco de função FB é um bloco de programa acompanhado de uma memória. Esta memória esta atribuída a um bloco de dados do tipo instance. Neste bloco são armazenadas as variáveis e seus valores. Uma função FC é um bloco de programa sem memória própria, ou seja, os valores das variáveis criadas são apagadas após o seu uso, isto porque o bloco utiliza como auxílio a pilha local de memória. A FIG.57 ilustra o caminho para criação dos blocos e funções no STEP-7. Blocks (botão direito) Insert new object Data Block, ou Function, ou Function Block, ou Organization Block