Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?
19/05/2011 #1121


Yo creo que Step by step..

Al cerrar visual y cuando lo abramos denuevo leer primero la imformacion que esta en el pic osea las salidas y se muestre en la interfaz grafica y no resetea nada a noser que se modifique manualmente desde la intefaz.

estas utilizando el timer a 1ms para enviar los datos... eso te va a crear conflictos graves... quita ese timer... y lo que debes hacer es que cada que cambies algo o pierda el foco del objeto hagas el envio del dato al puerto...

digamos como utilizas el text utiliza el evento change o de preferencia el lostfocus ahi desecadenas la rutina que esta en timer...

en pocas palabras hazlo pero sin usar el timer... y lo vemos...
19/05/2011 #1122

Avatar de banistelrroy

hayyyyyyyy bueno lo que pasa que como les dige nose mucho de visual es casi menos que poco lo que se pense que al cerrar el programa y al volver abrir el programa comenzaba todas las salidas en cero y eso era lo que envia al pic por eso hace todos cero en en las salidas del pic bueno lo que pense esque la interfaz despues de cerrarce al volverla sea capaz de leer las salidas del pic y mostrarla y haci podemos cerrar y abrir sin modificar las salidas en pleno trabajo a noser que la habras y modifiquemos algo.........bueno lamentablemente no se mucho de visual
19/05/2011 #1123


bueno lamentablemente no se mucho de visual
Mmm.. por eso... yo tampoco se mucho pero algunas cosas si las he echo...

intentalo... y ahorita lo platicamos... no uses el timer.... lo estoy revizando mas a fondo y lo que te suguiero que utilices es el evento click del objeto image...
19/05/2011 #1124

Avatar de banistelrroy

ok bueno voy haber lo que pueda hacer si me ayudas le lo agradecere bueno ojala se pueda solucionar
19/05/2011 #1125


Checa esto...
(Todo lo puse en una sola carpeta)

Lo puse en una matriz de Objetos para ahorrar codigo... bue... analiza y comentamos...
pongo el codigo de VB aqui...

Código:
Option Explicit
Dim DatoSalida As String, B(8) As Integer

Private Sub Form_Load()
 MSComm1.PortOpen = True
 Text2.Text = "En Obras"
End Sub
Private Sub Form_Unload(Cancel As Integer)
    If MSComm1.PortOpen = True Then
        MSComm1.PortOpen = False
    End If
End Sub
Private Sub Image1_Click(Index As Integer)
    Dim I As Integer
    If B(Index) Then
        B(Index) = 0
        Shape1(Index).FillColor = &H40&
    Else
        B(Index) = 1
        Shape1(Index).FillColor = &HFF&
    End If
    DatoSalida = ""
    For I = 0 To 7
     DatoSalida = DatoSalida & B(I)
    Next I
    Text1.Text = DatoSalida
    DatoSalida = Chr$(BinADec(Val(DatoSalida)))
    MSComm1.Output = DatoSalida
End Sub
 
Public Function BinADec(Valbin As String) As Integer
Dim ValAn As Integer
Dim PosBin As Integer
ValAn = 0
PosBin = 1
Do
   If PosBin = (Len(Valbin) + 1) Then Exit Do
   If Right(Left(Valbin, PosBin), 1) = "1" Then
      ValAn = (ValAn + 0.5) * 2
   Else
      ValAn = ValAn * 2
   End If
   PosBin = PosBin + 1
Loop
BinADec = ValAn
End Function
Public Function DecABin(ValDec As Integer) As String
Dim Valdec2 As String
Dim Valdec1 As Integer
Dim res As Integer
Dim Bin As String
Valdec1 = ValDec
    Do
        If Valdec1 = 0 Then
            Exit Do
        End If
        res = Valdec1 Mod 2
        Bin = res
        Valdec2 = Bin + Valdec2
        Valdec1 = Int(Valdec1 / 2)
    Loop
If Len(Valdec2) < 9 Then Valdec2 = String$((8 - Len(Valdec2)), "0") + Valdec2
DecABin = Valdec2
End Function
y se me olvido quitar el objeto timer pero no lo estoy usando...
Archivos Adjuntos
Tipo de Archivo: rar Web On Ware Serial.rar (75,0 KB (Kilobytes), 96 visitas)
19/05/2011 #1126

Avatar de banistelrroy

bueno me voy engo clases a las 8 aqui en peru son las 7 voy haber lo que pusiste.......mi hermano gracias por todo si sulcionas lo subes haci a alguien tambien le servira de eso estoy seguro gracias espero m ayudes voy a tener que llevar un curso de visual jejejejej....estoy preocupado ya que lo presento el sabado......espero me ayuden....gracias lubeck
19/05/2011 #1127


Mmmm.. no creas que soy mala leche pero yo ya lo he hecho e incluso via internet... lo que intento yo es que tu le pienses un poco y yo te ayudo...
19/05/2011 #1128

Avatar de banistelrroy

bueno devuelta aqui ...lubeck vi el archivo bueno es elgo parecido a lo que se quiere conseguir lo que aun no se puede es que el abrir la interfaz lea las salidas del pic osea:

si tenemos D0,D2;D5 encendidos al cerrar la interfaz y al abrirla denuevo lea estos valores y lo muestre haci que si quiero prender D3 por ejemplo solo haga eso y lo demas quede como estubo no resetee todo denuevo.......

adjunto el archivo original: interfaz comunicacion

adjunto el archivo modificado por lubeck: Web On Ware Serial

lamentablemente no se visual por eso invoco al que me pueda ayudar espero puedan ayudarme gracias a lubeck por el interez ........
Archivos Adjuntos
Tipo de Archivo: rar interfaz comunicacion.rar (74,9 KB (Kilobytes), 100 visitas)
Tipo de Archivo: rar Web On Ware Serial.rar (75,0 KB (Kilobytes), 86 visitas)
20/05/2011 #1129


Lo que yo no alcanzo a entender es como los maestros piden cosas sin enseñar a hacerlas....

me cai que asi... hasta yo soy un p*t* maestro de esos....

P.D. Me dices que calificacion obtuve!!
Mira este...
Archivos Adjuntos
Tipo de Archivo: rar Web On Ware Serial.rar (81,6 KB (Kilobytes), 69 visitas)
20/05/2011 #1130

Avatar de Nano24

lubeck dijo: Ver Mensaje
Checa esto...
(Todo lo puse en una sola carpeta)

Lo puse en una matriz de Objetos para ahorrar codigo... bue... analiza y comentamos...
pongo el codigo de VB aqui...

Código:
Option Explicit
Dim DatoSalida As String, B(8) As Integer

Private Sub Form_Load()
 MSComm1.PortOpen = True
 Text2.Text = "En Obras"
End Sub
Private Sub Form_Unload(Cancel As Integer)
    If MSComm1.PortOpen = True Then
        MSComm1.PortOpen = False
    End If
End Sub
Private Sub Image1_Click(Index As Integer)
    Dim I As Integer
    If B(Index) Then
        B(Index) = 0
        Shape1(Index).FillColor = &H40&
    Else
        B(Index) = 1
        Shape1(Index).FillColor = &HFF&
    End If
    DatoSalida = ""
    For I = 0 To 7
     DatoSalida = DatoSalida & B(I)
    Next I
    Text1.Text = DatoSalida
    DatoSalida = Chr$(BinADec(Val(DatoSalida)))
    MSComm1.Output = DatoSalida
End Sub
 
Public Function BinADec(Valbin As String) As Integer
Dim ValAn As Integer
Dim PosBin As Integer
ValAn = 0
PosBin = 1
Do
   If PosBin = (Len(Valbin) + 1) Then Exit Do
   If Right(Left(Valbin, PosBin), 1) = "1" Then
      ValAn = (ValAn + 0.5) * 2
   Else
      ValAn = ValAn * 2
   End If
   PosBin = PosBin + 1
Loop
BinADec = ValAn
End Function
Public Function DecABin(ValDec As Integer) As String
Dim Valdec2 As String
Dim Valdec1 As Integer
Dim res As Integer
Dim Bin As String
Valdec1 = ValDec
    Do
        If Valdec1 = 0 Then
            Exit Do
        End If
        res = Valdec1 Mod 2
        Bin = res
        Valdec2 = Bin + Valdec2
        Valdec1 = Int(Valdec1 / 2)
    Loop
If Len(Valdec2) < 9 Then Valdec2 = String$((8 - Len(Valdec2)), "0") + Valdec2
DecABin = Valdec2
End Function
y se me olvido quitar el objeto timer pero no lo estoy usando...
Lubeck por favor necesito una ayuda tuya ya que te he visto manejar los temas de VB6, sabes encontre un programa en internet que detecta colores con una camara web, la cuestion es que yo le agregue un archivo wav que avisa con una voz cuando se a detectado el color, pero tengo un grandisimo problema y es que mientras se detecta el color el archivo wav se queda pegado osea no finaliza su reproduccion normalmente, que puedo hacer en ese caso, que me sugeririas, ya use el comando SLEEP y lo que hace es colgar el programa sin mas que decir aqui te dejo el archivo para que lo chequees, en el modulo bas llamado MatrizImagen esta un parte que dice:

'+++++++++++++++++++detecta el color rojo+++++++++++++++++++++++++++++++++++
'+++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++

If (Rojo - Tolerancia > Azul) And (Rojo - Tolerancia > Verde) Then

PlaySound App.Path & "\SOUNDS.wav" 'Aqui el comando que reproduce el sonido

n = n + 1
Rojo = 0
Verde = 200
Azul = 0
posX = posX + (ContadorX / 3 - 2) '+ posX
posY = posY + (234 - ContadorY) '+ posY

End If


Visual basic y puerto serie
20/05/2011 #1131


Mmm.. el commando playsound no es de VisualBasic... casi seguro es una Api , una vez que se ejecuta una API para controlarla tiene que ser de la API misma por lo que ningun comando de VB lo controlaria...
ya es un poco tarde por aca... si ves este post... mañana lo descargo y lo revizamos... a ver que podemos hacer...

saludos...
20/05/2011 #1132

Avatar de Nano24

lubeck dijo: Ver Mensaje
Mmm.. el commando playsound no es de VisualBasic... casi seguro es una Api , una vez que se ejecuta una API para controlarla tiene que ser de la API misma por lo que ningun comando de VB lo controlaria...
ya es un poco tarde por aca... si ves este post... mañana lo descargo y lo revizamos... a ver que podemos hacer...

saludos...
Ok te lo agradeceria mucho, yo nose mucho de VB6 bueno lubeck espero tu ayuda y gracias.
21/05/2011 #1133


Hola Nano...

Efectivamente es una API de Windows... la cual se llama desde esta instruccion

Código:
 
Public Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" _
    (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
lo estoy revizando pero a mi ejecuta el sonido y tarda mucho para activarse de nuevo... estoy analizandolo mas detalladamente...

A ver mira....

si te entiendo bien... creo la solucion seria utilizar una bandera para despues ejectuar la Api...

mas o menos a si....
(en azul los cambios)
Código:
Public Sub DetectaColores(Pic As PictureBox, Color As Long, Intensidad As Integer)
Dim BytesPerLine As Long
Dim WinDC As Long
Dim TmpDC As Long
Dim dl As Long
Dim mBmp As Long
Dim AntBmp As Long
Dim Addrs As Long
Dim ContadorX As Long
Dim ContadorY As Long
Dim lpBits() As Byte
Dim mSizeImage As Long
Dim Rojo As Long, Verde As Long, Azul As Long, Gris As Long
Dim M_BitmapInfo As BITMAPINFO24
Dim SA As SAFEARRAY2D
Dim posX, posY, n As Long
Dim postX, postY As String
Dim repeat As Long
Dim repetir As Integer
Dim Matris, Tolerancia
Dim colorD As Boolean
colorD = False
Tolerancia = Form1.HScroll1.Value
'Screen.MousePointer = 11
GetRGB Color, R, G, B
Pic = Pic 'solo para refrescar a la imagen original
Pic.ScaleMode = 3
Pic.AutoRedraw = True
BytesPerLine = ScanAlign(Pic.ScaleWidth * 3)
mSizeImage = BytesPerLine * Pic.ScaleHeight
With M_BitmapInfo.bmiHeader
.biSize = Len(M_BitmapInfo.bmiHeader)
.biWidth = Pic.ScaleWidth
.biHeight = Pic.ScaleHeight
.biPlanes = 1
.biBitCount = 24
.biCompression = BI_RGB
.biSizeImage = mSizeImage
End With
WinDC = GetDC(0)
TmpDC = CreateCompatibleDC(WinDC)
mBmp = CreateDIBSection(WinDC, M_BitmapInfo, DIB_RGB_COLORS, Addrs, 0, 0)
dl = ReleaseDC(0, WinDC)
With SA
.cbElements = 1
.cDims = 2
.Bounds(0).lLbound = 0
.Bounds(0).cElements = Pic.ScaleHeight
.Bounds(1).lLbound = 0
.Bounds(1).cElements = BytesPerLine
.pvData = Addrs
End With
CopyMemory ByVal VarPtrArray(lpBits), VarPtr(SA), 4
AntBmp = SelectObject(TmpDC, mBmp)
dl = BitBlt(TmpDC, 0, 0, Pic.ScaleWidth, Pic.ScaleHeight, Pic.hDC, 0, 0, SRCCOPY)
For ContadorY = 0 To Pic.ScaleHeight - 1
For ContadorX = 0 To (Pic.ScaleWidth * 3) - 1 Step 3
Rojo = lpBits(ContadorX + 2, ContadorY)
Verde = lpBits(ContadorX + 1, ContadorY)
Azul = lpBits(ContadorX, ContadorY)
'++++++++++++++++++++++detecta el color rojo+++++++++++++++++++++++++++++++++++
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
If (Rojo - Tolerancia > Azul) And (Rojo - Tolerancia > Verde) Then
n = n + 1
Rojo = 0
Verde = 200
Azul = 0
posX = posX + (ContadorX / 3 - 2) '+ posX
posY = posY + (234 - ContadorY) '+ posY
colorD = True
 
End If
'Form1.Text4 = Form1.Text4 & "(" & Rojo & "," & Verde & "," & Azul & ")" & "  "
'++++++++++++++++mezcla los colores del pixelll++++++++++++++++++++++++++++++++++
lpBits(ContadorX, ContadorY) = Azul '- Rojo / Intensidad + B / Intensidad
lpBits(ContadorX + 1, ContadorY) = Verde ' - Verde / Intensidad + G / Intensidad
lpBits(ContadorX + 2, ContadorY) = Rojo   '- Azul / Intensidad + R / Intensidad
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
Next ContadorX
Next ContadorY
CopyMemory ByVal VarPtrArray(lpBits), 0&, 4
dl = BitBlt(Pic.hDC, 0, 0, Pic.ScaleWidth, Pic.ScaleHeight, TmpDC, 0, 0, SRCCOPY)
dl = SelectObject(TmpDC, AntBmp)
dl = DeleteObject(mBmp)
dl = DeleteDC(TmpDC)
 
If colorD Then PlaySound App.Path & "\SOUNDS.wav"
 
'Form1.Text4.Text = Matris
'Screen.MousePointer = 0
'+++++++++++++++++dibujo el circulo sobre el color rojo derectado y promedio+++++++
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
On Error Resume Next
Form1.Text1.Text = CLng(posX / n)
Form1.Text2.Text = CLng(posY / n)
Form1.Text3.Text = n
With Form1.Picture2
Form1.Picture2.FillStyle = 7
Form1.Picture2.FillColor = RGB(0, 189, 0) 'verde
Form1.Picture2.Circle (posX / n, posY / n), _
                 30, _
                 vbRed
End With
Pic.Refresh
End Sub
comenta si entendi bien el problema....
21/05/2011 #1134

Avatar de Nano24

lubeck dijo: Ver Mensaje
Hola Nano...

Efectivamente es una API de Windows... la cual se llama desde esta instruccion

Código:
 
Public Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" _
    (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
lo estoy revizando pero a mi ejecuta el sonido y tarda mucho para activarse de nuevo... estoy analizandolo mas detalladamente...

A ver mira....

si te entiendo bien... creo la solucion seria utilizar una bandera para despues ejectuar la Api...

mas o menos a si....
(en azul los cambios)
Código:
Public Sub DetectaColores(Pic As PictureBox, Color As Long, Intensidad As Integer)
Dim BytesPerLine As Long
Dim WinDC As Long
Dim TmpDC As Long
Dim dl As Long
Dim mBmp As Long
Dim AntBmp As Long
Dim Addrs As Long
Dim ContadorX As Long
Dim ContadorY As Long
Dim lpBits() As Byte
Dim mSizeImage As Long
Dim Rojo As Long, Verde As Long, Azul As Long, Gris As Long
Dim M_BitmapInfo As BITMAPINFO24
Dim SA As SAFEARRAY2D
Dim posX, posY, n As Long
Dim postX, postY As String
Dim repeat As Long
Dim repetir As Integer
Dim Matris, Tolerancia
Dim colorD As Boolean
colorD = False
Tolerancia = Form1.HScroll1.Value
'Screen.MousePointer = 11
GetRGB Color, R, G, B
Pic = Pic 'solo para refrescar a la imagen original
Pic.ScaleMode = 3
Pic.AutoRedraw = True
BytesPerLine = ScanAlign(Pic.ScaleWidth * 3)
mSizeImage = BytesPerLine * Pic.ScaleHeight
With M_BitmapInfo.bmiHeader
.biSize = Len(M_BitmapInfo.bmiHeader)
.biWidth = Pic.ScaleWidth
.biHeight = Pic.ScaleHeight
.biPlanes = 1
.biBitCount = 24
.biCompression = BI_RGB
.biSizeImage = mSizeImage
End With
WinDC = GetDC(0)
TmpDC = CreateCompatibleDC(WinDC)
mBmp = CreateDIBSection(WinDC, M_BitmapInfo, DIB_RGB_COLORS, Addrs, 0, 0)
dl = ReleaseDC(0, WinDC)
With SA
.cbElements = 1
.cDims = 2
.Bounds(0).lLbound = 0
.Bounds(0).cElements = Pic.ScaleHeight
.Bounds(1).lLbound = 0
.Bounds(1).cElements = BytesPerLine
.pvData = Addrs
End With
CopyMemory ByVal VarPtrArray(lpBits), VarPtr(SA), 4
AntBmp = SelectObject(TmpDC, mBmp)
dl = BitBlt(TmpDC, 0, 0, Pic.ScaleWidth, Pic.ScaleHeight, Pic.hDC, 0, 0, SRCCOPY)
For ContadorY = 0 To Pic.ScaleHeight - 1
For ContadorX = 0 To (Pic.ScaleWidth * 3) - 1 Step 3
Rojo = lpBits(ContadorX + 2, ContadorY)
Verde = lpBits(ContadorX + 1, ContadorY)
Azul = lpBits(ContadorX, ContadorY)
'++++++++++++++++++++++detecta el color rojo+++++++++++++++++++++++++++++++++++
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
If (Rojo - Tolerancia > Azul) And (Rojo - Tolerancia > Verde) Then
n = n + 1
Rojo = 0
Verde = 200
Azul = 0
posX = posX + (ContadorX / 3 - 2) '+ posX
posY = posY + (234 - ContadorY) '+ posY
colorD = True
 
End If
'Form1.Text4 = Form1.Text4 & "(" & Rojo & "," & Verde & "," & Azul & ")" & "  "
'++++++++++++++++mezcla los colores del pixelll++++++++++++++++++++++++++++++++++
lpBits(ContadorX, ContadorY) = Azul '- Rojo / Intensidad + B / Intensidad
lpBits(ContadorX + 1, ContadorY) = Verde ' - Verde / Intensidad + G / Intensidad
lpBits(ContadorX + 2, ContadorY) = Rojo   '- Azul / Intensidad + R / Intensidad
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
Next ContadorX
Next ContadorY
CopyMemory ByVal VarPtrArray(lpBits), 0&, 4
dl = BitBlt(Pic.hDC, 0, 0, Pic.ScaleWidth, Pic.ScaleHeight, TmpDC, 0, 0, SRCCOPY)
dl = SelectObject(TmpDC, AntBmp)
dl = DeleteObject(mBmp)
dl = DeleteDC(TmpDC)
 
If colorD Then PlaySound App.Path & "\SOUNDS.wav"
 
'Form1.Text4.Text = Matris
'Screen.MousePointer = 0
'+++++++++++++++++dibujo el circulo sobre el color rojo derectado y promedio+++++++
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
On Error Resume Next
Form1.Text1.Text = CLng(posX / n)
Form1.Text2.Text = CLng(posY / n)
Form1.Text3.Text = n
With Form1.Picture2
Form1.Picture2.FillStyle = 7
Form1.Picture2.FillColor = RGB(0, 189, 0) 'verde
Form1.Picture2.Circle (posX / n, posY / n), _
                 30, _
                 vbRed
End With
Pic.Refresh
End Sub
comenta si entendi bien el problema....
Muchas gracias por tomarte la molestia de ayudarme lubeck, pero el problema aun persiste porque lo que deseo es que el api se reproduzca completamente cuando este presente el color, pero no pasa así pues se queda colgado cuando el color rojo esta presente y no termina la reproducción sino hasta que se le quita el color rojo. Ves ese es el detalle.
21/05/2011 #1135


Mm... me parece que no estas en linea....

creo que ahora si te voy entiendo... mira busca esto... ademas del cambio que te mencione antes...
Código:
Private Sub Command5_Click()
Timer1.Interval = 2000 ' aumenta el tiempo a que de chance de terminar la reproduccion...
Timer1.Enabled = True
End Sub
Y no entiendo si quieres que:
1- lo reproduzca indefinidamente mientras este el color,
2- que lo reproduzca una sola vez y hasta nueva deteccion lo reproduzca...

con estos cambios que te sugiero hace la primera opcion...

Listo... si lo que buscas es la segunda opcion prueba este anexo (con auto-aceleracion de deteccion ) y me comentas......
...
Archivos Adjuntos
Tipo de Archivo: rar Detectar Color Rojo VB6.rar (68,2 KB (Kilobytes), 111 visitas)
21/05/2011 #1136

Avatar de Nano24

lubeck dijo: Ver Mensaje
Mm... me parece que no estas en linea....

creo que ahora si te voy entiendo... mira busca esto... ademas del cambio que te mencione antes...
Código:
Private Sub Command5_Click()
Timer1.Interval = 2000 ' aumenta el tiempo a que de chance de terminar la reproduccion...
Timer1.Enabled = True
End Sub
Y no entiendo si quieres que:
1- lo reproduzca indefinidamente mientras este el color,
2- que lo reproduzca una sola vez y hasta nueva deteccion lo reproduzca...

con estos cambios que te sugiero hace la primera opcion...
Muchas gracias lubeck por tu ayuda, le aumente el interval a 2000 y ahi si reproduce por completo el archivo wav, gracias sos un genio
21/05/2011 #1137


lubeck dijo: Ver Mensaje
Pues yo creo que investigues primero un poco... lee los primeros post de este tema... y si te surguen dudas plantealas aqui e intentare(mos) responderte...
esta bien pero le hago una pregunta yo estuve mamipulando un programa llamado mplab y no entiwndo lagunas cosas por ejemplo los comandos que tienes no se suponen que tienen que ir en hex, bueno digo yo


saludos
21/05/2011 #1138


yo estuve mamipulando un programa llamado mplab
Ok... El Mlab es un programa para un lenguaje llamado ensamblador....

el tema o lenguaje que estamos viendo aqui es PicBasic no se cual sea la ultima version yo tengo la 2.46 y puedes usar un editor llamado microstudio yo tengo la version 3.0.

lo que hacen estos programas es que es un lenguaje que al compilarlo lo traduces a ensamblador y despues se genera el archivo Hex que es el que se graba al micro....

el ensamblador para hacer algo muy sencillo tienes que hacer un pograma kilometrico... que en basic con una linea lo pudieras hacer...

conforme vayas aprendiendo te daras cuenta las bondades de uno u otro...
y ademas existe otro muy bueno que es el C y digamos esta intermedio entre estos dos...

se entiende???
21/05/2011 #1139


lubeck dijo: Ver Mensaje
Ok... El Mlab es un programa para un lenguaje llamado ensamblador....

el tema o lenguaje que estamos viendo aqui es PicBasic no se cual sea la ultima version yo tengo la 2.46 y puedes usar un editor llamado microstudio yo tengo la version 3.0.

lo que hacen estos programas es que es un lenguaje que al compilarlo lo traduces a ensamblador y despues se genera el archivo Hex que es el que se graba al micro....

el ensamblador para hacer algo muy sencillo tienes que hacer un pograma kilometrico... que en basic con una linea lo pudieras hacer...

conforme vayas aprendiendo te daras cuenta las bondades de uno u otro...
y ademas existe otro muy bueno que es el C y digamos esta intermedio entre estos dos...

se entiende???
lo pasa de bonario a hex
21/05/2011 #1140


lo pasa de bonario a hex
Mmmm.. no exactamente... todos los lenguajes trabajan en binario....

Digamos que....

Basic un lenguaje facil de entender y manipular...
Ensamblador Un lenguage de PC
Hex el lenguage de los micros...

entonces tu haces tu progrmama en basic y la pc con su lenguaje ensamblador hace el lenguaje hex del micro-controlador...

igual te lo explico de una manera en que te formes una idea y conforme vayas viendo iras puliendo y formandote una idea mas real...ok..
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.