월 37,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결FreeRTOS 프로그래밍
섹션 4 <소스코드 분석 - printf, fflush>1:52 부근에서 질문드릴 것이 있습니다!
안녕하세요 강사님! 섹션 4 <소스코드 분석 - printf, fflush>1:52 부근에서 질문드릴 것이 있습니다! 강의에서 설명해주신 것을 저는 fflush() 를 주석하면 각 Task에서 UART 통신을 통해 전송한 문자들이 바로 flush되지 않고 버퍼에 쌓이다가 buffer 한계량을 초과할 때마다 출력이 되므로 우리가 생각했던대로인 'a'가 연속적으로 절반 출력되고, 'b'가 연속적으로 절반 출력되는 것이 반복되는 결과가 발생한다고 말씀하신 것으로 이해했습니다.그러나 제가 이해가 안되는 것이 Task1, 2는 우선순위가 같고, 따라서 Task1 한 번 실행('a' 출력) -> Task2 한 번 실행('b' 출력) -> Task1 한 번 실행('a' 출력) ... 이 과정이 반복되어서 ababababababab가 출력되어야 하는 것이 아닌가요..??
- 해결됨FreeRTOS 프로그래밍
NUCLEO-L152RE 포팅문의
안녕하세요.회사에서 가지고 있는 보드가, NUCLEO-L152RE Board 모델 포팅 가능 한지 문의 드립니다. 감사합니다.
- 미해결FreeRTOS 프로그래밍
강의 "소스코드 분석-vTaskSuspend" 관련 질문 드립니다!
안녕하세요 강사님 :) 스케줄링 관련 질문이 있어 글을 남깁니다.Task2보다 우선 순위가 높은 Task1 이 vTaskDelay(1000)로 1초 동안 blocked 상태였다가 다시 ready상태로 돌아왔을 때, 혹은 vTaskSuspend() 함수로 인해 blocked상태였다가 vTaskResume() 을 통해 다시 ready상태가 됐을 때 만약 자신보다 우선순위가 낮은 Task2가 running 상태라면 우선순위가 더 높은 Task1이 ready상태이니 Task2는 running 상태에서 쫒겨나고, Task1이 running 상태가 되는 것이 맞습니까?그리고 이 때 Task2는 어떤 작업에 의해 어떤 상태가 되는지(blocked? ready?)도 궁금합니다!!
- 미해결FreeRTOS 프로그래밍
강의 "수업실습예제의 구성" 2:22부근 질문드립니다!!
안녕하세요 강사님!! C언어 함수 관련 질문 드릴 것이 있어 질문글을 작성하게 되었습니다.강의 2:22부근에 나오는 USER_THREADS() 함수는 task.c에 정의되어 있고 그 함수를 다른 .c 파일인 main.c에서 호출하고 있습니다. 보통 함수의 정의를 task.h 등의 헤더파일에 작성하고, 이후 main.c에서 #include "task.h"를 한 후 다른 .c파일의 함수를 사용할 수 있는 것 아닌가요?? 어떠한 헤더파일의 인클루드도 없이 바로 main.c에서 다른 .c파일인 task.c 파일 속 함수를 사용할 때 왜 오류가 발생하지 않는 것인가요..??
- 미해결FreeRTOS 프로그래밍
실습환경 구축 STM32CubeIDE 시작하기. 따라하다가 에러 발생
안녕하세요. 선생님 실습환경 구축 STM32CubeIDE 시작하기 영상을 보다가 TASKMAN 인포트까지는 했는데, 그 이후 영상처럼 디버깅을 하면 에러가 납니다. 어떤 조치를 해야 하는지요? 빌드 조차도 되지 않으니 문제가 있는듯한데요. 처음 하는 것이라서 가이드가 좀 필요합니다. 답변 주시면 감사하겠습니다.
- 미해결FreeRTOS 프로그래밍
포팅부탁드립니다.
직접 해봤는데 자꾸 오류가 나네요-------------------------------------------------- 사용하고 싶은 ST 보드명: NUCLEO_G431RB, NUCLEO_F446RE- 사용하시는 컴파일러(stm32cubeide) 버젼: 1.13.1- 기타: 직접 포팅했을 때에는 멀티프로세스에서 2가 돌아가다가 1(우선순위 2보다 낮게)이 돌아가면 멈춰버립니다.-------------------------------------------------감사합니다.
- 미해결FreeRTOS 프로그래밍
섹션 4 : 소스코드분석-vTaskSuspend 관련 질문있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.task.c에서xTaskCreate를 통해 Task1을 생성 시word를 128 로 설정하면 향후Task1이 Suspend하고 TaskMain을 Delete해도 Task2가 실행 되지 않습니다.그런데, Task1의 word크기를 256으로 TaskMain과 똑같이 맞춰주면 Suspend가 잘 작동합니다. 혹시, Suspend 시 TaskMain 256에 Task1 128이 올라가고 Suspend하면 남아있는 메모리 128 + Task2 메모리 128로 해서앞에 Task2가 메모리 맨 앞으로 못와서 실행이 안되는 개념인가요??처음 시작해서 모르는게 많은 것 같습니다!
- 미해결FreeRTOS 프로그래밍
포팅 부탁드립니다.
- 사용하고 싶은 ST 보드명: NUCLEO-H723ZG- 사용하시는 컴파일러(stm32cubeide) 버젼: 1.13.1
- 해결됨FreeRTOS 프로그래밍
포팅작업 요청드립니다.
- 사용하고 싶은 ST 보드명: open746I-C package B (MCU: STM32F746IGT6)- 사용하시는 컴파일러(stm32cubeide) 버젼: STM32CubeIDE Version: 1.12.1Build: 16088_20230420_1057 (UTC)
- 미해결FreeRTOS 프로그래밍
FreeRTOS 사용 중 EIRQ 사용여부
FreeRTOS를 사용하면 EIRQ 부분이 작동을 안 하는데 당연한 건가요??제 환경은 spc5studio라서 stm32IDE와는 조금 다릅니다.다른 OS를 작동해서 원래 환경에 외부 인터럽트는 작동하지 않는 것인지 궁금합니다.만약 작동하지 않는 게 맞다면.. FreeRTOS include 시에는 어떤 함수로 외부인터럽트를 처리해야할까요 감사합니다!
- 미해결FreeRTOS 프로그래밍
포팅부탁드립니다.
- 사용하고 싶은 ST 보드명 : NUCLEO H743ZI2- 사용하시는 컴파일러(stm32cubeide) 버젼: 1.12.1
- 미해결FreeRTOS 프로그래밍
인터럽트 벡터 테이블의 시작 위치에 관하여 질문이 있습니다.
안녕하세요 강의를 듣던 중 질문이 있습니다.섹션 10. 세마포어, 소스코드 분석 - 부트의 원리 강의에서 6:42 초 쯤에보드에 버튼을 누르면 Startup 폴더에 있는 startup_stm32f103rbtx.s 파일에.word EXTI15_10_IRQHandler 라는 이 인터럽트 핸들러 부터 실행된다고 하셨는데인터럽트 벡터 테이블 안에서 어떤 인터럽트 핸들러부터 실행되는지는 어떻게 알 수 있는건가요?감사합니다. - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 미해결FreeRTOS 프로그래밍
Task 별 cpu 사용량
Task를 여러 개 생성 후, 우선 순위의 변화에 따라 cpu 사용량이 어떻게 변하는지 보고 싶어 "osGetCPUUsage" 함수를 통해 CPU 사용량을 측정하였습니다. 그런데 위의 함수는 전체 CPU 사용량을 측정하는 것으로 알고 있습니다. 저는 우선순위를 랜덤으로 준 후, 각 Task별 cpu 사용량을 알아 보고 싶은데, 혹시 각 Task의 cpu 사용량을 볼 수 있는 방법은 없을까요?
- 미해결FreeRTOS 프로그래밍
태스크 별 주기 주는 방법
안녕하세요 task 1, task 1, task 1 이 있다고 가정할때 각각 100 200 500ms마다 한번씩 해야한다고 가정할 경우 어떻게 주기를 관리하나요? 예를 들어 단순하게 osdelay(100); 한다면 단순히 0.1초만 보장하기 때문에 나중에는 누적되어서 오차가 생길거라고 생각되어집니다.
- 미해결FreeRTOS 프로그래밍
TaskDelay() 함수처럼 Context Switching을 유발하는 함수는 모두 내부적으로 ISR을 통해 실행되는 것일까요?
상호배제방법-인터럽트금지 강의를 듣다가 궁금한 점이 생겨서 질문드립니다.TaskDelay() 함수처럼 Context Switching을 유발하는 함수는 모두 내부적으로 ISR을 통해 실행되는 것일까요?특히 Systick Interrupt를 통해 실행되는 것 같은데, 제가 제대로 이해한 게 맞는지 궁금합니다.
- 해결됨FreeRTOS 프로그래밍
ESP32
안녕하세요?ESP32와 ESP-IDF를 이용해서 펌웨어 개발을 하려고 하는데, 혹시 예제 코드가 STM32에 적용할 때와 많이 다를까요?
- 미해결FreeRTOS 프로그래밍
포팅시 자료 그대로 다운
강사님 f767zi로 포팅할때 강의 따라서 안하고 올려주신 파일 그대로 다운 받아서 해도 되나여?
- 미해결FreeRTOS 프로그래밍
TASKMAN 카피해서 컴파일시에 오류가 발생합니다.
- 사용하신 첨부파일의 버젼: 첨부파일 아직 사용안했습니다.- 사용하시는 ST 보드명: NUCLEO_F767ZI- 사용하시는 컴파일러(stm32cubeide) 버젼: 1.12.0- 증상: 컴파일시 에러가 발생합니다.. 포팅하는 강의 따라하던중 freertos_portF767zi 복사에서 붙혀넣기하고 01_TASKMAN으로 할려고 했는데 전에 다운받아놨던게 있어서 01_TASKMAN(f767zi)로 생성했습니다. 이후에 런치파일 삭제하고 맵파일은 첨부터 없어서 삭제 안하고 컴파일 했더니 에러가 3개 발생했습니다.
- 미해결FreeRTOS 프로그래밍
freeRTOS도 GDB 사용이 가능할까요?
고수님 안녕하세요?FreeRTOS 디버깅이 GDB로 가능하다면 해보려고 하는데,가능할지 여쭙고 싶습니다.미리 답변 감사합니다. 좋은 하루 되세요 :)
- 해결됨FreeRTOS 프로그래밍
taskr간 context switching 관련하여 질문이 있습니다.
안녕하세요 강사님. 컨텍트 스위칭 관련하여 궁금한점이 있어 질문드립니다.아래와 같은 상황에서 우선 순위사 제일 높은 task를 컨텍트 스위칭 전에 cpu 자원을 사용하게 하고 싶습니다.task1 : 우선 순위 5 (suspend 상태)task2 : 우선 순위 4task3 : 우선 선위 4우선 task2가 실행하던 도중 task1을 resume 하고 바로 portyield를 실행하게 되면 우선 순위가 동일한 task3번이 cpu를 점유하여 일을 처리하다가 컨텍트 스위칭이 발생하게 되면 task1이 cpu를 점유가게 될텐데 제가 궁금한건 task2에서 task1을 resume 한 후 컨택트 스위칭이 발생하기 전에 cpu를 task1이 점유하게 하는 방법이 없는지 궁금합니다. 감사합니다.