Commit 85915e9b authored by Jan Luc Tavares's avatar Jan Luc Tavares

atualizacoes menores e remocao da oficina de ESP que esta em repo novo

parent 284268e7
Local/
Anotacoes/.ipynb_checkpoints/
......@@ -257,9 +257,21 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 1,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[1, 2, 3], [1, 1.2, 'a']]\n",
"1\n",
"a\n",
"[1, 2, 3, 1, 1.2, 'a']\n",
"[1, 2, 3, 1, 1.2, 'a', 4]\n"
]
}
],
"source": [
"a = [1, 2, 3]\n",
"b = [1, 1.2, 'a']\n",
......@@ -273,6 +285,46 @@
"print (a)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"2 in a"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"a.index(2)"
]
},
{
"cell_type": "markdown",
"metadata": {},
......
/*
ESP8266 mDNS responder sample
This is an example of an HTTP server that is accessible
via http://esp8266.local URL thanks to mDNS responder.
Instructions:
- Update WiFi SSID and password as necessary.
- Flash the sketch to the ESP8266 board
- Install host software:
- For Linux, install Avahi (http://avahi.org/).
- For Windows, install Bonjour (http://www.apple.com/support/bonjour/).
- For Mac OSX and iOS support is built in through Bonjour already.
- Point your browser to http://esp8266.local, you should see a response.
*/
#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <WiFiClient.h>
#include <SoftwareSerial.h>
const char* ssid = "SSID";
const char* password = "senha";
String mensagem = "";
// TCP server at port 80 will respond to HTTP requests
WiFiServer server(80);
void setup(void)
{
Serial.begin(115200);
// Connect to WiFi network
WiFi.begin(ssid, password);
Serial.println("");
// Wait for connection
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
// Set up mDNS responder:
// - first argument is the domain name, in this example
// the fully-qualified domain name is "esp8266.local"
// - second argument is the IP address to advertise
// we send our IP address on the WiFi network
if (!MDNS.begin("esp8266")) {
Serial.println("Error setting up MDNS responder!");
while(1) {
delay(1000);
}
}
Serial.println("mDNS responder started");
// Start TCP (HTTP) server
server.begin();
Serial.println("TCP server started");
// Add service to MDNS-SD
MDNS.addService("http", "tcp", 80);
}
void loop(void)
{
// Check if a client has connected
WiFiClient client = server.available();
if (!client) {
return;
}
Serial.println("");
Serial.println("New client");
// Wait for data from client to become available
while(client.connected() && !client.available()){
delay(1);
}
// Read the first line of HTTP request
String req = client.readStringUntil('\r');
// First line of HTTP request looks like "GET /path HTTP/1.1"
// Retrieve the "/path" part by finding the spaces
int addr_start = req.indexOf(' ');
int addr_end = req.indexOf(' ', addr_start + 1);
if (addr_start == -1 || addr_end == -1) {
Serial.print("Invalid request: ");
Serial.println(req);
return;
}
req = req.substring(addr_start + 1, addr_end);
Serial.print("Request: ");
Serial.println(req);
client.flush();
String s;
if (req == "/")
{
IPAddress ip = WiFi.localIP();
String ipStr = String(ip[0]) + '.' + String(ip[1]) + '.' + String(ip[2]) + '.' + String(ip[3]);
s = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n<!DOCTYPE HTML>\r\n<html> Ola ha uma mensagem pra voce: <br>";
s += "</html>\r\n\r\n";
Serial.println("Sending 200");
unsigned long tempo_inicial = millis();
unsigned long delta_tempo = millis() - tempo_inicial;
if (delta_tempo < 10000){
Serial.println("Sending 201");
while (Serial.available() > 0) {
char ch = (char)Serial.read();
mensagem += ch;
}
delta_tempo = millis() - tempo_inicial;
mensagem += "<br>";
}
s += mensagem;
}
else
{
s = "HTTP/1.1 404 Not Found\r\n\r\n";
Serial.println("Sending 404");
}
client.print(s);
Serial.println("Done with client");
}
Oficina de Python + NodeMCU
Oficina de Introdução à Programação Usando Python
===========================
Oficina da [EITCHA](http://eitcha.org), voltada para pessoas que não sabem programar mas abrangendo tópicos interessantes até para quem tem algum conhecimento em programação.
Atualmente o conteúdo encontra-se dividido em três partes com previsão de 6h de oficina. A previsão será mais realista quando a oficina for ministrada algumas vezes, essa previsão inclui algumas pausas e momentos de exercícios.
Atualmente o conteúdo encontra-se dividido em duas partes com previsão de 4h de oficina.
O objetivo desse material é apresentar uma oficina completa e auto-contida, que não precise de muitos outros recursos para funcionar.
......@@ -13,6 +13,7 @@ O objetivo desse material é apresentar uma oficina completa e auto-contida, que
* No lugar da lxml você pode utilizar a [BeautifulSoup](https://wiki.python.org/moin/beautiful%20soup). Claro, a sintaxe vai ser diferente, mas é a mesma ideia.
_OBS: Para a parte II, é necessário acesso à internet._
Conteúdo
==============
......@@ -33,7 +34,7 @@ Programando em Python.
** Definindo funções.
* Mão-na-massa: Construindo meu primeiro programa em Python - FIZZBUZZ.
* Mão-na-massa: Construindo meu primeiro programa em Python - FIZZBUZZ (também chamado de "EITCHA LELE").
### Parte II 1h30 ###
......@@ -56,17 +57,6 @@ Toda a informação que podemos acessar em um site pode ser obtida também pelo
* Funcionamento básico da internet
### Parte III 2h ###
Usando o NodeMCU.
* O que é IOT?
* O que é o NodeMCU?
* Primeiros passos com o NodeMCU.
Exemplo: Irrigador + previsão do tempo, sua imaginação é o limite.
Saiba mais
============
......@@ -75,5 +65,3 @@ Saiba mais
* [O Guia do Mochileiro de Python](http://docs.python-guide.org/en/latest/) [em inglês].
* Aprenda mais sobre XPath na [W3Schools](https://www.w3schools.com/xml/xpath_intro.asp) [em inglês].
* Resumão da internet no [How Stuff Works](https://computer.howstuffworks.com/internet/basics/internet-infrastructure.htm) [Em inglês].
* Aprenda a controlar o ESP8266 com a IDE do Arduino [aqui](https://github.com/esp8266/Arduino) [em inglês].
* Projeto 1 baseado nos trabalhos do [Leonardo](http://cta.if.ufrgs.br/issues/281) [em português].
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment