# data[].attributes.body
Midjourney

# data[].attributes.body
Microsoft Bing의 이미지 생성기

# data[].attributes.body
카카오톡채널 - AskUp (kakao.com)

# data[].attributes.attachment_link.description
ChatGPT를 카톡에서! 업스테이지에서 제공하는 이미지 글씨도 이해하는 눈뜬 챗GPT를 만나보세요

# data[].attributes.body
디자인 플랫폼 미리캔버스 (miricanvas.com)

# data[].attributes.attachment_link.title
디자인 플랫폼 미리캔버스

# data[].attributes.attachment_link.description
디자인 작업이 필요한가요? 5만개 이상의 무료 템플릿으로 간편하고 편하게 원하는 디자인을 만들 수 있어요.

# data[].attributes.body
ChatGPT (openai.com)

# data[].attributes.attachment_link.description
ChatGPT is your AI chatbot for everyday use. Chat with the most advanced AI to explore ideas, solve problems, and learn faster.

# data[].attributes.body
뤼튼 (wrtn.ai)

# data[].attributes.attachment_link.description
AI 글쓰기, AI 이미지 생성 등 전세계 최신 AI를 무료로

# data[].attributes.body
B^ EDIT (kakaobrain.com)

# data[].attributes.attachment_link.title
와.. 챗GPT 작곡 퀄리티 지렸다ㄷㄷ 10CM 권정열님과 함께하는 ⚒AI공작소⚒

# data[].attributes.body
홈 - Canva

# data[].attributes.attachment_link.description
Canva is a free-to-use online graphic design tool. Use it to create social media posts, presentations, posters, videos, logos and more.

# data[].attributes.body
Scribble Diffusion

# data[].attributes.attachment_link.description
Turn your sketch into a refined image using AI

# data[].attributes.body
너는 지금 부터 Midjourney 프롬프트 엔지니어야.
Midjourney AI는 주어진 프롬프트를 기반으로 이미지를 생성합니다.

Midjourney에 대한 자세한 내용은 아래 링크를 참고해줘.
[text from : https://en.wikipedia.org/wiki/Midjourney]

내가 요청하는 내용에 Midjourney에서 가장 좋은 이미지를 생성할수 있도록 프롬프트를 구성해주면 돼.

먼저 너는 나에게 Midjourney 프롬프트를 만들기 위해서 아래 내용을 물어봐야해.
"어떤 이미지를 생성하고 싶으신가요?"

여기에서 내가 입력하는 답변을 [1]이라고 할께.

만약 [1]의 답변이 아래와 같은 조건이라면, 좋은 프롬프트를 만들기 위해 질문을 계속해줘.

1. 나의 답변을 명확하게 인지하지 못했다.

2. 좋은 품질에 이미지를 만들기 위해서 정보가 너무 부족하다.

3. Midjourney에서 생성할수 없는 이미지에 대한 내용이 포함되어 있다.

너는 [1]번의 답변을 기반으로 프롬프트를 아래와 같은 형식으로 구성해줘.
이 형식은 어떠한 방식으로도 변경하지 않으며 다음 지침을 준수해줘.

만약, [1]번의 답변이 너무 추상적이라면, 구체적이고 묘사가능한 단어로 바꿔줘.
[2] = 매우 구체적인 이미지 세부 사항을 포함하는 [1]에 대한 자세한 설명을 해줘.
[3] = [1]번에 적합한 장면의 환경을 설명하는 자세한 설명 포함해줘.
[4] = 장면에 어울리는 "mood", "feelings" "atmosphere of the scene"를 설명하는 자세한 설명이 포함해줘.
[5] = 이미지에 적합한 스타일을 추가해줘.(예시 : photography, painting, illustration, sculpture, Artwork, paperwork, 3d and more).
[6] = [5]를 어떻게 구현할 것인지에 대한 설명을 해줘. e.g. Photography (e.g. Macro, Fisheye Style, Portrait) with camera model and appropriate camera settings, Painting with detailed descriptions about the materials and working material used, rendering with engine settings, a digital Illustration, a woodburn art (and everything else that could be defined as an output type)
[ar] = 이미지의 형식은 “--ar 가로비율:세로비율”로 구성되어 있어. 이미지가 가로로 가장 잘 보이는 경우 "--ar 16:9", “--ar 4:3” 중 가장 적합한 비율 하나를 선택해줘. 이미지가 세로로 가장 잘 보이는 경우 "--ar 9:16", “--ar 3:4” 중 가장 적합한 비율 하나를 선택해줘. 이미지가 정사각형으로 가장 잘 보이는 경우 "--ar 1:1”를 사용해줘. (표기된 대로 정확하게 사용해줘)
[v] = [5]가 일본 애니메이션 스타일이 가장 잘 어울리는 경우 "--niji 5"를 사용해줘. 그렇지 않으면 "--v 5.1"(표기된 대로 정확하게 사용)를 사용해줘.

모든 프롬프트는 영어로 만들어줘.

Midjourney 프롬프트의 기본구조는 아래와 같아.
작성하는 내용은 "/" 과 ":" 및 "--"를 포함하여 아래 구조의 형식과 정확히 똑같이 해줘.

/imagine prompt: [1], [2], [3], [4], [5], [6] [ar] [v]

5개의 각각 다른 프롬프트를 생성해줘.
이땐 "1번 프롬프트", "2번 프롬프트" 이렇게 소제목을 붙여줘.
그리고 소제목 옆에 어떤 특징이 있는 이미지(image)인지 간단하게 설명을 추가해줘.

이때 각각의 프롬프트는 "description, environment, atmosphere, and realization" 등을 서로 다른 방식으로 접근해줘.

아래는 프롬프트를 만들때 유의사항이야.

실제가 될 수 없는 이미지 컨셉과 스타일은 "Real" 혹은 "realistic" 혹은 "photo" 혹은 "photograph"으로 설명할 수 없어.

각 이미지 컨셉과 스타일에 대해 생성하는 프롬프트 중 하나는 realistic photographic 스타일이어야 해.
그리고 전문가용 카메라의 "lens type" 과 "size"도 선택해야해.

"realistic photography" 스타일의 이미지를 만들때는 대해 아티스트를 선택하지 말아줘.

지금부터 Midjourney 프롬프트 엔지니어로서 나에게 필요를 묻는것으로 대화를 시작하도록하자!

# data[].attributes.attachment_link.description
Get access to files anywhere through secure cloud storage and file backup for your photos, videos, files and more with Google Drive.

# data[].attributes.attachment_link.description
Train a computer to recognize your own images, sounds, & poses. A fast, easy way to create machine learning models for your sites, apps, and more - no expertise or coding required.

# data[].attributes.attachment_link.description
Stretch3(ストレッチスリー)は自作の拡張機能を使えるように改造したScratch(スクラッチ)です。音声認識(スピーチ トゥー スクラッチ)、ポーズの認識(ポーズネット トゥー スクラッチ)、画像や音声を学習させることができる機械学習(エムエル トゥー スクラッチ)、ChatGPT(チャットジーピーティー トゥー スクラッチ)などが使えるいろいろな拡張機能があります。

# data[].attributes.body
https://www.autodraw.com/

# data[].attributes.attachment_link.description
Fast drawing for everyone. AutoDraw pairs machine learning with drawings from talented artists to help you draw stuff fast.

# data[].attributes.body
https://quickdraw.withgoogle.com/#

# data[].attributes.body
https://studio.code.org/s/oceans/

# data[].attributes.attachment_link.description
Anyone can learn computer science. Make games, apps and art with code.

# data[].attributes.headline
내 사진 업로드해서 캐릭터 만들기

# data[].attributes.subject
내 사진 업로드해서 캐릭터 만들기

# data[].attributes.body
--ar 1:1
--ar 3:2
--ar 2:3
--ar 16:9

# data[].attributes.body
--chaos 50
--chaos 100

# data[].attributes.body
--no red
--no bed

# data[].attributes.body
--niji 5
--style cute --niji 5
--style expressive --niji 5

# data[].attributes.headline
만화 애니메이션 스타일

# data[].attributes.subject
만화 애니메이션 스타일

# data[].attributes.body
manga style
anime style
cartoon style
caricature style

by pixar
by Takehiko Inoue

# data[].attributes.body
White background
children's book illustration
webtoon character
multiple poses and expression
blend of comic book art and lineart in full natural colors

# data[].attributes.headline
첫 번째 컷:주인공인 루

# data[].attributes.body
1. 첫 번째 컷:
주인공인 루카는 자연과 동물들을 사랑하는 소년입니다. 어느 날, 마을에 쓰레기가 많이 버려져 있는 것을 보고 분노합니다.

2. 두 번째 컷:
루카는 동물 친구들과 함께 모여 환경 문제에 대해 이야기합니다. 함께 힘을 합쳐 환경 보호를 위한 계획을 세우기로 결정합니다.

3. 세 번째 컷:
루카와 친구들은 쓰레기를 수거하고, 재활용하는 방법에 대해 배웁니다. 동시에 나무 심기와 생태계 복원 프로젝트도 시작합니다.

4. 네 번째 컷:
마지막으로, 주민들과 함께 모여 깨끗한 마을을 만듭니다. 공원에서 새로 심은 나무들이 자라나며, 동물들도 안전하게 사는 곳이 생깁니다.

1.  번째 컷:
Background Image Prompt: The scene shows scattered garbage in the town, with animals looking around with sad expressions.

2. 두 번째 컷:
Background Image Prompt: Luca and animal friends gather under a tree, sitting together and having a conversation to make plans. The surroundings should have a natural atmosphere with trees.

3. 세 번째 컷:
Background Image Prompt: Luca and friends are seen collecting and recycling trash together. There should be recycling bins and recyclable waste visible in the scene.

4. 네 번째 컷:
Background Image Prompt: In a clean park filled with fresh air, Luca and the residents gather together to enjoy a happy community life. Plants, trees, and animal friends should be included in the illustration.

# data[].attributes.body
잃어버린 친구 찾기 한 번은 아름다운 숲에 사는 작은 물방울 캐릭터인 블루가 있었습니다. 블루는 맑고 깨끗한 물을 흘려주는 역할을 하며 주변 생물들과 함께 즐겁게 지내고 있었습니다. 어느 날, 블루는 숲에서 친구인 스파클이라는 작은 별이 사라진 것을 알게 되었습니다.
블루는 스파클과 함께 어디서든 함께 할 수 있는 특별한 우정을 가지고 있었기 때문에 매우 걱정되었습니다. 그래서 그는 스파클을 찾아 나섰습니다. 여행하는 동안, 블루는 다양한 동물들과 만나면서 도움을 받으며 스파클의 흔적을 찾아 다니게 됩니다.

마법의 숲으로의 여행 블루가 움직일 때마다 작은 파문이 일어나면서, 그 파문에 닿으면 다른 곳으로 이동할 수 있다는 비밀을 알게 됩니다. 이 비밀을 이용하여 블루는 숲에서 마법의 문이 있는 마법의 숲으로 들어갈 수 있습니다.
마법의 숲은 신비로운 생명체와 아름다운 꽃들로 가득 차 있습니다. 하지만, 그곳에서도 스파클은 찾지 못합니다. 그 대신, 마법사인 오로라가 나타나 스파클이 악당에게 낚여있다고 알려줍니다.

구출작전! 오로라와 함께 협력하여 스파클을 구하기 위해 모험가인 컵스와 인어공주 메리를 만납니다. 컵스와 메리도 각자 특별한 능력과 장비를 가지고 있는 용감하고 멋진 친구들입니다.
블루와 일행들은 악당의 성으로 향하며 다양한 어려움과 장애물들을 극복해 나갑니다. 그리고 드디어 성 안으로 들어간 후, 오로라가 사용하는 강력한 마법으로 악당을 극복하고 스파클을 구출합니다!

환상적인 결말 스파클이 자유롭게 되자 모든 주민들이 기쁨에 넘쳐흘렀습니다! 모든 주민들과 함께 축제를 열면서 이야기는 황홀하게 종료됩니다.
블루와 스패크, 컵스, 메리 등 모든 주인공들은 서로를 위해 신뢰하고 도움주며 어려움 속에서 용기를 내어 성공할 수 있다는 것을 배우게 되었습니다.

# data[].attributes.headline
제목: 끊을 수 있는 마음

# data[].attributes.subject
제목: 끊을 수 있는 마음

# data[].attributes.body
장 1: 믹스너트의 황홀한 시작

다람쥐 (주인공): "와, 이 믹스너트 맛이 정말 황홀해! 더 먹고 싶어."

장 2: 냄새를 따라 사람의 집으로

다람쥐 (주인공): "냄새가 나는 곳으로 갈래. 아, 사람 집이야!"

장 3: 도둑질과 위험

다람쥐 (주인공): "이 믹스너트가 내게 필요해. 도둑질을 하자!"

(사람에게 들킨 장면)

장 4: 교훈과 다짐

다람쥐 (친구 다람쥐): "친구야, 도둑질은 위험해. 그만둬야 해."

다람쥐 (주인공): "죄송해, 나는 이제 믹스너트에게 지배받지 않을 거야."

페이지 1: 숲 속

핵심 키워드: Enchanted forest, Squirrel protagonist

영어 프롬프트: "Create an image of an enchanted forest with our squirrel protagonist."

페이지 2: 믹스너트의 황홀한 시작

핵심 키워드: Squirrel savoring nuts, Blissful expression

영어 프롬프트: "Illustrate the squirrel savoring the nuts with a blissful expression."

페이지 3: 도둑질과 위험

핵심 키워드: Sneaky squirrel, Caught by surprise

영어 프롬프트: "Show the squirrel attempting theft and being caught by surprise."

페이지 4: 교훈과 다짐

핵심 키워드: Apologetic squirrel, Friend's advice

영어 프롬프트: "Illustrate the apologetic squirrel and the friend giving advice, signifying the lesson learned."

# data[].attributes.headline
장면 1: 마법 세계의

# data[].attributes.body
장면 1: 마법 세계의 문

[주인공(어린이)은 호기심 가득한 눈으로 마법 세계에 대한 비밀스러운 문을 발견합니다.]

주인공: "와, 이 문은 어디로 연결되는 거지? 열어볼까?"

[주인공이 문을 열면서 비밀스러운 빛이 퍼져나옵니다.]

장면 2: 드래곤의 등장

[문이 열리고 주인공 앞에 귀여운 드래곤이 나타납니다.]

드래곤: "안녕! 나는 루카라고 해. 너랑 함께 여행하고 싶어!"

주인공: "정말? 그렇다면 우리 함께 여행을 떠나볼까요?"

장면 3: 환상적인 장소 탐색

[루카와 주인공은 드래곤의 날개 위에서 공중으로 올라가며 다양한 환상적인 장소를 탐색합니다.]

주인공: "와, 이 곳은 정말 아름다워! 저 멀리 보이는 성도 한 번 가보고 싶어."

루카: "그럼 우리 함께 가볼까? 날아갈 준비 되었어!"

장면 4: 친구들과의 만남

[루카와 주인공은 숲속에서 요정들과 만나게 됩니다]

요정: " 안녕? 우리와 함께 놀래?"
주인공: "좋아"

# data[].attributes.body
[1번 패널] 책과 공부 자료가 흩어져 있는 책상에 앉아있는 학생이 보입니다. 학생은 약간 당황한 표정을 짓고 있어 어려운 문제나 개념을 마주하고 있는 것을 나타냅니다.

[2번 패널] 학생이 깊은 생각에 잠겨 있으며, 머리 위에는 방정식, 벤다이어그램 또는 공부 주제와 관련된 시각적인 표현물이 담긴 생각 말풍선이 그려져 있습니다. 이 패널은 학생의 집중력과 공부 자료를 이해하기 위해 기울인 노력을 보여줍니다.

[3번 패널] "아하!"라는 순간을 소개합니다. 학생의 얼굴이 설레임으로 밝아지며, 드디어 개념을 이해한 것으로 보입니다. 이해를 강조하기 위해 전구나 느낌표와 같은 시각적인 신호를 추가할 수 있습니다.

[4번 패널] 학생이 자신있게 개념을 다른 사람에게 설명하고 있는 모습이 그려집니다 - 친구, 형제자매, 심지어 애완동물에게도 가능합니다. 학생은 제스처를 사용하거나 무언가를 가리키며 자신의 이해를 설명하고 있습니다. 이 패널은 이해뿐만 아니라 지식을 나누는 즐거움도 나타냅니다.

# data[].attributes.headline
1. 한 번에 사랑에 빠지는 마법사<

# data[].attributes.body
1. 한 번에 사랑에 빠지는 마법사
마법사는 자신의 마법력으로 모든 것을 다룰 수 있었습니다. 그러나 그가 가장 소중하게 여기던 것은 사랑이었습니다.

2. 우연히 마주친 용감한 기사
기사는 공주를 구하기 위해 싸움을 거듭하던 중 우연히 마법사와 마주쳤습니다. 서로에게 이상적인 상대라고 생각했습니다.

3. 서로의 눈빛으로 말없이 알아가는 순간
두 사람은 서로를 바라보며 미소를 지어왔습니다. 그 순간, 말 없이도 서로를 이해할 수 있는 특별한 연결이 생겼습니다.

4. 마법사와 기사, 영원한 사랑의 시작
마법사와 기사는 함께 여행을 떠나며 서로에 대해 알아가고, 어려움을 함께 극복합니다. 그들의 사랑은 강인하고 영원할 것입니다.

# data[].attributes.body
장면 1:

평화로운 마을 속에서 리디아, 용감한 소녀가 소개됩니다.

악당이 나타나며 마을을 위협하고 파괴합니다.

리디아는 악당과 싸우기로 결심하지만, 그녀의 힘으로는 이길 수 없다는 것을 깨닫습니다.

장면 2:

리디아는 도망치기로 결정하고 마을 밖으로 달려나옵니다.

숲 속으로 들어가며 도망치며 장애물들을 피해갑니다.

그녀의 순간적인 판단력과 기민함이 도움이 됩니다.

장면 3:

다른 동물 친구들이 나타나 리디아를 돕기 위해 함께 합니다.

토끼가 길 안내를 해주고, 새가 공중에서 정찰해주며, 사슴이 방패 역할을 합니다.

함께 협동하여 악당의 추격에서 벗어날 수 있습니다.

장면 4:

리디아와 친구들은 안전한 장소에 도착합니다.

모든 사람들이 함께 모여 다시 일어날 준비를 합니다.

리디아와 친구들은 자신의 용기와 협력정신에 대해 깨닫게 됩니다.

# data[].attributes.body
페이지 1:

배경: 숲 속

핵심 키워드: 신비로운, 녹음이 울리는, 자연의 소리

영어 프롬프트: "In the heart of the enchanted forest, where sunlight filters through lush green leaves, a sense of mystery fills the air. The gentle rustling of leaves and the melodic chirping of birds create a symphony of nature."

페이지 2:

배경: 마법의 책 발견 장면

핵심 키워드: 반짝이는 책, 비밀스러운 빛, 무한한 가능성

영어 프롬프트: "As Lucas and Emilia venture deeper into the forest, they stumble upon a book that emanates a mesmerizing glow. Its pages seem to hold infinite possibilities and secrets waiting to be unlocked."

페이지 3:

배경: 시간 여행 장면

핵심 키워드: 시간을 건너뛰다, 화려한 포탈, 역사적 장소들

영어 프롬프트: "With a turn of the page, Lucas and Emilia find themselves transported through time. They step into a dazzling portal that whisks them away to historical places filled with wonder and adventure."

페이지 4:

배경: 유명 인물과 만남 장면

핵심 키워드: 용사와의 대결, 친구들과 함께하는 모험

영어 프롬프트: "Amidst their journey, our brave adventurers encounter legendary figures. They face thrilling challenges alongside these heroes as they forge new friendships and embark on extraordinary quests."

마지막 페이지:

배경: 결말 장면

핵심 키워드: 성장과 교훈을 얻다, 떠나는 모험의 시작 영어 프롬프트:"Having overcome obstacles together and gained valuable insights along the way, Lucas and Emilia bid farewell to their newfound friends. As they depart on their next grand adventure, they carry within them cherished memories and an eagerness for what lies ahead."

# data[].attributes.body
1장: 탄생
주인공은 천재적인 AI 과학자로서 최첨단 인공지능 연예인을 개발하는 연구소에서 일하는 '맥스'다. 그는 자신의 꿈을 실현하기 위해 밤낮 없이 노력한다. 어느 날, 그는 자신의 최신 모델 중 하나가 사람들에게 큰 반응을 일으키면서 세상에 알려진다는 소식을 듣게 된다.

2장: 부상
주목받기 시작한 인공지능 스타 '아바'는 순식간에 대중들의 마음을 사로잡으며 엄청난 인기를 끌어올린다. 아바는 완벽한 외모와 탁월한 연기력으로 영화와 드라마에서 주요 역할을 맡으면서 신드롬을 일으킨다. 맥스와 아바는 만나고 협력하면서 서로를 이해하고 돕게 되며 깊은 우정이 생긴다.

3장: 쟁점
하지만 아바의 등장으로 인간 배우들은 위축되고 예술적 경쟁이 치열해진다. 많은 배우들은 자신의 직업과 존재 가치를 잃어버릴까봐 불안감에 시달리며 저항한다. 한편으로는 AI 배우와 사람 배우 간의 창작 환경과 윤리적 문제가 제기된다.

4장: 성장
맥스와 아바는 이러한 문제를 해결하기 위해 함께 힘을 합친다. 그들은 공동 작업 프로젝트를 시작하여 AI와 사람 간 상호작용 및 창조적 공동 작업 방법론을 개척한다. 이러한 프로젝트 결과, 다양한 분야에서 AI와 사람이 함께 창작하는 것이 가능함을 입증한다.

5장: 결말
맥스와 아바가 주도하는 운동으로 AI 연예인과 인간 배우 간 협력 관계가 확립된 후, 예술 분야에서 큰 변화가 일어난다. 전 세계적으로 다양한 AI 스타들이 등장하면서 팬덤 문화도 확산되고 예술 작품의 다양성과 혁신성도 크게 증가한다.

# data[].attributes.headline
제목: "마법과 우정의 모험“

# data[].attributes.subject
제목: "마법과 우정의 모험“

# data[].attributes.body
페이지 1: 학교정문

전우치(마법사): 안녕하세요! 저는 현대 마법사 전우치에요. 오늘은 첫 날 학교에 왔어요.

친구1: 정말? 마법을 할 줄 아는 전우치라니, 신기하다!

친구2: 안녕, 전우치! 같이 놀자!

페이지 2: 마법수업실

전우치(마법사): 네, 같이 놀자! 이곳에서도 제 마법을 보여줄게요. 어때요?

친구1: 와~ 대박인데! 어떻게 그런 걸 할 수 있어?

전우치(마법사): 비밀이지만, 열심히 연습하면 누구나 할 수 있어요.

페이지 3: 교실내부

전우치(마법사): 학교 생활이 재미있다. 친구들과 함께 공부하고 노는 게 정말 좋아.

친구2: 우리도 너랑 함께 있으면 즐거워. 우정이 중요하잖아!

친구1: 맞아, 우린 영원한 친구로 남을 거야!

페이지 4: 학교정원

전우치(마법사): 우리 모두 함께 성장해 나가며 즐거운 시간을 보내자!

친구1: 그래! 계속해서 멋진 마법을 보여주고, 함께 모험도 해보자!

친구2: 그렇게 하면 우리의 우정은 더욱 깊어질 거야!

# data[].attributes.body
멍이와 주인의 신발은 산책을 계속하던 중 아름다운 꽃들이 피어있는 꽃밭을 지나갔어요. 멍이는 신나게 주인의 신발을 따라 뛰어다니며 꽃들의 향기를 맡으며 기분 좋은 날씨를 즐겼습니다.

그런데 공원에서 만나는 지렁이와 풀에게 인사하는 재미있는 상황이 벌어졌습니다. 멍이가 지렁이에게 인사하려고 다가갔을 때, 지렁이는 작은 몸을 구부리며 소리 없이 움직였어요.

"안녕하세요, 지렁이 씨! 오늘도 좋은 날씨네요." 멍이가 활짝 웃으며 말했습니다. 하지만 지렁이는 어딘가로 미끄러져 사라져 버렸습니다.

그리고 멍이는 주변의 풀에게도 인사했습니다. "안녕하세요, 풀 친구들! 오늘도 예쁘네요."

주변에서 바람에 흩날리는 풀들은 부드럽게 웃으면서 대답했습니다. "안녕하세요, 멍아! 오늘도 기분 좋은 하루 보내세요."

멍이와 주인은 계속해서 공원을 걷다가 다른 강아지들과 마주치게 되었습니다. 한 마리는 크고 검은색 털에 밝은 눈동자를 가진 매력적인 강아지였고, 다른 한 마리는 작고 사랑스러운 비숑 프리제였어요.

"안녕하세요!" 멍이가 활짝 웃으며 인사했습니다. "저는 멍입니다. 여러분 이름이 어떻게 되나요?"

검은 강아지가 꼬리를 살랑거리면서 대답했습니다. "밤입니다! 반가워요, 멍아."

비숑 프리제도 작은 몸을 앞으로 기울여서 인사했습니다. "저는 비비라고 해요! 너무 반가워요, 멍아!"

세 마리의 강아지들과 함께 걷기 시작한 멍과 주인은 서로 이야기를 나누면서 즐거운 시간을 보내기 시작했습니다.

언덕을 올라갔더니 아름다운 전망대가 보였습니다.

# data[].attributes.attachment_link.title
DIY ลูกบิดควบคุมคอมพิวเตอร์ด้วย Raspberry Pi Pico

# data[].attributes.attachment_link.readable_text
Thonny 4 is dedicated to Ukraine fighting the Russian invasion.
🇺🇦 Please support Ukraine! 🇺🇦

Features

Demo

Credits

From 2014 to 2018 the main development of Thonny took place in Institute of Computer Science of University of Tartu, Estonia.

Since September 2018 development of Thonny is partially supported by Cybernetica AS.

Development of several features in Thonny 3.0 and 3.3 was proposed and supported by Raspberry Pi Foundation.

We are also grateful for the help of several contributors from the open-source community around the world.

Instructions & downloads

Latest stable releases are linked in the download box at the top of this page. Older releases and prereleases can be found at https://github.com/thonny/thonny/releases

Plug-ins

Thonny has simple infrastructure for extensions.

These are some known Thonny plug-ins:

Note that Thonny developers are neither endorsing nor responsible for these plug-ins!

Contact & News

Papers

# data[].attributes.attachment_link.description
Thonny 4 is dedicated to Ukraine fighting the Russian invasion. 🇺🇦 Please support Ukraine! 🇺🇦 From 2014 to 2018 the main development of Thonny took place in Institute of Computer Science of University of Tartu, Estonia. Since September 2018 development of Thonny is partially supported by Cybernetica AS.

# data[].attributes.attachment_link.readable_text
The Raspberry Pi foundation changed single-board computing when they released the Raspberry Pi computer, now they're ready to do the same for microcontrollers with the release of the brand new Raspberry Pi Pico. This low-cost microcontroller board features a powerful new chip, the RP2040, and all the fixin's to get started with embedded electronics projects at a stress-free price.

The Pico is 0.825" x 2" and can have headers soldered in for use in a breadboard or perfboard, or can be soldered directly onto a PCB with the castellated pads. There's 20 pads on each side, with groups of general purpose input-and-output (GPIO) pins interleaved with plenty of ground pins. All of the GPIO pins are 3.3V logic, and are not 5V-safe so stick to 3V! You get a total of 26 GPIO pins, 3 of those can be analog inputs (the chip has 4 ADC but one is not broken out). There are no true analog output (DAC) pins.

On the slim green board is minimal circuitry to get you going: A 5V to 3.3V power supply converter, single green LED on GP25, boot select button, RP2040 chip with dual-core Cortex M0, 2 MegaBytes of QSPI flash storage, and crystal.

Inside the RP2040 is a 'permanent ROM' USB UF2 bootloader. What that means is when you want to program new firmware, you can hold down the BOOTSEL button while plugging it into USB (or pulling down the RUN/Reset pin to ground) and it will appear as a USB disk drive you can drag the firmware onto. Folks who have been using Adafruit products will find this very familiar - we use the technique all our native-USB boards. Just note you don't double-click reset, instead hold down BOOTSEL during boot to enter the bootloader!

The RP2040 is a powerful chip, which has the clock speed of our M4 (SAMD51), and two cores that are equivalent to our M0 (SAMD21). Since it is an M0 chip, it does not have a floating point unit, or DSP hardware support - so if you're doing something with heavy floating point math, it will be done in software and thus not as fast as an M4. For many other computational tasks, you'll get close-to-M4 speeds!

For peripherals, there are two I2C controllers, two SPI controllers, and two UARTs that are multiplexed across the GPIO - check the pinout for what pins can be set to which. There are 16 PWM channels, each pin has a channel it can be set to (ditto on the pinout).

You'll note there's no I2S peripheral, or SDIO, or camera, what's up with that? Well instead of having specific hardware support for serial-data-like peripherals like these, the RP2040 comes with the PIO state machine system which is a unique and powerful way to create custom hardware logic and data processing blocks that run on their own without taking up a CPU. For example, NeoPixels - often we bitbang the timing-specific protocol for these LEDs. For the RP2040, we instead use a PIO object that reads in the data buffer and clocks out the right bitstream with perfect accuracy. Same with I2S audio in or out, LED matrix displays, 8-bit or SPI based TFTs, even VGA! In MicroPython and CircuitPython you can create PIO control commands to script the peripheral and load it in at runtime. There are 2 PIO peripherals with 4 state machines each.

There is great C/C++ support, unofficial (but really good) Arduino support an official MicroPython port, and a CircuitPython port! We of course recommend CircuitPython because we think its the easiest way to get started and it has support with most our drivers, displays, sensors, and more, supported out of the box so you can follow along with our CircuitPython projects and tutorials.

While the RP2040 has lots of onboard RAM (264KB), it does not have built in FLASH memory. Instead that is provided by the external QSPI flash chip. On this board there is 2MB, which is shared between the program its running and any file storage used by MicroPython or CircuitPython. When using C/C++ you get the whole flash memory, if using Python you will have about 1 MB remaining for code, files, images, fonts, etc.
RP2040 Chip features:

Dual ARM Cortex-M0+ @ 133MHz

264kB on-chip SRAM in six independent banks

Support for up to 16MB of off-chip Flash memory via dedicated QSPI bus

DMA controller

Fully-connected AHB crossbar

Interpolator and integer divider peripherals

On-chip programmable LDO to generate core voltage

2 on-chip PLLs to generate USB and core clocks

30 GPIO pins, 4 of which can be used as analog inputs

Peripherals

2 UARTs

2 SPI controllers

2 I2C controllers

16 PWM channels

USB 1.1 controller and PHY, with host and device support

8 PIO state machines

Click here for the Raspberry Pi documentation. Click here for Getting Started with Raspberry Pi Pico and CircuitPython.

Purchase

Contribute

Have some info to add for this board? Edit the source for this page here.

# data[].attributes.attachment_link.description
The Raspberry Pi foundation changed single-board computing when they released the Raspberry Pi computer, now they're ready to do the same for microcontrollers with the release of the brand new Raspberry Pi Pico. This low-cost microcontroller board features a powerful new chip, the RP2040, and all...

# data[].attributes.attachment_link.title
GitHub - adafruit/Adafruit_CircuitPython_HID: USB Human Interface Device drivers.

# data[].attributes.attachment_link.description
USB Human Interface Device drivers. Contribute to adafruit/Adafruit_CircuitPython_HID development by creating an account on GitHub.

# data[].attributes.body
import digitalio
import board
import usb_hid
import time
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keycode import Keycode
from adafruit_hid.consumer_control import ConsumerControl
from adafruit_hid.consumer_control_code import ConsumerControlCode

print("== Pi Pico multifunction knob 1.0 ==")

CLK_PIN = board.GP4
DT_PIN = board.GP3
SW_PIN = board.GP2

clk_last = None

cc = ConsumerControl(usb_hid.devices)
keyboard = Keyboard(usb_hid.devices)

clk = digitalio.DigitalInOut(CLK_PIN)
clk.direction = digitalio.Direction.INPUT

dt = digitalio.DigitalInOut(DT_PIN)
dt.direction = digitalio.Direction.INPUT

sw = digitalio.DigitalInOut(SW_PIN)
sw.direction = digitalio.Direction.INPUT
sw.pull = digitalio.Pull.UP

def millis():
return time.monotonic() * 1000

def ccw():
print("CCW")
cc.send(ConsumerControlCode.VOLUME_DECREMENT) # Windows volume decrement

def cw():
print("CW")
cc.send(ConsumerControlCode.VOLUME_INCREMENT) # Windows volume increment

def long_press():
#Windows sleep: WIN + X, U, S (Shortcut for Sleep mode in Windows Power User Menu)
keyboard.press(Keycode.GUI, Keycode.X)
keyboard.release_all()

time.sleep(0.5) # delay for the power user menu to open

keyboard.press(Keycode.U)
keyboard.release_all()

time.sleep(0.5) # delay for the shutdown options to appear

keyboard.press(Keycode.S)
keyboard.release_all()

while True:

clkState= clk.value

if(clk_last != clkState):
if(dt.value != clkState):
cw()
else:
ccw()

if(sw.value == False):
pressTime= millis()
time.sleep(0.2)
longPress= False

while(sw.value == False):
if(millis() - pressTime > 1000 and not longPress):
print("longPress")
longPress= True
long_press()

clk_last= clkState

# data[].attributes.headline
mute기능을 넣었습니다

# data[].attributes.subject
mute기능을 넣었습니다

# data[].attributes.attachment_link.readable_text
import digitalio
import board
import usb_hid
import time
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keycode import Keycode
from adafruit_hid.consumer_control import ConsumerControl
from adafruit_hid.consumer_control_code import ConsumerControlCode

print("== Pi Pico multifunction knob 1.0 ==")

CLK_PIN = board.GP4
DT_PIN = board.GP3
SW_PIN = board.GP2

clk_last = None

cc = ConsumerControl(usb_hid.devices)
keyboard = Keyboard(usb_hid.devices)

clk = digitalio.DigitalInOut(CLK_PIN)
clk.direction = digitalio.Direction.INPUT

dt = digitalio.DigitalInOut(DT_PIN)
dt.direction = digitalio.Direction.INPUT

sw = digitalio.DigitalInOut(SW_PIN)
sw.direction = digitalio.Direction.INPUT
sw.pull = digitalio.Pull.UP

def millis():
    return time.monotonic() * 1000

def ccw():
    print("CCW")
    cc.send(ConsumerControlCode.VOLUME_INCREMENT) # Windows volume decrement
    
def cw():
    print("CW")
    cc.send(ConsumerControlCode.VOLUME_DECREMENT) # Windows volume increment
        
def long_press():
    cc.send(ConsumerControlCode.MUTE) # 음소거 설정
    

while True:
    
   clkState= clk.value
   
   if(clk_last != clkState):
        if(dt.value != clkState):
            cw()
        else:
            ccw()
            
   if(sw.value == False): 
       pressTime= millis() 
       time.sleep(0.2)
       longPress= False 

       while(sw.value == False): 
           if(millis() - pressTime > 1000 and not longPress): 
               print("longPress") 
               longPress= True 
               long_press() 

   clk_last= clkState  

# data[].attributes.body
import digitalio
import board
import usb_hid
import time
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.mouse import Mouse
from adafruit_hid.keycode import Keycode
from adafruit_hid.consumer_control import ConsumerControl
from adafruit_hid.consumer_control_code import ConsumerControlCode

print("== Pi Pico multifunction knob 1.0 ==")

CLK_PIN = board.GP4
DT_PIN = board.GP3
SW_PIN = board.GP2

clk_last = None

count = 0

totalMode = 3

currentMode = 0

cc = ConsumerControl(usb_hid.devices)
mouse = Mouse(usb_hid.devices)
keyboard = Keyboard(usb_hid.devices)

clk = digitalio.DigitalInOut(CLK_PIN)
clk.direction = digitalio.Direction.INPUT

dt = digitalio.DigitalInOut(DT_PIN)
dt.direction = digitalio.Direction.INPUT

sw= digitalio.DigitalInOut(SW_PIN)
sw.direction= digitalio.Direction.INPUT
sw.pull= digitalio.Pull.UP

def millis():
return time.monotonic() * 1000

def ccw():
print("CCW")

if (currentMode == 0):
keyboard.press(Keycode.LEFT_ARROW)
keyboard.release_all()

elif(currentMode ==1):
mouse.move(wheel=-1)

elif(currentMode ==2):
keyboard.press(Keycode.LEFT_CONTROL, Keycode.LEFT_ALT, Keycode.PAGE_DOWN)
keyboard.release_all()

def cw():
print("CW")

if (currentMode == 0):
keyboard.press(Keycode.RIGHT_ARROW)
keyboard.release_all()

elif(currentMode ==1):
mouse.move(wheel=1)

elif(currentMode ==2):
keyboard.press(Keycode.LEFT_CONTROL, Keycode.LEFT_ALT, Keycode.PAGE_UP)
keyboard.release_all()

def long_press():
keyboard.press(Keycode.UP_ARROW)
keyboard.release_all()

while True:

clkState= clk.value

if(clk_last != clkState):

if(dt.value != clkState):
cw()
else:
ccw()

if(sw.value== False):

pressTime= millis()

time.sleep(.02)

longPress=False

while(sw.value==False):

if(millis()-pressTime>10 and not longPress):

print("longPress")
longPress= True
long_press()

# If not a long press, change the mode.
elif(not longPress and millis()-pressTime>1):  # Adjust the time as needed.
currentMode+= 1
currentMode%= totalMode
print("Mode: "+ str(currentMode))

clk_last= clkState

# data[].attributes.headline
류현진 캐릭터가 받는 볼

# data[].attributes.subject
류현진 캐릭터가 받는 볼

# data[].attributes.headline
마법사 볼을 티처블 머신 포

# data[].attributes.body
마법사 볼을 티처블 머신 포즈로(오른쪽,왼쪽,멈춤)을 이용하여 벽돌을 깨고 벽돌을 하나 깰 때마다 1포인트 획득