nonkel_dw
nonkel dw
Hoi,
Ik ben bezig met een ENC28j60 en mikrobasic om een UDP server op te zetten.
De server zend al mooi alle UDP pakketten.
Hoe kan ik cijfers doorzenden zodat ze door de UDP terminal ook bekeken worden als cijfers en niet als ascii karakters?
Nu een UDP server dat alleen kan zenden ben je ook niet zoveel mee...
Ik was nu aan het proberen om de ontvangen UDP pakketten(die door de UDP terminal gestuurd zijn) te ontvangen.
Maar dit gaat niet zoals ik gedacht had, ik kom er niet uit.
Volgens de helpfile zou ik met deze instructie de buffer kunnen uitlezen:
buffer = SPI_Ethernet_getByte()
Maar er staat niets in de variable als ik bv 'a' stuur naar de server.
Wat moet er nog meer gebeuren of wat doe ik verkeerd?
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Ik heb de libraries van MikroBasic zelf nooit gebruikt. Heb je deze van yo2lio al eens geprobeerd? De versie voor de 18F97J60 werkte bij mij prima...
nonkel_dw
nonkel dw
Ik had het liever bij de libary van MikroBasic gehouden.
Heeft iemand nog suggesties om dit probleem te kunnen oplossen?
nonkel_dw
nonkel dw
Ja,
sub function SPI_Ethernet_UserUDP(dim byref remoteHost as byte[4],
dim remotePort, destPort, reqLength as word) as word
dim lenN, temp as byte ' my reply length
lenN = 0
while (template_msg[lenN] <> 0)
Usart_Write(template_msg[lenN])
inc(lenN)
wend
' send the request string to PC via Usart
temp = reqLength ' save request length
lenN = 0
' then puts the request string into the transmit buffer
while(reqLength <> 0)
dec(reqLength)
txt[lenN] = SPI_Ethernet_getByte() ' read received udp request from enc receive buffer
inc(lenN)
wend
txt[lenN] = 0
Usart_Write_Text(txt)
Usart_Write(13)
Usart_Write(10) ' display received request on lcd 2nd row
result = temp ' back to the library with the length of the UDP reply
end sub
Dit vb is zo een code om iets uit de ENC28J60 te halen.
Enkel probeer ik hier de werking van onder de knie te krijgen...
Ik stel me toch nog enkele vragen hierbij:
- als ik een UDP pakket stuur op welke geheugen plaats wordt dit dan gestokkeerd?.
- wat als ik wil testen of de start instructie is gestuurd?
- bestaat er de mogelijkheid om IP's van andere UDP serves in telezen en daar ook data naar te verzenden?