neuronix wrote:Je ne comprends pas. Sur la TI 83 PCE, si je fais :
- Code: Select all
Send "SET GREEN 1 ON"
Wait 0.5
Send "SET GREEN 1 OFF"
Qu'est ce que cela fait? Cela allume la diode? Et comment je fais leWait
?
La diode d'un périphérique branché en USB à la calculatrice, en l'occurence.
___________
Pour info, j'ai acheté un Arduino Uno cette après-midi, histoire de pouvoir tester les nouveaux APIs en Nspire-Lua, et effectivement, ça fonctionne - sur le logiciel ordinateur du moins.
Le code, pour les curieux:
Show/Hide spoilerAfficher/Masquer le spoiler
- Code: Select all
require "asi"
local msgBuffer = {};
function LOG(msg)
msgBuffer[#msgBuffer+1] = tostring(msg)
end
local asiStateCallback = function(state)
print("asiStateCallback:")
print("state = ", state)
if state == asi.ON then
startScanning()
end
end
local asiAddStateListenerErr = asi.addStateListener(asiStateCallback)
if (asiAddStateListenerErr) then
print("Error in asiAddStateListenerErr: ", asiAddStateListenerErr)
end
local portConnectionCallback = function(port, event)
print("portConnectionCallback:")
local portID, portState = port:getIdentifier(), port:getState()
print("portID="..portID.." ; portState="..portState)
print("event="..event)
end
local portFoundCallback = function(port)
print("portFoundCallback:")
local portID, portState = port:getIdentifier(), port:getState()
print("portID="..portID.." ; portState="..portState)
if portState == asi.DISCONNECTED then
local portConnectError = port:connect(portConnectionCallback)
if (portConnectError) then
print("Error in portConnectError: ", portConnectError)
end
end
end
function startScanning()
print("Starting scan")
local asiStartScanningErr = asi.startScanning(portFoundCallback)
if (asiStartScanningErr) then
print("Error in asiStartScanningErr: ", asiStartScanningErr)
end
platform.window:invalidate()
end
function on.paint(gc, x, y, w, h)
local i=0
for _,str in pairs(msgBuffer) do
gc:drawString(str, 5, i*20+5, "top")
i=i+1
end
gc:drawString("asi.isScanning() = " .. tostring(asi.isScanning()), 5, h-20, "top")
end
Sur calculatrice, Jim Bauwens a testé avec son Arduino Uno et Leonardo, et même si l'OS n'a pas râlé au niveau d'un périphérique incompatible (c'est déjà ça...), il ne se passe par contre pas grand chose... Peut-être que sur calculatrice, il faut que la board envoie des choses spécifiques pour établir la connexion... ? On en saura plus à la conférence T3 la semaine prochaine...
(Edit: j'ai rajouté un lien vers ce post à l'article en news)