printf 설정

https://www.plainy.co.kr/bbs/board.php?bo_table=stm32_lecture&wr_id=21


uart 인터럽트 설정

아래 사이트 참조

https://m.blog.naver.com/PostView.nhn?blogId=wararat&logNo=220722733855&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F

 

http://mul-ku.tistory.com/entry/STM32-UART-%EC%88%98%EC%8B%A0-%EC%9D%B8%ED%84%B0%EB%9F%BD%ED%8A%B8-%EC%82%AC%EC%9A%A9%EB%B2%95-%EB%B0%8F-%EA%B0%84%EB%8B%A8%ED%95%9C-%EC%98%88%EC%A0%9CHAL-DRIVER

 

'Embedded > STM32' 카테고리의 다른 글

printf 설정 / uart interrupt 설정  (0) 2017.12.29
Posted by 공놀이나하여보세

1. Open CV setup

http://www.pyimagesearch.com/2015/10/26/how-to-install-opencv-3-on-raspbian-jessie/


2. camera recognization

볼트레킹

http://www.pyimagesearch.com/2015/09/14/ball-tracking-with-opencv/

http://blog.naver.com/PostView.nhn?blogId=chandong83&logNo=220826500738&redirect=Dlog&widgetTypeCall=true


얼굴인식

http://blog.naver.com/PostView.nhn?blogId=chandong83&logNo=220829044388&categoryNo=29&parentCategoryNo=0&viewDate=&currentPage=1&postListTopCurrentPage=1&from=postView


3. 아두이노와 시리얼 통신

http://hinco.tistory.com/4

* etc

http://www.hardcopyworld.com/gnuboard5/bbs/board.php?bo_table=lecture_rpi&wr_id=2


http://webnautes.tistory.com/916

Posted by 공놀이나하여보세

http://www.basecamelectronics.com 

http://www.basecamelectronics.com/store/

https://forum.basecamelectronics.com/index.php?p=%2Fsearch&Search=beholder


http://netmedia.or.kr/xe/nm32b

http://cafe.naver.com/netmedia



http://www.teamrebeldesign.com/

http://www.ucam.co.kr/

http://www.auhobby.com/index.php/handheldgimbal/trd-handheld-ds1.html


후타바 s bus 조종기



'Embedded' 카테고리의 다른 글

짐벌 개발 사이트  (0) 2016.09.08
Posted by 공놀이나하여보세
nano ~/.bashrc


http://www.akeric.com/blog/?p=1976


Posted by 공놀이나하여보세

raspi-config에서 cui 부팅이 되도록 수정한다.


http://wooguy-linux.blogspot.kr/2014/08/blog-post_11.html


OS 환경설정 변경
환경 설정 파일인 '/etc/rc.local' 파일을 수정하여 자동으로 실행되도록 한다.











Posted by 공놀이나하여보세

기본적으로는 아래 블로그 참조

http://usn-pioneer.tistory.com/79


1. keil arm 설치

아래 주소에서 MDK-ARM 설치

https://www.keil.com/download/product/


2. sdk설치

sdk는 아래 주소에서

https://www.nordicsemi.com/eng/nordic/Products/nRF51-SDK/nRF518-SDK/46230

sdk는 아래 폴더에 설치됨(예제파일도 여기서 볼 수 있음)

C:\Keil_v5\ARM\Device\Nordic

 

3. nRFgo Studio 설치

이걸 설치하면 jlink 디버거도 다운 가능

https://www.nordicsemi.com/eng/Products/Bluetooth-R-low-energy/nRF51822


4. j link 디버거 구매 주소 - jlink와 호환 가능한 싼 모듈

http://www.devicemart.co.kr/33262

J Link 는 정품을 구매해야함

http://www.eleparts.co.kr/EPXBPBNC


5. 예제 실행 방법은 아래 주소

http://usn-pioneer.tistory.com/81

nRFgo Studio 를 이용하여 soft device를 설치해야 하는 것 같음



'Embedded > BLE/Beacon' 카테고리의 다른 글

[Nordic] NRF51822 개발환경 설정  (0) 2015.12.15
Posted by 공놀이나하여보세

본인은 Windows PC와 Ubuntu PC 2대를 사용 중으로, Windows에서 RDP 접속으로 Ubuntu를 개발용 PC로 활용하고 있다.

그런데 Ubuntu 14.04에서는 xrdp가 기본적으로는 동작하지 않는 문제가 있다. Windows에서 원격 접속하면 회색 화면에 마우스 커서만 표시될 뿐 그 다음 화면으로 넘어가지 않는다.

xrdp가 14.04에서 기본으로 설치되는 Desktop 환경을 지원하지 않기 때문이다. 

해결 방법은 여러가지 있겠지만, 가장 간단한 방법은 xrdp가 지원하는 Desktop 환경인 xfce4을 설치하는 것이다.

아래 순서대로 정리해 보았다. 

1. sudo apt-get install xrdp

  (여기까지만 수행하고 원격 접속해 보면 회색 화면만 보게 된다.)

2. sudo apt-get install xfce4

3. sudo nano /etc/xrdp/startwm.sh

. /etc/X11/Xsession를 삭제 또는 주석 처리(맨앞에 #추가)하고 아래와 같이 수정한다.

Ubuntu14.04에 Xsession이 없어서 생기는 문제라고 한다.

#!/bin/sh

if [ -r /etc/default/locale ]; then
  . /etc/default/locale
  export LANG LANGUAGE
fi

#. /etc/X11/Xsession
. /usr/bin/startxfce4

 

4. sudo /etc/init.d/xrdp restart



출처 : http://abydos.tistory.com/3

'Embedded > NVIDIA Jetson' 카테고리의 다른 글

xrdp 원격 접속 설정 (회색 화면 나올 때)  (0) 2015.11.28
nvidia jetson tk1 초기 설정법  (0) 2015.11.28
Posted by 공놀이나하여보세

nvidia jetson 초기 설정법


1. 로그인 아이디 / 비밀번호 : ubuntu/ubuntu

2. NVIDIA Installer 설치

- cd NVIDIA-INSTALLER

- sudo ./installer.sh

3. sudo reboot

4. 완료~!!




출처 동영상 

https://www.youtube.com/watch?v=ghqM8pzJZxg



'Embedded > NVIDIA Jetson' 카테고리의 다른 글

xrdp 원격 접속 설정 (회색 화면 나올 때)  (0) 2015.11.28
nvidia jetson tk1 초기 설정법  (0) 2015.11.28
Posted by 공놀이나하여보세

아래에 자세한 코드가 있음

출처 : http://stackoverflow.com/questions/25351488/intermittent-python-thread-error-main-thread-is-not-in-main-loop


from Tkinter import *
import tkFont
import os
import glob
import time
import threading
import Image 
import Queue


def update_temp(queue):
    """ Read the temp data. This runs in a background thread. """
    while True:
        #   28-000005c6ba08
        i = "28-000005c6ba08"
        base_dir = '/sys/bus/w1/devices/'
        device_folder = glob.glob(base_dir + i)[0]
        device_file = device_folder + '/w1_slave'

        tempread=round(read_temp(),1)

        # Pass the temp back to the main thread.
        queue.put(tempread)
        time.sleep(5)

class Gui(object):
    def __init__(self, queue):
        self.queue = queue

        #Make the window
        self.root = Tk() 
        self.root.wm_title("Home Management System")
        self.root.minsize(1440,1000)

        self.equipTemp = StringVar()   
        self.equipTemp1 = StringVar()
        self.equipTemp2 = StringVar()       

        self.customFont = tkFont.Font(family="Helvetica", size=16)

        #   1st floor Image
        img = Image.open("HOUSE-PLANS-01.png") 
        photo = ImageTk.PhotoImage(img)

        Label1=Label(self.root, image=photo)
        Label1.place(x=100, y=100)

        #   2nd floor
        img2 = Image.open("HOUSE-PLANS-02.png")
        photo2 = ImageTk.PhotoImage(img2)

        Label1=Label(self.root, image=photo2)
        Label1.place(x=600, y=100)

        #   Basement image
        img3 = Image.open("HOUSE-PLANS-03.png")
        photo3 = ImageTk.PhotoImage(img3)

        Label1=Label(self.root, image=photo3)
        Label1.place(x=100, y=500)

        #   Attic Image
        img4 = Image.open("HOUSE-PLANS-04.png")
        photo4 = ImageTk.PhotoImage(img4)

        Label1=Label(self.root, image=photo4)
        Label1.place(x=600, y=500)

        #   House Isometric Image
        img5 = Image.open("house-iso.png")
        photo5 = ImageTk.PhotoImage(img5)

        Label1=Label(self.root, image=photo5)
        Label1.place(x=1080, y=130)

        #Garage Temp Label
        Label2=Label(self.root, textvariable=self.equipTemp, width=6, justify=RIGHT, font=self.customFont)
        Label2.place(x=315, y=265)

        print "start monitoring and updating the GUI"

        # Schedule read_queue to run in the main thread in one second.
        self.root.after(1000, self.read_queue)

    def read_queue(self):
        """ Check for updated temp data"""
        try:
            temp = self.queue.get_nowait()
            self.equipTemp.set(temp)
        except Queue.Empty:
            # It's ok if there's no data to read.
            # We'll just check again later.
            pass
        # Schedule read_queue again in one second.
        self.root.after(1000, self.read_queue)

if __name__ == "__main__":
    queue = Queue.Queue()
    # Start background thread to get temp data
    t = threading.Thread(target=update_temp, args=(queue,))
    t.start()
    print "starting app"
    # Build GUI object
    gui = Gui(queue)
    # Start mainloop
    gui.root.mainloop()


Posted by 공놀이나하여보세

제이펍의 '라즈베리파이 시작하기' 라는 책에 라즈베리파이로 아두이노 구동을 위한 내용이 잘 정리 되어 있습니다.


책의 내용을 다 옮기긴 어렵겠지만 기본적인 것에 대해 말씀드려볼까 합니다.

저는 처음에 둘을 연결하려면 뭔가 선을 따줘야 할거라고 생각했습니다.

물론 제대로 된 통신을 하려면 SPI통신을 이용해야할 거라고 생각합니다.(아직 해보진 않았습니다만..)

하지만, 책을 보니 그냥 시리얼 통신을 이용했더군요.

게다가 시리얼 통신을 위해서 점퍼선을 연결할 필요도 없습니다.

그냥 USB케이블 하나를 연결하면 됩니다.



저는 귀찮아서 샤오미 배터리를 전원으로 쓰고 usb wifi동글로 무선 연결을 해두고 맥북에서 원격 접속으로 작업을 합니다.

여튼 이렇게 선 하나만 연결합니다.



sudo apt-get install arduino 

arduino IDE를 다운 받습니다.

마지막으로 IDE에 uart 출력을 c로 코딩합니다.

-> 버튼을 누르면 알아서 컴파일이 되고 아두이노로 다운로드하고 실행이 됩니다.


라즈베리파이에서 serial 입력을 받아 print하는 코드를 python으로 짭니다.

그리고 실행하면 위의 사진 처럼 아두이노가 보내는 데이터를 출력해줍니다.


간단하네요 ㅋㅋ


자세한 내용은 책을 참조하시거나 인터넷을 뒤져 보시길..


Posted by 공놀이나하여보세