![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#2
|
|||
|
|||
|
Cita:
![]() Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
|
#3
|
|||
|
|||
|
Hola egostar.
La cosa es que ya tengo ese procedure en mi programita y trabaja bien.Cuando recibo una cadena de bytes y la comparo.Pero la estoy tratando de usar en otro boton, que hace otra cosa y se me complico el asunto. Me explico. Yo tengo un boton donde mando al serial port unos bytes(4) para ser mas claro y tengo que esperar un byte de retorno,compararlo y si es = al que espero , entonces mandar otros dos bytes y esperar otro bytes de regreso.El problema es que ese byte es un 01 y se repite tres veces en ese procedure del boton. A todo lo largo de mi programita estare empleando ComPort.ReadStr(Str, Count); puedo llenar de "else" el procedure pero el problema es que cuando tengo tres como en este caso.No en todos los 01 que espero tomare la misma decision, depende de cuando y porque me lo estan mandando. Un Saludo. |
|
#4
|
||||
|
||||
|
Hola
Lo mas seguro es que me equivoque pero pienso en voz alta. Por que no crear un procedimiento aislado al que se le llame desde este procedimiento y que contenga una variable que guarde ese valor. No conozco el ComPortRxChar, supongo que vendra de los chart o de algun componente determinado, pero si es necesario que envie el resultado con un dato string y otro integer, cual seria el problema de hacerlo con otro procedimiento o funcion?, asi no se necesitaría duplicar el procedimiento. Bueno, solo opino, ya sabéis, así aprendo. ![]() Saludos |
|
#5
|
|||
|
|||
|
No puedes usar mas de un OnRxChar puesto que solo tienes un punto de entrada al puerto serie. On RxChar revisa caracter a caracter lo que entra al puerto. Si necesitas que tu programa reaccione a un caracter o caracteres especiales deberas de programar una rutina para tratar cada uno de ellos.
Ahora bien si necesitas capturar alguna conjunto de caracteres o "paquetes" bien definidos entonces es mejor usar el ComDataPacket el cual te permitira colocar tantos como necesites para un solo puerto.
Si necesitas recibir el caracter 01 varias veces y bajo diversas circunstancias tal vez la mejor manera de tratarlo seria usando OnRxChar y llamar a un procedimiento que procese acorde a la circunstancia en que lo esperas. Esto es una sugerencia tal vez hay mejor manera; crear un Type por ejemplo llamado Modo y que tenga declarados los diversos modos que tu necesitas por ejemplo:
|
|
#6
|
|||
|
|||
|
Mas claro ni el agua,
![]() Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Cuantos Querys? | Nomad | Conexión con bases de datos | 13 | 24-01-2008 18:41:51 |
| Contar cuantos edits hay | lbidi | Varios | 4 | 04-10-2007 21:23:36 |
| cuantos querys???? | kryna | Conexión con bases de datos | 5 | 09-05-2005 20:50:13 |
| Cuantos son Colombianos???? | sercornejov | Humor | 7 | 28-12-2004 16:49:56 |
| Cuantos Campos | eduarcol | Tablas planas | 4 | 23-02-2004 17:07:02 |
|