MNote2
MNote2 – Salvamento de contexto

Estou escrevendo o salvamento de contexto do projeto MNote2.

No caso, o salvamento, permite saber ao retornar a aplicação, como e quais textos estavam abertos após a reabertura.

Como padrão, salvamento de contexto, sempre será uma classe Set(Nome do pai).

Exemplo Form: Main -> Contexto SetMain.pas

O Arquivo gerado será sempre set<Form>.

Blog Sem categoria
Descobrindo quem esta usando as portas TCP.

Por vezes nos deparamos com portas sendo utilizadas em nosso PC, e não sabemos de verdade quem usa oque.

Vou ensinar agora, como descobrir isso.

Se utilizarmos o comando pelo prompt do windows:

netstat -nao

Teremos a imagem a seguir:

execução do netstat -nao

Perceba que temos 5 informações:

  • Protocolo
  • Endereço local
  • Endereço Externo
  • Estado
  • PID

Neste contexto percebemos que o netstat mostra ao lado do ip:porta, ou seja, sempre mostra a porta do local usada.

A descrição LISTENING, indica que é um serviço que escuta a porta em questão.

Listar aplicações em execução

No linux o pid é muito conhecido e usado, porem no windows, é um pouco mais misterioso.

Iremos tratar, alguns pontos.

No windows quem quer listar os processos que estão em execução, o método mais fácil é o tasklist.

Para pegar apenas o processo correto utilize a seguinte sintaxe:

tasklist | grep -e " 4 "

Desta forma coletará apenas o nro do processo


Matando a aplicação, no windows

Para matar uma aplicação pela console no windows, use o comando tskill, conforme a sintaxe:

tskill <pid>

Segue exemplo:

Blog
Alguns comandos da NVIDIA

Já apresentei em posts anteriores a possibilidade de integração e leitura das informações da GPU NVIDIA.

Através da aplicação nvidia-smi, é possível realizar a leitura das diversas funcionalidades da api da nvidia.

Um exemplo de uso, é descobrir quantas placas de vídeo existem em seu desktop.

O comando a baixo permite isso:

nvidia-smi    --query-gpu=gpu_name, vbios_version --format=csv,noheader

Conforme vemos na imagem abaixo:


A simples adição do parametro -i [nro], permite selecionar qual o device que quer ler a informação.

nvidia-smi    -i 0 --query-gpu=gpu_name, vbios_version --format=csv,noheader  

Conforme figura abaixo:

Mais informações podem ser vistas no link abaixo:

https://developer.download.nvidia.com/compute/DCGM/docs/nvidia-smi-367.38.pdf

Relógio
Leitura de temperatura GPUs

A mudança mais recente na versão 2.3.9 do projeto relógio, esta em ler as informações das placas NVIDIA.

Permitindo a integração além dos modelos da placa de vídeo, como também a temperatura de ambas.

Outro recurso, bem interessante na nova versão é a possibilidade de monitoramento de temperatura, através de gráfico.

Informações de temperatura de forma gráfica

Relógio
Informações da GPU

Agora o projeto relógio permite ler a temperatura da placa de vídeo.

Nesta nova etapa, estamos adicionando informações chave da placa de vídeo.

Leitura de Temperatura da GPU

O código associado a leitura do GPU esta na unit funcoes.pas

function GetGPUTemperature: string;   

Esta função faz a integração com as GPUs da NVIDIA, através de lib da própria fabricante.

Blog CUDA Delphi Relógio Sem categoria
Ler Temperatura Placa de Video NVIDIA

Falaremos neste artigo, como obter a temperatura da placa de Vídeo (GPU) NVIDIA.

Abordaremos o procedimento mais simples de integração, e leitura das informações da placa de vídeo, integrando com Lazarus.

A placa de vídeo, hoje é requisito obrigatório para qualquer computador realmente robusto.

Placas de vídeo com grande capacidade, por vezes precisam ser monitoradas para evitar super aquecimento .

Atualmente projetos de CASEMOD não seriam realmente case mode, se não lerem estas informações.

Pensando nisso a NVIDIA, lançou um conjunto de ferramentas que auxiliam o desenvolvedor na obtenção de forma fácil e assertiva, na leitura das informações da GPU.

O NVIDIA System Management Interface é um utilitário, baseado no NVML (NVIDIA MANAGEMENT Library) que gerencia e monitora dispositivos NVIDIA.

Este utilitário tambem administra por pesquisas por estado de dispositivo GPU , atribuindo privilegios , permitindo administradores modificares o estado da GPU.

NVIDIA-smi é embarcado com o driver para linux do NVIDIA GPU , e windows 64bits (WIN7/2008).

O NVIDIA-smi pode fornecer informações em formato XML ou em arquivo texto simples.

Para maiores informações consulte a documentação:

nvidia-smi documentation.

O fragmento acima é uma tradução livre do site:

https://developer.nvidia.com/nvidia-system-management-interface

Integração com LAZARUS

O Componente TProcess , permite a integração de comandos através da console.

Segue o fragmento de código para analise.

function GetGPUTemperature: string;
var
cmd : TProcess;
AStringList: TStringList;
begin
cmd := TProcess.Create(nil);
// Cria o objeto TStringList.
AStringList := TStringList.Create;
cmd.CommandLine:='nvidia-smi -i 0 --format=csv,noheader --query-gpu=temperature.gpu';

cmd.Options := cmd.Options + [poWaitOnExit, poUsePipes];
cmd.Execute;
AStringList.LoadFromStream(cmd.Output);
result := trim(AStringList.Text);
AStringList.Free;
cmd.Free;
end;

Download

Documentação da API

https://docs.nvidia.com/deploy/nvml-api/index.html

Documentação nvidia-smi

http://developer.download.nvidia.com/compute/DCGM/docs/nvidia-smi-367.38.pdf

Download do CUDA Toolkit 3.2

https://developer.nvidia.com/cuda-toolkit-32-downloads

Caminho no pc após instalação:

C:\Program Files\NVIDIA Corporation\NVSMI

Dicas Sem categoria
Windows Modo de teste
Exemplo do windows em modo teste

Para tirar o windows do modo de teste, realize o seguinte procedimento. ankara escort çankaya escort ankara escort çankaya escort escort ankara çankaya escort escort bayan çankaya istanbul rus escort eryaman escort escort bayan ankara ankara escort kızılay escort istanbul escort ankara escort ankara rus escort escort çankaya ankara escort bayan istanbul rus Escort atasehir Escort beylikduzu Escort Ankara Escort malatya Escort kuşadası Escort gaziantep Escort izmir Escort

1 – Entre no CMD como modo administrador

Digite:

bcdedit -set TESTSIGNING OFF

Reinicie o computador.

Blog Dicas Projetos
Projeto caixinha de musica

O projeto da caixinha de musica, não se encontra em meus projetos mantidos, pois se trata de um pequeno projeto.

Caixinha de musica já decorada

O Projeto é mantido no git, através do seguinte repositório:

https://github.com/MarceloMaurin/Caixinha-de-Musica

Ele não possui caixa plástica criada, ele foi desenvolvido para uma apresentação na ONG Afago.

Caixinha de musica sem acabamento e pintura

Confecção da caixa

A caixa foi feita utilizando palitos de sorvete, colados com cola quente.

O display de LCD foi colado com cola quente.

Outra variação do projeto, agora sem o display de LCD

Lista de componentes

São componentes que devem ser comprados para este projeto:

  • Buzzer
  • Arduino Nano ou Uno
  • 2 x chave fim de curso pode ser shield ou chave normal
  • fonte 12v
  • sensor de temperatura termopar MAX6675 ou DHT22.
  • led RGB
  • LCD I2C (Opcional para primeiro projeto)

Ligações elétricas

Esquema elétrico da caixinha de musica

Projeto Caixinha Musica.ino

O projeto abaixo, referece a caixinha de musica dos vídeos, pois possui alem do max6675, tambem o LCD I2C.

https://github.com/MarceloMaurin/Caixinha-de-Musica/blob/master/caxinha_de_musica/caxinha_de_musica.ino

Ja para a caixinha da foto, recomendamos o fonte 2

https://github.com/MarceloMaurin/Caixinha-de-Musica/blob/master/caxinha_de_musica2/caxinha_de_musica2.ino

Onde usamos a conexão do speaker pinout 4.

Led Verde pinout A4 e A3

Chave fim de curso pinout A4, A3

Buzzer (speak) pinout 04

Pessoal, espero ter ajudado.

Blog
Gerador Eólico

O objetivo deste post é disponibilizar uma base imprimível para professores e estudantes. Permitindo que estes desenvolvam trabalhos escolares.

O Suporte de gerador Eólico permite fixar um pequeno motor DC, para efeito de gerador Eólico.

Para isso é necessário apenas imprimir o suporte, fixar o motor e soldar os fios.

E você terá um pequeno gerador eólico para apresentação de trabalhos escolares ou feiras de ciências.

Aqui você vê um exemplo do projeto acabado.

O projeto pode ser baixado gratuitamente no site:

https://grabcad.com/library/gerador-eolico-1

Dicas Lazarus Relógio Sem categoria
Lendo informações da BIOS

Neste artigo, explicarei como ler as informações da BIOS.

Existe um projeto, na minha opinião um dos poucos que realmente funciona.

https://github.com/RRUZ/tsmbios/blob/master/Common/uSMBIOS.pas

Este projeto, implementa uma camada, que permite ler as informações da BIOS do computador.

Com ela é possível acessar informações, como memória, temperatura, e tantas outras informações.

Um exemplo de uso, esta no projeto relógio, a função GetMemorySize lê a quantidade de memória disponível no seu PC.

function GetMemorySize : DWORD;
Var
SMBios : TSMBios;
LPhysicalMemArr : TPhysicalMemoryArrayInformation;
begin
SMBios:=TSMBios.Create;
try
if SMBios.HasPhysicalMemoryArrayInfo then
for LPhysicalMemArr in SMBios.PhysicalMemoryArrayInfo do
begin
if LPhysicalMemArr.RAWPhysicalMemoryArrayInformation^.MaximumCapacity<>$80000000 then
begin
result := LPhysicalMemArr.RAWPhysicalMemoryArrayInformation^.MaximumCapacity div 1024;
break;
end
else
begin
result :=LPhysicalMemArr.RAWPhysicalMemoryArrayInformation^.ExtendedMaximumCapacity div 1024;
break;
end;
end
else
result := 0;
finally
SMBios.Free;
end;
end;

Existem diversos exemplos de código nesta maravilhosa biblioteca, e vale a pena rever e estudar este código.

pt_BRPortuguese