사용 버전: Python 3.6.8 사용 프로그램: Atom 1.40.1 x64 파이썬 urllib.parse.quote()에 대해서 알아보겠습니다. 괄호 안에는 string, safe, encoding, errors 인자가 들어갑니다. urllib.parse.quote()는 아스키코드 형식이 아닌 글자를 URL 인코딩 시켜줍니다. String 인자에는 string, bytes 형식이 들어갑니다. String 형식. Bytes 형식 Safe 인자에는 URL encoding에서 제외할 문자를 넣습니다. 기본으로 '/'이 설정되어 있습니다. Encoding 인자에는 인코딩 이름이 들어갑니다. string에 들어가는 문자와 맞지 않으면 오류가 나옵니다. 기본적으로 'utf-8'이 들어갑니다. Error 인자에는 'strict', 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace', 'namereplace', 'surrogateescape', 'surrogatepass'가 들어갑니다. 기본적으로 strict가 설정되어 있습니다. unicode 오류를 알려줍니다. Ignore의 경우 오류는 무시하고, 변환할 수 있는 것만 변환합니다. Replace는 에러 글자를 '?'로 변환해줍니다. 그리고 quote(...
사용 버전 : Python 3.6.8 사용 프로그램 : Atom 1.35.1 x64 파이썬 bs4.SoupStrainer()에 대해서 알아보겠습니다. 괄호 안에는 태그(tag)가 들어갑니다. bs4.SoupStrainer()는 태그를 선택할 수 있고, bs4.BeautifulSoup4()의 'parse_only' 속성에 사용됩니다. <a> 태그만 보기. <head> 태그만 보기. <script> 태그만 보기. 위와 같이, 태그는 모두 선택할 수 있습니다. 끝. 카테고리: Python, bs4
사용 버전: Python 3.7.6, OpenCV 4.2.0 파이썬 OpenCV 빈 화면 만들기를 해보겠습니다. 검정 빈 화면을 만들기 위해서는 numpy가 필요합니다. img1의 경우는 color로 불러들었을 때를 위한 빈 화면이고, img2의 경우는 grayscale로 불러들었을 때의 빈 화면입니다. 끝. 카테고리: Python, cv2
사용 언어: Kotlin 1.7.10 사용 버전: Android Studio Chipmunk 2021.2.1 Patch 1 Android Minimum touch target size를 알아보겠습니다. 사용자의 사용성을 위해서 구글에서는 안드로이드 터치 영역 크기를 최소한 이 정도는 해야 한다고 권고하고 있습니다. https://support.google.com/accessibility/android/answer/7101858 바로 48dp x 48 dp 크기입니다. 해당 크기가 사용성을 고려했을 때 최소한의 크기입니다. 이것보다 크기가 작다면 경고를 볼 수 있습니다. 아래는 layout 파일에서 볼 수 있는 경고 창입니다. 현재 터치 영역의 크기가 30dp x 30dp이므로 이것을 48dp x 48dp로 만들라고 알려주고 있습니다. 끝. 카테고리: Android
사용 버전 : KiCad 5.1.0 kicad PCB 만들기에 대해서 알아보겠습니다. 'PCB Layout Editor'를 눌러줍니다. 만약 아래와 같은 알림 창이 뜬다면, 선택은 자유입니다. 내용은 그래픽 카드를 사용할 것인지, 말것인지 입니다. 쓰면 속도도 좋고, 부드러워진다고 설명하고 있군요. 다음과 같은 창이 뜹니다. 'Update PCB from schematic'을 눌러줍니다. 'Match Method'와 설정을 적절히 선택해줍니다.(저처럼 하셔도 됩니다.) 그리고 'Update PCB'를 눌러줍니다. 다음과 같이 마우스를 따라다니는, footprint가 생성됩니다. 적당한 곳에 클릭합니다. footprint 이동은 '키보드 M', footprint 회전은 '키보드 R'입니다. 'Hide board ratsnest'를 켜면, 전선이 연결되어야 할 가이드 선이 표시됩니다. 'Ctrl + 좌 클릭'은 선택된 패드에 연결될 부분만 밝게 표시합니다. 해제 방법은 빈 땅에 'Ctrl + 좌 클릭'하면 됩니다. 옆에 있는 '레이어'는 PCB의 어느 영역에 그릴 것인지를 선택할 수 있게 해줍니다. F.Cu는 PCB 윗부분 전선 B.Cu는 PCB 뒷부분 전선 F.Paste는 PCB 윗부분 SMT 접착제 B.Paste는 PCB 뒷부분 SMT 접착제 F.Mask는 PCB 윗부분 패드 B.Mask는 PCB 뒷부분 패드 Edge.Cuts는 PCB의 전체 모양 F.SilkS는 PCB 윗부분 하얀 선 또는 글자 B.SilkS는 PCB 뒷부분 하얀 선 또는 글자 전선을 그려봅시다. 'Route tracks'를 눌러줍니다. 레이어를 보시면, F.Cu에 화살표가 있으니, 전선은 F.Cu 레이어에 그려집니다...
사용 버전 : 5.1.0 kicad 만든 PCB 주문하기에 대해서 알아보겠습니다. 지금까지 만든 PCB를 주문 제작해보겠습니다. 'PCB Layout Editor'를 눌러줍니다. PCB 남는 부분에 구리를 채우는 과정입니다. 만약, 전선 이외의 PCB 부분을 비워두고 싶다면, 이 부분은 건너 뛰셔도 됩니다. F.Cu 레이어를 선택하고, 'Add filed zones'를 눌러줍니다. 눌러줍니다. 레이어를 선택하고, 네트를 선택합니다. 확인을 누릅니다. 그려줍니다. 다음은, B.Cu 부분으로 채울 겁니다. 자세히 보면, GND 패드가 덮입니다. 만약 이 부분의 전선 굵기를 변경하고 싶다면, 다음과 같이 합니다. Zone을 클릭합니다. '키보드 E'를 누릅니다. Thermal spoke width를 원하는 굵기로 변경합니다. 굵기가 변경된 것을 볼 수 있습니다. 만약 수정사항이 생겨, Zone을 다시 그려야 할 상황이 생기면, 키보드 'B'를 눌러주세요. Zone을 다시 그려줍니다. '플로트 (HPLG, Postscript 또는 Gerber 형식)'을 눌러줍니다. gerber 파일이 생성될 폴더를 선택하고, 필요한 레이어를 선택한 후, '플로트'를 누릅니다. 생성된 것을 확인할 수 있습니다. 'Generate Drill Files...'를 누릅니다. drill 파일이 생성될 위치, 설정 등을 선택하고, 'Generate Drill File'을 누릅니다. 완료되면, 닫기를 누릅니다. 'Save board'를 누르고 닫습니다. 생성된 파일입니다. ...
사용 버전: Android Studio 4.1.1 사용 언어: Kotlin 1.4.20 안드로이드 AVD Ram size change를 해보겠습니다. 안드로이드에는 AVD(Android Virtual Device)라는 가상 기기를 제공해 줍니다. 해당 가상 기기의 램 크기를 변경해보도록 하겠습니다. AVD Manager에 들어갑니다. 아래의 창이 나옵니다. 아래로 향한 화살표를 눌러 Show on Disk를 누릅니다. 폴더가 하나 열립니다. config.ini 파일을 찾아 메모장 파일로 엽니다. hw.ramSize를 변경합니다. 저는 3072로 변경했습니다. 저장합니다. 다시 AVD Manager로 돌아와서 연필 모양을 누릅니다. Show Advanced Settings를 누릅니다. RAM 영역을 보면, 아까 입력한 3072로 변경된 것을 확인할 수 있습니다. 끝. 카테고리: Android
사용 버전: Android Studio 4.1.1 사용 언어: Kotlin 1.4.20 안드로이드 Notification with Full Screen을 알아보겠습니다. 알람이나 전화 같은 경우 사용자에게 큰 화면으로 Notification을 보여줘야 합니다. 이때 사용하는 게, FullScreenIntent입니다. 기본 Notification이 필요합니다. https://shwoghk14.blogspot.com/2020/09/android-notification.html FullScreen으로 띄울 Activity를 하나 만듭니다. 저는 FullScreenNoonActivity로 만들었고 모습은 아래와 같습니다. 위의 Activity를 이용하여 NotificationCompat.Builder가 있는 곳에 fullScreenIntent를 만듭니다. setContentIntent는 설정할 필요 없습니다. setFullScreenIntent를 설정합니다. priority는 PRIORITY_HIGH가 필요합니다. 그리고 Android 10 이상의 경우 권한이 필요합니다. AndroidManifest.xml에 USE_FULL_SCREEN_INTENT를 추가합니다. 실행해봅시다. 분명 FullScreenIntent로 실행했음에도 Heads-up Notification이 나옵니다. 눌러봅시다. ...
사용 버전: Android Studio 4.0 사용 언어: Kotlin 1.3.72 안드로이드 Release Apk 만들기를 알아보겠습니다. Release Apk는 안드로이드 설치 파일로써, 다른 사람에게 공유하거나 Store에 올릴 때 사용합니다. build - Generate Signed Bundle / APK... 을 누릅니다. APK를 선택합니다. Next 클릭 Key가 없다면 Create new...를 누릅니다. 적당한 위치와 파일 이름을 ...
사용 버전 : 5.1.0 kicad 기존 회로도 수정 및 추가에 대해서 알아보겠습니다. 'Schematic Layout Editor'를 눌러줍니다. 아래의 화면이 나옵니다. '키보드 A'를 누릅니다. 우리가 추가한 소자가 보입니다. 적당한 위치에 놓습니다. 전원을 연결할 커넥터도 추가해줍니다. 적당한 위치에 놓습니다. 시멘트 저항을 지나는 LED 회로를 추가하겠습니다. LED를 복사합니다. '키보드 C' 이번엔 직접 전선 연결 말고, 레이블 기능을 사용해 보겠습니다. '키보드 L'을 누릅니다. 적당한 이름과 크기를 설정하고, 확인을 누릅니다. 다음과 같이 놔둡니다. '키보드 C'로 복사를 해서, 맞은편 LED에도 붙여줍시다. '키보드 R'로 회전 가능합니다. 'Label'기능은 같은 이름을 가진 것끼리 전선으로 연결해줍니다. 선이 복잡하게 있으면, 보기 힘들기 때문에 Label을 많이 사용합니다. 나머지 부분은 다음과 같이 똑같이 만들어주세요. 'Assign PCB footprints to schematic symbols'를 눌러줍니다. 'Annotate'를 누릅니다. 다음과 같은 창이 나옵니다. 'View selected footprint'를 누르면, footprint를 미리 볼 수 있습니다. 적당한 footprint를 설정해줍니다. 확인을 눌러줍니다. 'Perform electrical rules check'를 눌러줍니다. 'Run'을 누릅니다. 이상이 ...
댓글
댓글 쓰기
궁금한 점은 댓글 달아주세요.
Comment if you have any questions.