Busan IT/Assembly2015. 10. 29. 09:43

==================================Outline====================================

task switching

----------------------------------------------------------------------------

지금까지 코딩한 내용을 다시 한번 훑어보자.

 

컴퓨터를 구동하기 위한 OS가 존재하고 그 OS안에서 동작하는 OS프로그램을 만든다.

 

//code 영역은 오직 읽기만 가능한 영역이다.

 

여러 가지 프로그램을 수행할 때 메모리가 모자라게 되면 하드드라이브를 사용하게 된다. 이 때 메모리에 멤버를 하나 더 선언하여 하드드라이브의 주소를 저장해주면 된다.

 



task switching.zip

 

 

반응형

'Busan IT > Assembly' 카테고리의 다른 글

Repeat Prefixes and More String Instructions  (0) 2015.11.02
String Operation  (0) 2015.10.29
메모리 출력 함수 'memory_display' 프로그램 실행 함수, ‘program_execute'  (0) 2015.10.24
LOAD함수 구현  (0) 2015.10.23
PE구조체  (0) 2015.10.22
Posted by newind2000
Busan IT/로봇제어2015. 10. 28. 15:56

==================================Outline====================================

푸쉬 버튼을 이용한 LED 제어

----------------------------------------------------------------------------

 

p/275 푸쉬 버튼을 이용한 LED 제어

 


 

 

WiringPi를 설치한 후 ‘gpio readall'를 입력한다.

 

LED를 토글 시키는 코드를 만들고 상태를 표시 시켜보자.

 

//스위치가 없기 때문에 점프 선을 이용하자.

 




계속 깜빡거린다.

 

꺼진 상태에서 input pinLOW를 연결하면 토글이 되지 않고 LED가 꺼진 상태를 유지하게 된다.



 

반응형
Posted by newind2000
Busan IT/로봇제어2015. 10. 26. 16:16

==================================Outline====================================

플라스크 기반의 GPIO 포트 제어

스마트홈

----------------------------------------------------------------------------

 

플라스크 기반의 GPIO 포트 제어

교재 p/211

 

웹의 링크를 통해 GPIO를 제어 하는 코딩을 해보자.

 

[leds.py]


 from flask import Flask, render_template, request
 import RPi.GPIO as GPIO

 app = Flask(__name__)

 GPIO.setmode(GPIO.BCM)

 leds = {
 23 : {'name' : 'RED LED''state' : GPIO.LOW},
 24 : {'name' : 'GREEN LED''state' : GPIO.LOW},
 25 : {'name' : 'BLUE LED''state' : GPIO.LOW},
 }

 for led in leds:
     GPIO.setup(led, GPIO.OUT)
     GPIO.output(led, GPIO.OUT)

 def getGpioState():
     for led in leds:
         leds[led]['state']=GPIO.input(led)

     return leds

 @app.route("/")
 def main():
     gpioState = {
         'leds' : getGpioState()
     }

     return render_template('main.html', **gpioState)

 @app.route("/<led>/<act>")
 def action(led, act):
     led = int(led)
     leds = getGpioState()
     dev = leds[led]['name']
     if act == "on":
         GPIO.output(led, GPIO.HIGH)
         msg = "Turned " + dev + " on. "
     elif act == "off":
         GPIO.output(led, GPIO.LOW)
         msg = "Turned " + dev + " off. "
     elif act == "toggle":
         GPIO.output(led, not GPIO.input(led))
         msg = "Toggled " + dev + "."
     else:
         msg = "Undefined action!"

     gpioState = {
         'msg' : msg,
         'leds' : getGpioState()
     }

     return render_template('main.html', **gpioState)

 if __name__ == "__main__":
     app.run(host='192.168.0.173', port=8888, debug=True)



                                                                            

 

[main.html]

 

 <html>
 <head>
     <title>RGB LED Status</title>
 </head>

 <body>
     <h1>RGB Led Status</h1>

     {% for led in leds %}
     <p>
     {{ leds[led].name }}
     {% if leds[led].state == true %}
         is currently on (<a href="/{{led}}/off">turn off</a>)
     {% else %}
         is currently off (<a href="/{{led}}/on">turn on</a>)
     {% endif %}
     </p>
     {% endfor %}

     {% if msg %}
     <h2>{{ msg }}</h2>
     {% endif %}

 </body>
 </html>

 

 

 

 

스마트홈

교재 p/221 

 

캐리어 주파수는 통신 내용을 전송하기 위해 만들어져 있는 주파수이다. 이 때 캐리어 주파수에 내용을 싣기 위한 작업을 변조라고 하고 변조된 내용을 해석하는 것을 복조라고 한다.


LonWork 



 

LonWork는 네트워크로 가전을 제어하는데 따로 랜선과 네트워크 수신 장치를 사용하지 않고 제어하는 방법을 고안해냈다.

 

 

 

반응형
Posted by newind2000