WinAVR-20100110-install.exe

이거 깔고

 

AvrStudio419_730Setup.exe.

이거 깔고

https://fishpoint.tistory.com/460?category=491785

 

WinAVR을 쉽게 사용할 수 있게 만들어준것이다

사용법 아직모름 아두이노에서 데이터 추출 가능하게 하는건 맞는데 

알아봐야함

 

아는분 팁좀 주세요

블로그 이미지

Or71nH

,

 

ESP8266_AT_Instruction_Set_v0_22.pdf
1.01MB
at_cmd1.ino
0.00MB

/*
--------------------------------------------------
아두이노 우노 핀    ESP8266 Serial WIFI 모듈  핀
  3.3V              VCC, CH_PD
 D0(TX)             RX (레벨쉬프트 사용)
 D1(RX)             TX
 GND                GND
 ------------------------------------------------
시리얼 모니터 115200bps 설정, Toth NL & CR 설정 후 아래 명령 실행
AT+RST                       //restart
AT+UART_DEF=9600,8,1,0,0    
시리얼 모니터 9600pbs 설정 변경후  
AT+RST              //응답 확인
*/

void setup() {
  // put your setup code here, to run once:
//  Serial.begin(9600) ;
//  Serial.println("AT CMD TEST 1");
}

void loop() {
  // put your main code here, to run repeatedly:

}

처음에 설정해주고 그다음부턴 9600 보드레이트 들어가면된다

처음에는 아마도 115200 일것이다

 

 

 

 

at_cmd2.ino
0.00MB

 

/*
--------------------------------------------------
아두이노 우노 핀    ESP8266 Serial WIFI 모듈  핀
  3.3V              VCC, CH_PD
 D7(TX)             RX (레벨쉬프트 사용)
 D6(RX)             TX
 GND                GND
 ------------------------------------------------
//시리얼 모니터 115200 설정, Both NL & CR 설정 후 아래 명령 실행
AT+RST    ==>  응답확인 : 핀 연결 및 모듈 테스트 
*/

SoftwareSerial wifi(6, 7) ;  // RX, TX
void setup() {
  // put your setup code here, to run once:
  wifi.begin(9600) ;
  Serial.begin(115200) ;
//  Serial.println("AT CMD TEST 2");
}



void loop() {
  // put your main code here, to run repeatedly:
  if (Serial.available()) wifi.write(Serial.read()) ;
  if (wifi.available()) Serial.write(wifi.read()) ;
}

 보드레이트는 115200 으로 하면 된다

 

 

그리고 디지털  0 에 있던걸 7 에 1 에 있던걸 6에 꽃아줘야한다!!!!!!!!!!!!!!!

 

 

받으면

WebClient 예제를 만들어주고

와이파이만 바꿔주자

 

오오오ㅗ오오오

오옹오오오오오오오!!!!!

됫어

wifi_client.ino
0.00MB

/*
 WiFiEsp test: ClientTest
http://www.kccistc.net/
작성일 : 2019.12.17 
작성자 : IoT 임베디드 KSH
*/
#define DEBUG_WIFI
#define AP_SSID "smartmes"
#define AP_PASS "smartmes0"
#define SERVER_NAME "192.168.0.31"
#define SERVER_PORT 5000   

#define WIFITX 9  //9:TX -->ESP8266 RX
#define WIFIRX 10 //10:RX-->ESP8266 TX
           
#include "WiFiEsp.h"
#include "SoftwareSerial.h"

SoftwareSerial wifiSerial(WIFIRX, WIFITX); 
WiFiEspClient client;
 
void setup() {
  // put your setup code here, to run once:
    Serial.begin(115200); //DEBUG
    wifi_Setup();
}

void loop() {
  // put your main code here, to run repeatedly:
  while (client.available()) {
    char c = client.read();
    Serial.write(c);
  }
}
void wifi_Setup() {
  wifiSerial.begin(9600);
  wifi_Init();
  server_Connect();
}
void wifi_Init()
{
  do {
    WiFi.init(&wifiSerial);
    if (WiFi.status() == WL_NO_SHIELD) {
#ifdef DEBUG_WIFI    
      Serial.println("WiFi shield not present");
#endif 
    }
    else
      break;   
  }while(1);

#ifdef DEBUG_WIFI    
    Serial.print("Attempting to connect to WPA SSID: ");
    Serial.println(AP_SSID);
#endif     
    while(WiFi.begin(AP_SSID, AP_PASS) != WL_CONNECTED) {   
#ifdef DEBUG_WIFI  
      Serial.print("Attempting to connect to WPA SSID: ");
      Serial.println(AP_SSID);   
#endif   
    }
#ifdef DEBUG_WIFI      
  Serial.println("You're connected to the network");    
  printWifiStatus();
#endif 
}
int server_Connect()
{
#ifdef DEBUG_WIFI     
  Serial.println("Starting connection to server...");
#endif  

  if (client.connect(SERVER_NAME, SERVER_PORT)) {
#ifdef DEBUG_WIFI     
    Serial.println("Connected to server");
#endif   
  }
  else
  {
#ifdef DEBUG_WIFI      
     Serial.println("server connection failure");
#endif    
  } 
}
void printWifiStatus()
{
  // print the SSID of the network you're attached to
  Serial.print("SSID: ");
  Serial.println(WiFi.SSID());

  // print your WiFi shield's IP address
  IPAddress ip = WiFi.localIP();
  Serial.print("IP Address: ");
  Serial.println(ip);

  // print the received signal strength
  long rssi = WiFi.RSSI();
  Serial.print("Signal strength (RSSI):");
  Serial.print(rssi);
  Serial.println(" dBm");
}

J1C.exe
3.04MB

이건 서버 한번만들어주자

저거 해서 포트 만들어주고

내컴터 주소 처주고

열어주고

시작하면

음 잘감 ㅋㅋ

 

받는것도 해보자

  while (Serial.available()) {    //available 수신 값이 있어야 시작한다 아니면 실행 안함
    char c = Serial.read();
    client.write(c);
  }

ㅊ추가하면 보내기도 된다

블로그 이미지

Or71nH

,
#define PIN_CDS A0
#define PIN_LED 9

void setup() {
  // put your setup code here, to run once:
}

void loop() {
  // put your main code here, to run repeatedly:
  //  analogWrite(9, map(analogRead(A0), 0, 1023,0,255));// 이건 밑에거 묶어서 쓰는 코드

  int cds = analogRead(PIN_CDS) ; // 10bit res 1023까지밝기가가능
  int pwm8bit = map(cds, 0,1023,0,255); //받는건 0~1023 이거를 최소 0~~최대 255까지로 변환하라
  analogWrite(PIN_LED, pwm8bit);
}

2번째거 깔기

여기 들가면 됨

맨 밑에 저 DHT 설치됫음

이제 습도 센서인 

 

요놈 사용가능

습도 코드!!!

4에다가 Gnd 

3에다가 가운데

2에다가 마이너스

 

#include <DHT.h>
#define DHTTYPE DHT11

int pinGnd = 4;
int pinVcc = 3;
int pinDht = 2;

DHT dht(pinDht, DHTTYPE);

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  pinMode(pinVcc, OUTPUT);
  pinMode(pinGnd, OUTPUT);
  digitalWrite(pinVcc, HIGH);
  digitalWrite(pinGnd, LOW);

  dht.begin();
}

void loop() {
  // put your main code here, to run repeatedly:
  delay(2000);
  float fTemp = dht.readTemperature();
  float fHumi = dht.readHumidity();

  if(isnan(fTemp) || isnan(fHumi)) {
    Serial.println("Falled to read from DNT semsor!");
    return;
  }
  Serial.print("Temperature : ");
  Serial.print(fTemp);
  Serial.print("[C]\t ");
  Serial.print("Humidity: ");
  Serial.print(fHumi);
  Serial.print("%\n");    
  }

 

 

입김부니깐 올라감

블로그 이미지

Or71nH

,

됫다

코드

 

int ledPin = 10; //LED가 연결된 아두이노의 디지털 10번(D10)은 "ledpin"으로 정의
int inPin = 7; //디지털 버튼 7
int val;

void setup() {
  // put your setup code here, to run once:
    pinMode(ledPin, OUTPUT); // ledpin(D10)은 출력
    pinMode(inPin,INPUT); // inpin(D7)은 버튼
}

void loop() {
  // put your main code here, to run repeatedly:
    val = digitalRead(inPin); //val 버튼 입력 정의
    if( val == LOW)   //val 버튼 입력이 LOW이면
      digitalWrite(ledPin, LOW);  //LED 꺼짐
    else              // 아니면
      digitalWrite(ledP in, HIGH); //LED 켜짐
}

이제

선을 잘 뽑아준다

이리 만들면됨

번호는 상관없음

세로 줄만 잘맞추면됨

블로그 이미지

Or71nH

,

 

 

이렇게 적어주고

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  Serial.println("Hello World");
}

void loop() {
  // put your main code here, to run repeatedly:

  Serial.println("Hello World");
  delay(1000);
}

업로드

 

 

그리고

 

 

저거 누르면

 

 

실행이 된다

 

 

이제 LED 를 만들어보자

브레드 보드를 꺼네준다

10번이 긴거임니다!!!
긴거가 10

 

잘 써주고

 

 

int ledPin = 10; //LED가 연결된 아두이노의 디지털 10번(D10)은 "ledpin"으로 정의
void setup() {
  // put your setup code here, to run once:
    pinMode(ledPin, OUTPUT); // ledpin(D10)은 출력
}

void loop() {
  // put your main code here, to run repeatedly:
    digitalWrite(ledPin,HIGH); //ledpin(D10)에 HIGH의 디지털 출력
    delay(1000);

    digitalWrite(ledPin,LOW); //ledpin(D10)에 LOW의 디지털 츨력
    delay(1000);
}

아두이노 실행해보자

오오옷!!!!

블로그 이미지

Or71nH

,