procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage('Hola mundo');
end;
end.
unit resistencias;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, CoolCtrls, Math, sSkinManager, sSkinProvider,
sLabel, sPanel, sButton, sTabControl, sScrollBox, sFrameBar;
type
TForm1 = class(TForm)
btn_black1: TCoolBtn;
banda1: TShape;
btn_brown1: TCoolBtn;
btn_red1: TCoolBtn;
btn_orange1: TCoolBtn;
boton_yellow1: TCoolBtn;
btn_green1: TCoolBtn;
btn_blue1: TCoolBtn;
btn_purple1: TCoolBtn;
btn_gray1: TCoolBtn;
btn_white1: TCoolBtn;
Shape1: TShape;
banda2: TShape;
banda3: TShape;
Shape4: TShape;
btn_black2: TCoolBtn;
btn_brown2: TCoolBtn;
btn_red2: TCoolBtn;
btn_orange2: TCoolBtn;
boton_yellow2: TCoolBtn;
btn_green2: TCoolBtn;
btn_blue2: TCoolBtn;
btn_purple2: TCoolBtn;
btn_gray2: TCoolBtn;
btn_white2: TCoolBtn;
btn_black3: TCoolBtn;
btn_brown3: TCoolBtn;
btn_red3: TCoolBtn;
btn_orange3: TCoolBtn;
boton_yellow3: TCoolBtn;
btn_green3: TCoolBtn;
btn_blue3: TCoolBtn;
btn_purple3: TCoolBtn;
btn_gray3: TCoolBtn;
btn_white3: TCoolBtn;
sSkinManager1: TsSkinManager;
sSkinProvider1: TsSkinProvider;
sPanel1: TsPanel;
sPanel2: TsPanel;
lbl_valor: TsLabel;
salir: TsButton;
sLabel1: TsLabel;
sPanel3: TsPanel;
sPanel4: TsPanel;
sPanel5: TsPanel;
sLabel2: TsLabel;
sLabel3: TsLabel;
sLabel4: TsLabel;
procedure salirClick(Sender: TObject);
procedure btn_black1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_brown1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_red1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_orange1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure boton_yellow1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_green1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_blue1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_purple1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_gray1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_white1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_black2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_brown2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_red2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_orange2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure boton_yellow2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_green2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_blue2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_purple2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_gray2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_white2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_brown3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_black3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_red3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_orange3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure boton_yellow3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_green3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_blue3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_purple3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_gray3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure btn_white3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
procedure FormCreate(Sender: TObject);
procedure calculaClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
vb1,vb2,vb3,vb3_aux:integer;
valor:Real;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.salirClick(Sender: TObject);
begin
close;
end;
//Banda 1
procedure TForm1.btn_black1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=clBlack;
vb1:=0;
end;
procedure TForm1.btn_brown1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,
Y: Integer);
begin
banda1.Brush.Color:=$00024480;
vb1:=10;
end;
procedure TForm1.btn_red1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=clRed;
vb1:=20;
end;
procedure TForm1.btn_orange1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=$000080FF;
vb1:=30;
end;
procedure TForm1.boton_yellow1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=clYellow;
vb1:=40;
end;
procedure TForm1.btn_green1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=clGreen;
vb1:=50;
end;
procedure TForm1.btn_blue1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=clNavy;
vb1:=60;
end;
procedure TForm1.btn_purple1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=clPurple;
vb1:=70;
end;
procedure TForm1.btn_gray1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=clGray;
vb1:=80;
end;
procedure TForm1.btn_white1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda1.Brush.Color:=clWhite;
vb1:=90;
end;
//Banda 2
procedure TForm1.btn_black2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=clBlack;
vb2:=0;
end;
procedure TForm1.btn_brown2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=$00024480;
vb2:=1;
end;
procedure TForm1.btn_red2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=clRed;
vb2:=2;
end;
procedure TForm1.btn_orange2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=$000080FF;
vb2:=3;
end;
procedure TForm1.boton_yellow2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=clYellow;
vb2:=4;
end;
procedure TForm1.btn_green2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=clGreen;
vb2:=5;
end;
procedure TForm1.btn_blue2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=clNavy;
vb2:=6;
end;
procedure TForm1.btn_purple2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=clPurple;
vb2:=7;
end;
procedure TForm1.btn_gray2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=clGray;
vb2:=8;
end;
procedure TForm1.btn_white2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda2.Brush.Color:=clWhite;
vb2:=9;
end;
//Banda 3
procedure TForm1.btn_black3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
Begin
banda3.Brush.Color:=clBlack;
vb3:=1;
vb3_aux:=0;
end;
procedure TForm1.btn_brown3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=$00024480;
vb3:=10;
vb3_aux:=0;
end;
procedure TForm1.btn_red3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=clRed;
vb3:=1;
vb3_aux:=1;
end;
procedure TForm1.btn_orange3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=$000080FF;
vb3:=10;
vb3_aux:=1
end;
procedure TForm1.boton_yellow3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=clYellow;
vb3:=100;
vb3_aux:=1;
end;
procedure TForm1.btn_green3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=clGreen;
vb3:=1;
vb3_aux:=2;
end;
procedure TForm1.btn_blue3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=clNavy;
vb3:=10;
vb3_aux:=2;
end;
procedure TForm1.btn_purple3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=clPurple;
vb3:=100;
vb3_aux:=2;
end;
procedure TForm1.btn_gray3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=clGray;
vb3:=1000;
vb3_aux:=2;
end;
procedure TForm1.btn_white3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
begin
banda3.Brush.Color:=clWhite;
vb3:=10000;
vb3_aux:=2;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
vb1:=1;
vb2:=0;
vb3:=1;
vb3_aux:=1;
lbl_valor.Caption:='1 '+ 'K'+char(234);
end;
procedure TForm1.calculaClick(Sender: TObject);
begin
valor:=(vb1+vb2)*vb3;
if (vb3_aux=1) then begin
lbl_valor.Caption:=FloatToStr(valor/10)+' K' + #$EA;
end else
if vb3_aux=2 then begin
lbl_valor.Caption:=FloatToStr(valor/10)+' M' +char(234);
end else
lbl_valor.Caption:=FloatToStr(valor)+' ' +#$EA;
end;
end.
1.- En mi compu se desplega bien el caracter Omega, pero en otras compus no. ¿Como puedo solucionarlo?.
Muy bien huichoman, muy bien. Te recuerdo que para las comunicaciones serie hay un juego de VCL freeware muy bueno, que son las Async Professional (APRO) que son las que yo uso y van de lujo.
La mejor forma de aprender Delphi es viendo ejemplos y modificándolos, tomando prestados bloques de código y mezclando unos con otros.
Ahora estoy en la oficina, cuando llegue a casa te pongo un ejemplo del RS485 en Delphi con las APro. :mrgreen:
Por cierto Diego ¿qué añadidura usas para esos forms tan chulos con barra de titulo negra como el de tu analizador lógico?
EDITADO X MODERADOR: ViTAL---> A ver si nos leemos las normas
property RS485Mode : Boolean
Default: False
Determines whether the RTS line should be raised or lowered automatically when transmitting data.
Set this property to True when using an RS-485 board or converter that uses the RTS line to enable the transmit line. In this mode, RTS will be raised whenever the program is transmitting data and lowered at all other times.
.
.
.
Because RS-485 mode requires control over the RTS line, the RTS property is set to False and CTS/RTS hardware flow control is disabled whenever RS485Mode is set to True.
unit Excom0;
interface
uses
WinTypes, WinProcs, SysUtils, Messages, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, AdPort, OoMisc;
type
TForm1 = class(TForm)
Test: TButton;
ApdComPort1: TApdComPort;
procedure TestClick(Sender: TObject);
procedure ApdComPort1TriggerAvail(CP: TObject; Count: Word);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.TestClick(Sender: TObject);
{TestClick button click - Send output}
begin
ApdComPort1.OutPut := '&&&&&&&';
end;
procedure TForm1.ApdComPort1TriggerAvail(CP: TObject; Count: Word);
{Event OnTriggerAvail - Example how OnTriggerAvail works}
var
I : Word;
C : Char;
S : String;
begin
S := '';
for I := 1 to Count do begin
C := ApdComPort1.GetChar;
case C of
#0..#31 : {Don't display} ;
else S := S + C;
end;
end;
ShowMessage('Got an OnTriggerAvail event for: ' + S);
end;
end.Lo que veo, es que al mandar el mensaje, no me activa la el pin RTS por lo que no se transmite.
Saludos... me agarró la tarde... me voy a volando que hoy comienzan mis clases de japonés... :-/
Ganbatte kudasai.
huichoman: el puente del que hablas es perfectamente factible. Y no es nignguna locura sino algo muy normal e interesante. :mrgreen:
Felicitaciones HUICHOMAN
Felicidades huichoman, grandes avances que estas haciendo :mrgreen:
:-/ :-/ :-/
Vas como un tren-bala. :D :D :D
P.D. Nunca he usado el TApdDataPacket pero sospecho que me va a quitar cierta problemática que tengo al recibir los strings a "trozos" en el TApdComport en el OnPortTriggerAvail y tener que componerlo antes de darlo por bueno. Tendré que investigarlo. :mrgreen:
unit rs485_1;
interface
uses
WinTypes, WinProcs, SysUtils, Messages, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, AdPort, OoMisc, WinSkinData, WinSkinStore,
ExtCtrls, Grids, AdPacket;
type
TForm1 = class(TForm)
ApdComPort1: TApdComPort;
SkinData1: TSkinData;
SkinStore1: TSkinStore;
enviar: TButton;
comandos: TRadioGroup;
ApdDataPacket1: TApdDataPacket;
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
procedure enviarClick(Sender: TObject);
procedure ApdDataPacket1StringPacket(Sender: TObject; Data: String);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
STX,ETX:Char;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
Skindata1.LoadFromCollection(skinstore1,0);
STX:=#2;
ETX:=#3;
end;
procedure TForm1.enviarClick(Sender: TObject);
var comando:char;
begin
Case comandos.ItemIndex of
0:comando:='/';
1:comando:='%';
2:comando:='#';
3:comando:='=';
4:comando:='$';
end;
ApdComPort1.OutPut :=STX+'1234'+comando+ETX;
end;
procedure TForm1.ApdDataPacket1StringPacket(Sender: TObject; Data: String);
begin
Caption:=data;
memo1.Lines.Add(data);
end;
end.
Adopto al TApdDataPacket como César hizo con Bruto, como hijo propio. Muchas gracias Huicho-man. :mrgreen: