Hi Sphere,
sorry but you misunderstood me. I meant that for livecode it's the same if you write 67 or 0x43.
So you can write
Code: Select all
write numToChar(0x43) to file tCom
or
but you'll obtain the same result.
A char for a computer is just a series of bit, so byte 67 is "C" is you want to interpret as a char, it is 67 is you want to read a bit value in decimal base, is 0x43 is you want to read as bit value as hexadecimal value, but in the end is always just this series of bit: 01000011
A
text editor just separates bit at piece of 8 bit each, so he shows the "01000011" sequence as "C". All serial port values are from 0 to 255, but these value are not all associated to visible char on screen, so if you try to see all chars from 0 to 255 you'll get this list:
0=
1=
2=
3=
4=
5=
6=
7=
8=
9=
10=
11=
12=
13=
14=
15=
16=
17=
18=
19=
20=
21=
22=
23=
24=
25=
26=
27=
28=
29=
30=
31=
32=
33=!
34="
35=#
36=$
37=%
38=&
39='
40=(
41=)
42=*
43=+
44=,
45=-
46=.
47=/
48=0
49=1
50=2
51=3
52=4
53=5
54=6
55=7
56=8
57=9
58=:
59=;
60=<
61==
62=>
63=?
64=@
65=A
66=B
67=C
68=D
69=E
70=F
71=G
72=H
73=I
74=J
75=K
76=L
77=M
78=N
79=O
80=P
81=Q
82=R
83=S
84=T
85=U
86=V
87=W
88=X
89=Y
90=Z
91=[
92=\
93=]
94=^
95=_
96=`
97=a
98=b
99=c
100=d
101=e
102=f
103=g
104=h
105=i
106=j
107=k
108=l
109=m
110=n
111=o
112=p
113=q
114=r
115=s
116=t
117=u
118=v
119=w
120=x
121=y
122=z
123={
124=|
125=}
126=~
127=
128=�
129=�
130=�
131=�
132=�
133=�
134=�
135=�
136=�
137=�
138=�
139=�
140=�
141=�
142=
143=
144=�
145=�
146=�
147=�
148=�
149=�
150=�
151=�
152=�
153=�
154=�
155=�
156=�
157=�
158=�
159=�
160=�
161=�
162=�
163=�
164=�
165=�
166=�
167=�
168=�
169=�
170=�
171=�
172=�
173=�
174=�
175=�
176=�
177=�
178=�
179=�
180=�
181=�
182=�
183=�
184=�
185=�
186=�
187=�
188=�
189=�
190=�
191=�
192=
193=
194=
195=
196=
197=
198=
199=
200=
201=
202=
203=
204=
205=
206=
207=
208=
209=
210=
211=
212=
213=
214=
215=
216=
217=
218=
219=
220=
221=
222=
223=
224=
225=
226=
227=
228=
229=
230=
231=
232=
233=
234=
235=
236=
237=
238=
239=
240=
241=
242=
243=
244=
245=
246=
247=
248=
249=
250=
251=
252=
253=
254=�
255=�
as you can see, many chars are not for screen.
An
hex editor separate bit as a text editor, but show you just byte value.
For example the string "Hello world" is shown as "0x68 0x65 0x6C 0x6C 0x6F 0x20 0x77 0x6F 0x72 0x6C 0x64".
For example the string "67" is shown as "0x36 0x37". (two values, char "6" and char "7")
The function
numToChar() assure you that you are sending correcting the bit to the serial port. Unfortunately human can't use the keyboard, because as you saw many chars are not on a human keyboard.
Just to show you better this idea, you wrote this code:
Code: Select all
write numToChar(0x43) to file tCom
write numToChar(0x55) to file tCom
write numToChar(0x01) to file tCom
but you could do the same task with:
Code: Select all
write "C" to file tCom
write "U" to file tCom
write numToChar(0x01) to file tCom
only the last char is not on a human keyboard, so you have to use numToChar() function.