<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CLI profissional - MCU &amp; FPGA</title>
	<atom:link href="https://mcu.tec.br/tags/cli-profissional/feed/" rel="self" type="application/rss+xml" />
	<link>https://mcu.tec.br</link>
	<description>Microcontroladores &#38; FPGA</description>
	<lastBuildDate>Fri, 20 Feb 2026 12:25:07 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1</generator>

<image>
	<url>https://mcu.tec.br/wp-content/uploads/2025/02/Robo-para-o-site-MCU.tec_.br-512x512-1-150x150.png</url>
	<title>CLI profissional - MCU &amp; FPGA</title>
	<link>https://mcu.tec.br</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Tabela ASCII e VT100: Como Criar Logs Coloridos, Dashboards e ASCII Art no Terminal</title>
		<link>https://mcu.tec.br/microcontroladores/tabela-ascii-e-vt100-como-criar-logs-coloridos-dashboards-e-ascii-art-no-terminal/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tabela-ascii-e-vt100-como-criar-logs-coloridos-dashboards-e-ascii-art-no-terminal</link>
		
		<dc:creator><![CDATA[Carlos Delfino]]></dc:creator>
		<pubDate>Fri, 20 Feb 2026 12:22:40 +0000</pubDate>
				<category><![CDATA[microcontroladores]]></category>
		<category><![CDATA[ANSI escape codes]]></category>
		<category><![CDATA[ASCII art]]></category>
		<category><![CDATA[barra de progresso terminal]]></category>
		<category><![CDATA[box drawing Unicode]]></category>
		<category><![CDATA[C printf cores]]></category>
		<category><![CDATA[CLI profissional]]></category>
		<category><![CDATA[códigos de escape ANSI]]></category>
		<category><![CDATA[controle de cursor ANSI]]></category>
		<category><![CDATA[dashboard em terminal]]></category>
		<category><![CDATA[logs no console]]></category>
		<category><![CDATA[tabela ascii]]></category>
		<category><![CDATA[terminal colorido]]></category>
		<category><![CDATA[UART terminal serial]]></category>
		<category><![CDATA[VT100]]></category>
		<guid isPermaLink="false">https://mcu.tec.br/?p=1377</guid>

					<description><![CDATA[<p>Aprenda como utilizar a tabela ASCII e os códigos de escape VT100/ANSI para criar logs coloridos, organizados e profissionais no terminal. Este guia técnico explica desde os fundamentos da codificação ASCII até o uso avançado de sequências ANSI para controle de cores, posicionamento de cursor, limpeza de tela e construção de dashboards textuais dinâmicos. Descubra como implementar barras de progresso, painéis estruturados com caracteres Unicode, box drawing e ASCII art em aplicações C, sistemas embarcados via UART, ferramentas CLI e ambientes DevOps. Um conteúdo essencial para desenvolvedores que desejam elevar a qualidade visual e a eficiência diagnóstica de seus logs em consoles modernos.</p>
<p>The post <a href="https://mcu.tec.br/microcontroladores/tabela-ascii-e-vt100-como-criar-logs-coloridos-dashboards-e-ascii-art-no-terminal/">Tabela ASCII e VT100: Como Criar Logs Coloridos, Dashboards e ASCII Art no Terminal</a> first appeared on <a href="https://mcu.tec.br">MCU & FPGA</a>.</p>]]></description>
										<content:encoded><![CDATA[<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">Tabela ASCII e Terminais VT100</h3>


<div class="root-eb-toc-qe8iw wp-block-essential-blocks-table-of-contents"><div class="eb-parent-wrapper eb-parent-eb-toc-qe8iw "><div class="eb-toc-container eb-toc-qe8iw  eb-toc-is-not-sticky eb-toc-not-collapsible eb-toc-initially-not-collapsed eb-toc-scrollToTop style-1 list-style-none" data-scroll-top="false" data-scroll-top-icon="fas fa-angle-up" data-collapsible="false" data-sticky-hide-mobile="false" data-sticky="false" data-scroll-target="scroll_to_toc" data-copy-link="false" data-editor-type="" data-hide-desktop="false" data-hide-tab="false" data-hide-mobile="false" data-itemcollapsed="false" data-highlight-scroll="false"><div class="eb-toc-header"><h2 class="eb-toc-title">Table of Contents</h2></div><div class="eb-toc-wrapper " data-headers="[{&quot;level&quot;:3,&quot;content&quot;:&quot;Tabela ASCII e Terminais VT100&quot;,&quot;text&quot;:&quot;Tabela ASCII e Terminais VT100&quot;,&quot;link&quot;:&quot;tabela-ascii-e-terminais-vt100&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Como produzir logs ricos, coloridos e expressivos no console&quot;,&quot;text&quot;:&quot;Como produzir logs ricos, coloridos e expressivos no console&quot;,&quot;link&quot;:&quot;como-produzir-logs-ricos-coloridos-e-expressivos-no-console&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Introdu\u00e7\u00e3o&quot;,&quot;text&quot;:&quot;Introdu\u00e7\u00e3o&quot;,&quot;link&quot;:&quot;eb-table-content-2&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;Entendendo a Tabela ASCII&quot;,&quot;text&quot;:&quot;Entendendo a Tabela ASCII&quot;,&quot;link&quot;:&quot;entendendo-a-tabela-ascii&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;O que \u00e9 ASCII?&quot;,&quot;text&quot;:&quot;O que \u00e9 ASCII?&quot;,&quot;link&quot;:&quot;eb-table-content-4&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Estrutura da Tabela ASCII&quot;,&quot;text&quot;:&quot;Estrutura da Tabela ASCII&quot;,&quot;link&quot;:&quot;estrutura-da-tabela-ascii&quot;},{&quot;level&quot;:3,&quot;content&quot;:&quot;1. Caracteres de Controle (0\u201331 e 127)&quot;,&quot;text&quot;:&quot;1. Caracteres de Controle (0\u201331 e 127)&quot;,&quot;link&quot;:&quot;1-caracteres-de-controle-031-e-127&quot;},{&quot;level&quot;:3,&quot;content&quot;:&quot;2. Caracteres Imprim\u00edveis (32\u2013126)&quot;,&quot;text&quot;:&quot;2. Caracteres Imprim\u00edveis (32\u2013126)&quot;,&quot;link&quot;:&quot;eb-table-content-7&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;ASCII na pr\u00e1tica em C&quot;,&quot;text&quot;:&quot;ASCII na pr\u00e1tica em C&quot;,&quot;link&quot;:&quot;eb-table-content-8&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;ASCII como ferramenta estrat\u00e9gica para logs&quot;,&quot;text&quot;:&quot;ASCII como ferramenta estrat\u00e9gica para logs&quot;,&quot;link&quot;:&quot;eb-table-content-9&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Transi\u00e7\u00e3o para VT100&quot;,&quot;text&quot;:&quot;Transi\u00e7\u00e3o para VT100&quot;,&quot;link&quot;:&quot;eb-table-content-10&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;C\u00f3digos de Escape VT100 e Cores ANSI&quot;,&quot;text&quot;:&quot;C\u00f3digos de Escape VT100 e Cores ANSI&quot;,&quot;link&quot;:&quot;eb-table-content-11&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;1. Estrutura de uma Sequ\u00eancia ANSI&quot;,&quot;text&quot;:&quot;1. Estrutura de uma Sequ\u00eancia ANSI&quot;,&quot;link&quot;:&quot;eb-table-content-12&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;2. Cores ANSI B\u00e1sicas&quot;,&quot;text&quot;:&quot;2. Cores ANSI B\u00e1sicas&quot;,&quot;link&quot;:&quot;eb-table-content-13&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Cores do texto (foreground)&quot;,&quot;text&quot;:&quot;Cores do texto (foreground)&quot;,&quot;link&quot;:&quot;cores-do-texto-foreground&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Exemplo pr\u00e1tico em C&quot;,&quot;text&quot;:&quot;Exemplo pr\u00e1tico em C&quot;,&quot;link&quot;:&quot;eb-table-content-15&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;3. Cores de Fundo&quot;,&quot;text&quot;:&quot;3. Cores de Fundo&quot;,&quot;link&quot;:&quot;3-cores-de-fundo&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;4. Combina\u00e7\u00e3o de atributos&quot;,&quot;text&quot;:&quot;4. Combina\u00e7\u00e3o de atributos&quot;,&quot;link&quot;:&quot;eb-table-content-17&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;5. Logs Estruturados Profissionais&quot;,&quot;text&quot;:&quot;5. Logs Estruturados Profissionais&quot;,&quot;link&quot;:&quot;5-logs-estruturados-profissionais&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;6. Cores em 256 tons&quot;,&quot;text&quot;:&quot;6. Cores em 256 tons&quot;,&quot;link&quot;:&quot;6-cores-em-256-tons&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;7. Controle de Cursor&quot;,&quot;text&quot;:&quot;7. Controle de Cursor&quot;,&quot;link&quot;:&quot;7-controle-de-cursor&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;ASCII Art e Dashboards em Console&quot;,&quot;text&quot;:&quot;ASCII Art e Dashboards em Console&quot;,&quot;link&quot;:&quot;ascii-art-e-dashboards-em-console&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;1. Construindo um Mini Dashboard em Console&quot;,&quot;text&quot;:&quot;1. Construindo um Mini Dashboard em Console&quot;,&quot;link&quot;:&quot;1-construindo-um-mini-dashboard-em-console&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Conceito&quot;,&quot;text&quot;:&quot;Conceito&quot;,&quot;link&quot;:&quot;conceito&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Exemplo em C&quot;,&quot;text&quot;:&quot;Exemplo em C&quot;,&quot;link&quot;:&quot;exemplo-em-c&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;2. Barra de Progresso Din\u00e2mica&quot;,&quot;text&quot;:&quot;2. Barra de Progresso Din\u00e2mica&quot;,&quot;link&quot;:&quot;eb-table-content-25&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Conceito&quot;,&quot;text&quot;:&quot;Conceito&quot;,&quot;link&quot;:&quot;conceito&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Exemplo&quot;,&quot;text&quot;:&quot;Exemplo&quot;,&quot;link&quot;:&quot;exemplo&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;3. ASCII Art&quot;,&quot;text&quot;:&quot;3. ASCII Art&quot;,&quot;link&quot;:&quot;3-ascii-art&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Exemplo simples&quot;,&quot;text&quot;:&quot;Exemplo simples&quot;,&quot;link&quot;:&quot;exemplo-simples&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;4. Criando ASCII Art via C\u00f3digo&quot;,&quot;text&quot;:&quot;4. Criando ASCII Art via C\u00f3digo&quot;,&quot;link&quot;:&quot;eb-table-content-30&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;5. ASCII Art com Cores&quot;,&quot;text&quot;:&quot;5. ASCII Art com Cores&quot;,&quot;link&quot;:&quot;5-ascii-art-com-cores&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;6. Sites para Gerar ASCII Art&quot;,&quot;text&quot;:&quot;6. Sites para Gerar ASCII Art&quot;,&quot;link&quot;:&quot;6-sites-para-gerar-ascii-art&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;7. Dicas Profissionais para Logs Ricos&quot;,&quot;text&quot;:&quot;7. Dicas Profissionais para Logs Ricos&quot;,&quot;link&quot;:&quot;7-dicas-profissionais-para-logs-ricos&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;Unicode, Box Drawing, Pain\u00e9is Avan\u00e7ados e Conclus\u00e3o&quot;,&quot;text&quot;:&quot;Unicode, Box Drawing, Pain\u00e9is Avan\u00e7ados e Conclus\u00e3o&quot;,&quot;link&quot;:&quot;eb-table-content-34&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;1. ASCII vs Unicode no Terminal&quot;,&quot;text&quot;:&quot;1. ASCII vs Unicode no Terminal&quot;,&quot;link&quot;:&quot;1-ascii-vs-unicode-no-terminal&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;2. Box Drawing \u2014 Criando Tabelas Profissionais&quot;,&quot;text&quot;:&quot;2. Box Drawing \u2014 Criando Tabelas Profissionais&quot;,&quot;link&quot;:&quot;2-box-drawing-criando-tabelas-profissionais&quot;},{&quot;level&quot;:2,&quot;content&quot;:&quot;Exemplo em C&quot;,&quot;text&quot;:&quot;Exemplo em C&quot;,&quot;link&quot;:&quot;exemplo-em-c&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;3. Barra de Progresso com Blocos Unicode&quot;,&quot;text&quot;:&quot;3. Barra de Progresso com Blocos Unicode&quot;,&quot;link&quot;:&quot;3-barra-de-progresso-com-blocos-unicode&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;4. Painel Din\u00e2mico Estilo Monitor Industrial&quot;,&quot;text&quot;:&quot;4. Painel Din\u00e2mico Estilo Monitor Industrial&quot;,&quot;link&quot;:&quot;eb-table-content-39&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;5. Boas Pr\u00e1ticas Profissionais&quot;,&quot;text&quot;:&quot;5. Boas Pr\u00e1ticas Profissionais&quot;,&quot;link&quot;:&quot;eb-table-content-40&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;Conclus\u00e3o&quot;,&quot;text&quot;:&quot;Conclus\u00e3o&quot;,&quot;link&quot;:&quot;eb-table-content-41&quot;},{&quot;level&quot;:1,&quot;content&quot;:&quot;Refer\u00eancias&quot;,&quot;text&quot;:&quot;Refer\u00eancias&quot;,&quot;link&quot;:&quot;eb-table-content-42&quot;}]" data-visible="[true,true,true,true,true,true]" data-delete-headers="[{&quot;label&quot;:&quot;Tabela ASCII e Terminais VT100&quot;,&quot;value&quot;:&quot;tabela-ascii-e-terminais-vt100&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Como produzir logs ricos, coloridos e expressivos no console&quot;,&quot;value&quot;:&quot;como-produzir-logs-ricos-coloridos-e-expressivos-no-console&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Introdu\u00e7\u00e3o&quot;,&quot;value&quot;:&quot;introdu\u00e7\u00e3o&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Entendendo a Tabela ASCII&quot;,&quot;value&quot;:&quot;entendendo-a-tabela-ascii&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;O que \u00e9 ASCII?&quot;,&quot;value&quot;:&quot;o-que-\u00e9-ascii&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Estrutura da Tabela ASCII&quot;,&quot;value&quot;:&quot;estrutura-da-tabela-ascii&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;1. Caracteres de Controle (0\u201331 e 127)&quot;,&quot;value&quot;:&quot;1-caracteres-de-controle-031-e-127&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;2. Caracteres Imprim\u00edveis (32\u2013126)&quot;,&quot;value&quot;:&quot;2-caracteres-imprim\u00edveis-32126&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;ASCII na pr\u00e1tica em C&quot;,&quot;value&quot;:&quot;ascii-na-pr\u00e1tica-em-c&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;ASCII como ferramenta estrat\u00e9gica para logs&quot;,&quot;value&quot;:&quot;ascii-como-ferramenta-estrat\u00e9gica-para-logs&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Transi\u00e7\u00e3o para VT100&quot;,&quot;value&quot;:&quot;transi\u00e7\u00e3o-para-vt100&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;C\u00f3digos de Escape VT100 e Cores ANSI&quot;,&quot;value&quot;:&quot;c\u00f3digos-de-escape-vt100-e-cores-ansi&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;1. Estrutura de uma Sequ\u00eancia ANSI&quot;,&quot;value&quot;:&quot;1-estrutura-de-uma-sequ\u00eancia-ansi&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;2. Cores ANSI B\u00e1sicas&quot;,&quot;value&quot;:&quot;2-cores-ansi-b\u00e1sicas&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Cores do texto (foreground)&quot;,&quot;value&quot;:&quot;cores-do-texto-foreground&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Exemplo pr\u00e1tico em C&quot;,&quot;value&quot;:&quot;exemplo-pr\u00e1tico-em-c&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;3. Cores de Fundo&quot;,&quot;value&quot;:&quot;3-cores-de-fundo&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;4. Combina\u00e7\u00e3o de atributos&quot;,&quot;value&quot;:&quot;4-combina\u00e7\u00e3o-de-atributos&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;5. Logs Estruturados Profissionais&quot;,&quot;value&quot;:&quot;5-logs-estruturados-profissionais&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;6. Cores em 256 tons&quot;,&quot;value&quot;:&quot;6-cores-em-256-tons&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;7. Controle de Cursor&quot;,&quot;value&quot;:&quot;7-controle-de-cursor&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;ASCII Art e Dashboards em Console&quot;,&quot;value&quot;:&quot;ascii-art-e-dashboards-em-console&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;1. Construindo um Mini Dashboard em Console&quot;,&quot;value&quot;:&quot;1-construindo-um-mini-dashboard-em-console&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Conceito&quot;,&quot;value&quot;:&quot;conceito&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Exemplo em C&quot;,&quot;value&quot;:&quot;exemplo-em-c&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;2. Barra de Progresso Din\u00e2mica&quot;,&quot;value&quot;:&quot;2-barra-de-progresso-din\u00e2mica&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Conceito&quot;,&quot;value&quot;:&quot;conceito&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Exemplo&quot;,&quot;value&quot;:&quot;exemplo&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;3. ASCII Art&quot;,&quot;value&quot;:&quot;3-ascii-art&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Exemplo simples&quot;,&quot;value&quot;:&quot;exemplo-simples&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;4. Criando ASCII Art via C\u00f3digo&quot;,&quot;value&quot;:&quot;4-criando-ascii-art-via-c\u00f3digo&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;5. ASCII Art com Cores&quot;,&quot;value&quot;:&quot;5-ascii-art-com-cores&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;6. Sites para Gerar ASCII Art&quot;,&quot;value&quot;:&quot;6-sites-para-gerar-ascii-art&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;7. Dicas Profissionais para Logs Ricos&quot;,&quot;value&quot;:&quot;7-dicas-profissionais-para-logs-ricos&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Unicode, Box Drawing, Pain\u00e9is Avan\u00e7ados e Conclus\u00e3o&quot;,&quot;value&quot;:&quot;unicode-box-drawing-pain\u00e9is-avan\u00e7ados-e-conclus\u00e3o&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;1. ASCII vs Unicode no Terminal&quot;,&quot;value&quot;:&quot;1-ascii-vs-unicode-no-terminal&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;2. Box Drawing \u2014 Criando Tabelas Profissionais&quot;,&quot;value&quot;:&quot;2-box-drawing-criando-tabelas-profissionais&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Exemplo em C&quot;,&quot;value&quot;:&quot;exemplo-em-c&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;3. Barra de Progresso com Blocos Unicode&quot;,&quot;value&quot;:&quot;3-barra-de-progresso-com-blocos-unicode&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;4. Painel Din\u00e2mico Estilo Monitor Industrial&quot;,&quot;value&quot;:&quot;4-painel-din\u00e2mico-estilo-monitor-industrial&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;5. Boas Pr\u00e1ticas Profissionais&quot;,&quot;value&quot;:&quot;5-boas-pr\u00e1ticas-profissionais&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Conclus\u00e3o&quot;,&quot;value&quot;:&quot;conclus\u00e3o&quot;,&quot;isDelete&quot;:false},{&quot;label&quot;:&quot;Refer\u00eancias&quot;,&quot;value&quot;:&quot;refer\u00eancias&quot;,&quot;isDelete&quot;:false}]" data-smooth="true" data-top-offset=""><div class="eb-toc__list-wrap"><ul class="eb-toc__list"><li><a href="#tabela-ascii-e-terminais-vt100">Tabela ASCII e Terminais VT100</a><li><a href="#como-produzir-logs-ricos-coloridos-e-expressivos-no-console">Como produzir logs ricos, coloridos e expressivos no console</a><li><a href="#eb-table-content-2">Introdução</a><li><a href="#entendendo-a-tabela-ascii">Entendendo a Tabela ASCII</a><ul class="eb-toc__list"><li><a href="#eb-table-content-4">O que é ASCII?</a><li><a href="#estrutura-da-tabela-ascii">Estrutura da Tabela ASCII</a><ul class="eb-toc__list"><li><a href="#1-caracteres-de-controle-031-e-127">1. Caracteres de Controle (0–31 e 127)</a><li><a href="#eb-table-content-7">2. Caracteres Imprimíveis (32–126)</a></li></ul><li><a href="#eb-table-content-8">ASCII na prática em C</a><li><a href="#eb-table-content-9">ASCII como ferramenta estratégica para logs</a><li><a href="#eb-table-content-10">Transição para VT100</a></li></ul><li><a href="#eb-table-content-11">Códigos de Escape VT100 e Cores ANSI</a><ul class="eb-toc__list"><li><a href="#eb-table-content-12">1. Estrutura de uma Sequência ANSI</a></li></ul><li><a href="#eb-table-content-13">2. Cores ANSI Básicas</a><ul class="eb-toc__list"><li><a href="#cores-do-texto-foreground">Cores do texto (foreground)</a><li><a href="#eb-table-content-15">Exemplo prático em C</a></li></ul><li><a href="#3-cores-de-fundo">3. Cores de Fundo</a><li><a href="#eb-table-content-17">4. Combinação de atributos</a><li><a href="#5-logs-estruturados-profissionais">5. Logs Estruturados Profissionais</a><li><a href="#6-cores-em-256-tons">6. Cores em 256 tons</a><li><a href="#7-controle-de-cursor">7. Controle de Cursor</a><li><a href="#ascii-art-e-dashboards-em-console">ASCII Art e Dashboards em Console</a><li><a href="#1-construindo-um-mini-dashboard-em-console">1. Construindo um Mini Dashboard em Console</a><ul class="eb-toc__list"><li><a href="#conceito">Conceito</a><li><a href="#exemplo-em-c">Exemplo em C</a></li></ul><li><a href="#eb-table-content-25">2. Barra de Progresso Dinâmica</a><ul class="eb-toc__list"><li><a href="#conceito">Conceito</a><li><a href="#exemplo">Exemplo</a></li></ul><li><a href="#3-ascii-art">3. ASCII Art</a><ul class="eb-toc__list"><li><a href="#exemplo-simples">Exemplo simples</a></li></ul><li><a href="#eb-table-content-30">4. Criando ASCII Art via Código</a><li><a href="#5-ascii-art-com-cores">5. ASCII Art com Cores</a><li><a href="#6-sites-para-gerar-ascii-art">6. Sites para Gerar ASCII Art</a><li><a href="#7-dicas-profissionais-para-logs-ricos">7. Dicas Profissionais para Logs Ricos</a><li><a href="#eb-table-content-34">Unicode, Box Drawing, Painéis Avançados e Conclusão</a><li><a href="#1-ascii-vs-unicode-no-terminal">1. ASCII vs Unicode no Terminal</a><li><a href="#2-box-drawing-criando-tabelas-profissionais">2. Box Drawing — Criando Tabelas Profissionais</a><ul class="eb-toc__list"><li><a href="#exemplo-em-c">Exemplo em C</a></li></ul><li><a href="#3-barra-de-progresso-com-blocos-unicode">3. Barra de Progresso com Blocos Unicode</a><li><a href="#eb-table-content-39">4. Painel Dinâmico Estilo Monitor Industrial</a><li><a href="#eb-table-content-40">5. Boas Práticas Profissionais</a><li><a href="#eb-table-content-41">Conclusão</a><li><a href="#eb-table-content-42">Referências</a></ul></div></div></div></div></div>


<h2 class="wp-block-heading">Como produzir logs ricos, coloridos e expressivos no console</h2>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Introdução</h2>



<p class="wp-block-paragraph">Em sistemas embarcados, aplicações backend em Node.js, ferramentas CLI em C ou Python e até mesmo firmwares com saída serial via UART, o console ainda é uma das interfaces mais poderosas para diagnóstico e observabilidade. Muitos desenvolvedores subestimam o potencial do terminal, limitando-se a <code>printf("ok\n");</code> ou <code>console.log("erro");</code>, quando, na verdade, o console pode se tornar uma interface semigráfica altamente expressiva.</p>



<p class="wp-block-paragraph">A base dessa expressividade está na <strong>tabela ASCII</strong>, que define a representação binária dos caracteres, e nos <strong>códigos de controle ANSI/VT100</strong>, que permitem manipular cores, posicionamento de cursor, limpeza de tela e formatação textual. Quando combinados corretamente, esses recursos permitem criar logs profissionais, painéis interativos, indicadores de status e até mesmo ASCII art para interfaces embarcadas.</p>



<p class="wp-block-paragraph">Neste artigo, vamos explorar a tabela ASCII, entender como utilizá-la de forma estratégica em logs, aprender os códigos de escape do padrão VT100 e aplicar tudo isso na prática. Apresentarei o conteúdo em partes para análise progressiva.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">Entendendo a Tabela ASCII</h1>



<h2 class="wp-block-heading">O que é ASCII?</h2>



<p class="wp-block-paragraph">ASCII significa <strong>American Standard Code for Information Interchange</strong>. É uma tabela que mapeia números inteiros (0 a 127 na versão original) para caracteres.</p>



<p class="wp-block-paragraph">Ela define:</p>



<ul class="wp-block-list">
<li>Letras maiúsculas e minúsculas</li>



<li>Números</li>



<li>Pontuação</li>



<li>Símbolos especiais</li>



<li>Caracteres de controle</li>
</ul>



<p class="wp-block-paragraph">Cada caractere é representado por um valor de 7 bits.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Estrutura da Tabela ASCII</h2>



<p class="wp-block-paragraph">A tabela pode ser dividida em três blocos principais:</p>



<h3 class="wp-block-heading">1. Caracteres de Controle (0–31 e 127)</h3>



<p class="wp-block-paragraph">Esses não imprimem símbolos visíveis. Eles controlam dispositivos.</p>



<p class="wp-block-paragraph">Exemplos importantes:</p>



<ul class="wp-block-list">
<li>0 → NUL</li>



<li>7 → BEL (emite som)</li>



<li>8 → BS (backspace)</li>



<li>9 → TAB</li>



<li>10 → LF (line feed \n)</li>



<li>13 → CR (carriage return \r)</li>



<li>27 → ESC (escape) ← extremamente importante para VT100</li>
</ul>



<p class="wp-block-paragraph">Em sistemas embarcados, especialmente via UART, esses caracteres ainda são amplamente usados.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">2. Caracteres Imprimíveis (32–126)</h3>



<p class="wp-block-paragraph">Aqui temos o que realmente aparece na tela.</p>



<p class="wp-block-paragraph">Exemplos:</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Decimal</th><th>Hex</th><th>Caractere</th></tr></thead><tbody><tr><td>32</td><td>0x20</td><td>(espaço)</td></tr><tr><td>48</td><td>0x30</td><td>0</td></tr><tr><td>65</td><td>0x41</td><td>A</td></tr><tr><td>97</td><td>0x61</td><td>a</td></tr><tr><td>123</td><td>0x7B</td><td>{</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">No nível de firmware, entender esses valores é essencial quando se manipula buffers, protocolos, parsers e geração de logs compactos.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">ASCII na prática em C</h2>



<p class="wp-block-paragraph">Vamos observar como imprimir caracteres via código numérico:</p>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="Copy" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>#include &lt;stdio.h>

int main() {
    for (int i = 65; i &lt;= 90; i++) {
        printf("%c ", i);  // imprime A-Z
    }
    printf("\n");
    return 0;
}
</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9FF">#</span><span style="color: #D8DEE9">include</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">&lt;</span><span style="color: #D8DEE9">stdio</span><span style="color: #ECEFF4">.</span><span style="color: #D8DEE9">h</span><span style="color: #81A1C1">&gt;</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D8DEE9">int</span><span style="color: #D8DEE9FF"> </span><span style="color: #88C0D0">main</span><span style="color: #D8DEE9FF">() </span><span style="color: #ECEFF4">{</span></span>
<span class="line"><span style="color: #D8DEE9FF">    </span><span style="color: #81A1C1">for</span><span style="color: #D8DEE9FF"> (</span><span style="color: #D8DEE9">int</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">i</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">=</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">65</span><span style="color: #81A1C1">;</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">i</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">&lt;=</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">90</span><span style="color: #81A1C1">;</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">i</span><span style="color: #81A1C1">++</span><span style="color: #D8DEE9FF">) </span><span style="color: #ECEFF4">{</span></span>
<span class="line"><span style="color: #D8DEE9FF">        </span><span style="color: #88C0D0">printf</span><span style="color: #D8DEE9FF">(</span><span style="color: #ECEFF4">&quot;</span><span style="color: #A3BE8C">%c </span><span style="color: #ECEFF4">&quot;</span><span style="color: #ECEFF4">,</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">i</span><span style="color: #D8DEE9FF">)</span><span style="color: #81A1C1">;</span><span style="color: #D8DEE9FF">  </span><span style="color: #616E88">// imprime A-Z</span></span>
<span class="line"><span style="color: #D8DEE9FF">    </span><span style="color: #ECEFF4">}</span></span>
<span class="line"><span style="color: #D8DEE9FF">    </span><span style="color: #88C0D0">printf</span><span style="color: #D8DEE9FF">(</span><span style="color: #ECEFF4">&quot;</span><span style="color: #EBCB8B">\n</span><span style="color: #ECEFF4">&quot;</span><span style="color: #D8DEE9FF">)</span><span style="color: #81A1C1">;</span></span>
<span class="line"><span style="color: #D8DEE9FF">    </span><span style="color: #81A1C1">return</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">0</span><span style="color: #81A1C1">;</span></span>
<span class="line"><span style="color: #ECEFF4">}</span></span>
<span class="line"></span></code></pre></div>



<p class="wp-block-paragraph">Saída:</p>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="Copy" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">A</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">B</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">C</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">D</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">E</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">F</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">G</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">H</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">I</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">J</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">K</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">L</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">M</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">N</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">O</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">P</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">Q</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">R</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">S</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">T</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">U</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">V</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">W</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">X</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">Y</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">Z</span></span>
<span class="line"></span></code></pre></div>



<p class="wp-block-paragraph">Observe que <code>%c</code> interpreta o inteiro como código ASCII.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">ASCII como ferramenta estratégica para logs</h2>



<p class="wp-block-paragraph">Em sistemas embarcados, você pode usar ASCII para:</p>



<ul class="wp-block-list">
<li>Criar delimitadores visuais</li>



<li>Criar cabeçalhos formatados</li>



<li>Construir barras de progresso</li>



<li>Criar tabelas</li>



<li>Destacar estados do sistema</li>
</ul>



<p class="wp-block-paragraph">Exemplo simples:</p>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="Copy" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>printf("====================================\n");
printf("     SISTEMA INICIALIZADO           \n");
printf("====================================\n");
</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #88C0D0">printf</span><span style="color: #D8DEE9FF">(</span><span style="color: #ECEFF4">&quot;</span><span style="color: #A3BE8C">====================================</span><span style="color: #EBCB8B">\n</span><span style="color: #ECEFF4">&quot;</span><span style="color: #D8DEE9FF">)</span><span style="color: #81A1C1">;</span></span>
<span class="line"><span style="color: #88C0D0">printf</span><span style="color: #D8DEE9FF">(</span><span style="color: #ECEFF4">&quot;</span><span style="color: #A3BE8C">     SISTEMA INICIALIZADO           </span><span style="color: #EBCB8B">\n</span><span style="color: #ECEFF4">&quot;</span><span style="color: #D8DEE9FF">)</span><span style="color: #81A1C1">;</span></span>
<span class="line"><span style="color: #88C0D0">printf</span><span style="color: #D8DEE9FF">(</span><span style="color: #ECEFF4">&quot;</span><span style="color: #A3BE8C">====================================</span><span style="color: #EBCB8B">\n</span><span style="color: #ECEFF4">&quot;</span><span style="color: #D8DEE9FF">)</span><span style="color: #81A1C1">;</span></span>
<span class="line"></span></code></pre></div>



<p class="wp-block-paragraph">Isso já melhora drasticamente a legibilidade.</p>



<p class="wp-block-paragraph">Mas isso é apenas o começo.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Transição para VT100</h2>



<p class="wp-block-paragraph">O verdadeiro salto ocorre quando usamos o caractere:</p>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="Copy" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>ESC = 27 = 0x1B
</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">ESC</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">=</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">27</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">=</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">0x1B</span></span>
<span class="line"></span></code></pre></div>



<p class="wp-block-paragraph">Ele inicia uma <strong>sequência de escape ANSI/VT100</strong>, que permite:</p>



<ul class="wp-block-list">
<li>Mudar cor</li>



<li>Mover cursor</li>



<li>Limpar tela</li>



<li>Criar efeitos</li>
</ul><p>The post <a href="https://mcu.tec.br/microcontroladores/tabela-ascii-e-vt100-como-criar-logs-coloridos-dashboards-e-ascii-art-no-terminal/">Tabela ASCII e VT100: Como Criar Logs Coloridos, Dashboards e ASCII Art no Terminal</a> first appeared on <a href="https://mcu.tec.br">MCU & FPGA</a>.</p>]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1377</post-id>	</item>
	</channel>
</rss>
