Pessoal!
Sou hobista e uso preferencialmente microcontroladores PIC por possuir muitos MC.
Há anos que uso fluxogramas para auxiliar na programação de microcontroladores.
Com isso notei que mesmo os fluxogramas, que condensam muitas instruções em uma figura, ainda podem ser compactados, para acrescentar mais blocos na mesma figura.
Passei a usar, com sucesso, uma forma de fazer fluxogramas mais condensados em menor espaço.
Em tempo:
1 - Já havia feito uma condensação anterior, mas esta nova condensa ainda mais.
2 - Este método é muito útil para se escrever a linguagem Assembly. A relação bloco/instrução é quase que direta e imediata. Para linguagens de nível superior este método não seria útil.
3 - Meus firmwares possuem cerca de 1/3 de memórias de programa, que as escritas em linguagem C, são mais rápidos e o controle de tempos é superior, porém o trabalho para implementar é superior a um firmware escrito em C.
Para tanto, parti das seguintes diretivas:
1 - Todo bloco terá a figura de retângulos. Poucos com as arestas adoçadas.
2 - Blocos contínuos não precisam de setas de ligação.
3 - Chamada às rotinas contém o nome em negrito.
4 - As rotinas contém o seu nome em retângulo preenchido de amarelo.
5 - Endereços de desvios emcontram-se nas setas que ligam os dois pontos.
6 - Endereços de desvios possuem uma ou duas letras, como abreviação da rotina, ou do programa, acrescido de um algarismo numérico de diferenciação. Isso evita repetição de endereços em outras rotinas.
7 - Quando a seta de ligação não puder ser traçada diretamente, atravessando os blocos, o endereço da fonte e do destino encontram-se em blocos retangulares e com as arestas adoçadas.
8 - Os blocos que envolvem questionamentos possuem saídas N (não), S (sim), 0 (zero), 1 (um), Ig0 (igual a zero) ou Dif0 (diferente de zero).
Seguem as imagens...
Segue um exemplo para microcontrolador PIC do fluxograma da rotina PreIdent (Preâmbulo Identificar) .....
MOR_AL