KR102625220B1 - Microcontroller Training Kit - Google Patents

Microcontroller Training Kit Download PDF

Info

Publication number
KR102625220B1
KR102625220B1 KR1020220102686A KR20220102686A KR102625220B1 KR 102625220 B1 KR102625220 B1 KR 102625220B1 KR 1020220102686 A KR1020220102686 A KR 1020220102686A KR 20220102686 A KR20220102686 A KR 20220102686A KR 102625220 B1 KR102625220 B1 KR 102625220B1
Authority
KR
South Korea
Prior art keywords
level
driver
user
microcontroller
level driver
Prior art date
Application number
KR1020220102686A
Other languages
Korean (ko)
Inventor
이현창
Original Assignee
공주대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 공주대학교 산학협력단 filed Critical 공주대학교 산학협력단
Priority to KR1020220102686A priority Critical patent/KR102625220B1/en
Application granted granted Critical
Publication of KR102625220B1 publication Critical patent/KR102625220B1/en

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B23/00Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes
    • G09B23/06Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics
    • G09B23/18Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism
    • G09B23/183Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism for circuits
    • G09B23/186Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism for circuits for digital electronics; for computers, e.g. microprocessors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/0053Computers, e.g. programming

Abstract

마이크로컨트롤러 교육용 키트가 개시된다. 마이크로컨트롤러 교육용 키트는, 하드웨어 장치, 사용자 소프트웨어 및 하드웨어 장치와 사용자 소프트웨어 사이에서 매개체 역할을 담당하며, 사용자의 레벨에 따라 레벨별 맞춤형 드라이버를 제공하는 하드웨어 드라이버를 포함한다.A microcontroller education kit is disclosed. The microcontroller education kit includes a hardware device, user software, and a hardware driver that acts as an intermediary between the hardware device and user software and provides customized drivers for each level depending on the user's level.

Description

마이크로컨트롤러 교육용 키트{Microcontroller Training Kit}Microcontroller Training Kit {Microcontroller Training Kit}

본 발명은 마이크로컨트롤러 교육용 키트에 관한 것이다.The present invention relates to a microcontroller education kit.

마이크롤컨트롤러를 학습하거나 활용하기 위한 실험 키트는 초보자를 비롯하여 어느 정도 숙련된 사용자에 이르기까지 다양한 부류의 사용자에 의하여 사용된다. 이러한 실험 키트에 지나치게 간단한 함수나 기능만이 구비될 경우, 초보자는 기본적인 함수만 접하므로, 거부감 없이 쉽게 학습할 수 있으나, 어느 정도 수준이 향상되면, 기능의 단순함에 의하여 실험 대상이나 응용 분야가 제한되는 문제점이 발생한다. 그래서, 이를 대비하여 실험 키트에 향상된 기능까지 모두 구비되는 경우, 초보자는 초기 단계부터 수많은 함수들을 접하게 되므로, 혼란스러워 초기 학습에 큰 어려움을 겪을 수 있다. 따라서, 사용자의 레벨에 맞추어 필요로 하는 함수를 구비하는 레벨별 라이브러리의 구성이 필요하다.Experimental kits for learning or using microcontrollers are used by various types of users, from beginners to somewhat experienced users. If such an experiment kit is equipped with only overly simple functions or functions, beginners will only encounter basic functions and can easily learn them without feeling reluctant. However, once the level is improved to a certain extent, the subjects of experiments and application areas are limited due to the simplicity of the functions. Problems arise. Therefore, in preparation for this, if the experiment kit is equipped with all advanced functions, beginners will encounter numerous functions from the initial stage, which may cause confusion and great difficulty in initial learning. Therefore, it is necessary to construct a library for each level that includes the functions needed according to the user's level.

도 1은 종래의 실험 키트의 구성을 개략적으로 예시하여 나타낸 도면이다.Figure 1 is a diagram schematically illustrating the configuration of a conventional experiment kit.

도 1을 참조하면, 실험 키트는 사용자 소프트웨어, 하드웨어 장치 및 하드웨어 드라이버를 포함하여 구성될 수 있다.Referring to Figure 1, an experiment kit may be comprised of user software, hardware devices, and hardware drivers.

여기서, 하드웨어 드라이버는 사용자가 하드웨어를 쉽게 사용할 수 있도록, 도 1에 도시된 바와 같이, 하드웨어 장치와 사용자 소프트웨어의 중간에서 매개체 역할을 담당하며, 소프트웨어나 펌웨어의 형태로 형성될 수 있다.Here, the hardware driver serves as an intermediary between the hardware device and user software, as shown in FIG. 1, so that the user can easily use the hardware, and may be formed in the form of software or firmware.

예를 들어, 사용자가 소프트웨어를 구성할 때, PWM0(100)이라는 간단한 명령을 입력하면, 하드웨어 드라이버는 이 명령을 해석하여 하드웨어 장치의 PWM 0번 포트로 지정된 곳에 100 값을 대입하는 실제의 복잡한 동작을 수행한다. 즉, 하드웨어 드라이버는 사용자가 내리는 간단한 명령어에 해당하는 하드웨어 제어용 함수의 집합이라 할 수 있다.For example, when a user configures software, if he or she enters a simple command such as PWM0(100), the hardware driver interprets this command and performs an actual complex operation that assigns the value 100 to the PWM 0 port of the hardware device. Perform. In other words, a hardware driver can be said to be a set of functions for controlling hardware that correspond to simple commands given by the user.

도 2는 PWM 기능 사용을 위한 설정의 예를 나타낸 도면이다.Figure 2 is a diagram showing an example of settings for using the PWM function.

현재 마이크로컨트롤러 실험 키트로 많이 사용되고 있는 아두이노의 경우, 초보자가 쉽게 사용할 수 있도록, 기본적인 설정은 하드웨어 드라이버에서 자동으로 진행되도록 구성되어 있다. 그 중 한 가지 예로, 제어 분야에 필수요소인 PWM 기능인데, 본래의 PWM 기능을 구현하려면 도 2와 같은 매우 복잡한 설정을 거쳐야 한다. 이러한 복잡한 설정에 대하여 아직 지식이 없는 초보자의 경우, 설정 단계를 모두 학습하기 전까지는 PWM이라는 기능 자체를 구현해 볼 수 없다. 이에 따라, 아두이노의 경우, PWM의 펄스폭을 제어하는 요소 이외의 모든 것들은 하드웨어 드라이버에서 기본으로 설정되어, 사용자는 오직 PWM 펄스폭만을 제어하는데 집중하도록 구성되어 있다. 그래서, PWM의 개념이 아직 정립되지 않은 초보자의 경우, 기타 다른 요소들을 신경 쓸 필요 없이, 오직 PWM의 펄스폭 제어에만 집중할 수 있으므로, 교육적 효과가 크게 증가할 수 있다.In the case of Arduino, which is currently widely used as a microcontroller experiment kit, basic settings are configured to be automatically performed in the hardware driver so that beginners can easily use it. One example of this is the PWM function, which is an essential element in the control field. In order to implement the original PWM function, very complex settings as shown in Figure 2 must be performed. For beginners who do not yet have knowledge about these complex settings, they cannot implement the PWM function itself until they learn all the setting steps. Accordingly, in the case of Arduino, everything other than the elements that control the pulse width of the PWM are set to default in the hardware driver, so the user is configured to focus only on controlling the PWM pulse width. Therefore, for beginners who have not yet established the concept of PWM, they can focus only on controlling the pulse width of PWM without having to worry about other factors, which can greatly increase the educational effect.

그러나, 이러한 실험 키트를 실제 실험에 응용하는 경우, 그 실험에 적당한 PWM의 주파수나 PWM의 해상도 등을 조절할 필요가 있으나, 이들 사항들이 모두 이미 고정되어 있으므로, 응용에 크게 제약을 받으며, 실제로 모 대학 실험실에서도 이러한 PWM 출력을 이용하여 로봇의 힘을 제어하는데, PWM의 주파수가 낮아 로봇에 떨림 현상이 발생하고, 이를 방지하기 위하여 대형 인덕터(무게만 수 킬로그램)를 부착하여 PWM 출력을 평활화시켜 사용해야 했다. 즉, 본래는 실험 기구에 마이크로컨트롤러 실험 키트를 맞춰 사용하는 것이 정상적이지만, 마이크로컨트롤러의 세부적인 사항을 제어할 수 없으므로, 이미 설정되어 고정된 마이크로컨트롤러 실험 키트에 실험 기구를 맞춰 사용해야 하는 기현상이 발생한다. 그래서, 이러한 세부 사항을 전문가들이 설정할 수 있도록 변경한 코두이노(코리안+아두이노)라는 것이 사용되고 있으나, 본래의 아두이노와 다르기 때문에, 프로그램 호환에 문제점이 발생하는 등 여러 가지 불편한 점이 존재한다. 그렇다고 모든 설정이 사용자가 진행하도록 구성되면, 초보자의 경우 처음부터 학습량이 지나치게 많아지고 이해하기 어려운 기기가 되므로 이 또한 적합하지 않다. 마이크로컨트롤러 실험 키트에서 발생되는 이러한 문제점은 PWM 뿐만 아니라, 아날로그/디지털 변환 회로, 비동기 통신회로, 동기식 통신회로 등의 다양한 회로에서 발생한다.However, when applying this experiment kit to an actual experiment, it is necessary to adjust the PWM frequency or PWM resolution appropriate for the experiment, but since all of these matters are already fixed, application is greatly restricted, and in reality, the university Even in the laboratory, this PWM output is used to control the robot's force, but the low frequency of the PWM causes the robot to tremble. To prevent this, a large inductor (weighing several kilograms) had to be attached to smooth the PWM output. . In other words, it is normal to use a microcontroller experiment kit that matches the experimental equipment, but since the details of the microcontroller cannot be controlled, a strange phenomenon occurs where the experimental equipment must be used by matching the microcontroller experiment kit that has already been set and fixed. do. So, Corduino (Korean + Arduino), which has been modified to allow experts to set these details, is being used, but since it is different from the original Arduino, there are various inconveniences, such as problems with program compatibility. However, if all settings are configured so that the user can proceed, this is also not suitable for beginners because the amount of learning required from the beginning will be too much and the device will be difficult to understand. These problems that occur in microcontroller experiment kits occur not only in PWM but also in various circuits such as analog/digital conversion circuits, asynchronous communication circuits, and synchronous communication circuits.

대한민국등록특허공보 제10-1735301호(2017.05.08)Republic of Korea Patent Publication No. 10-1735301 (2017.05.08)

본 발명은 초보자, 중급자 및 전문가 별로 레벨별 맞춤형 드라이버를 제공하는 마이크로컨트롤러 교육용 키트를 제공하기 위한 것이다.The present invention is to provide a microcontroller education kit that provides customized drivers for each level for beginners, intermediate users, and experts.

본 발명의 일 측면에 따르면, 마이크로컨트롤러 교육용 키트가 개시된다.According to one aspect of the present invention, a microcontroller education kit is disclosed.

본 발명의 실시예에 따른 마이크로컨트롤러 교육용 키트는, 하드웨어 장치, 사용자 소프트웨어 및 상기 하드웨어 장치와 상기 사용자 소프트웨어 사이에서 매개체 역할을 담당하며, 사용자의 레벨에 따라 레벨별 맞춤형 드라이버를 제공하는 하드웨어 드라이버를 포함한다.The microcontroller training kit according to an embodiment of the present invention includes a hardware device, user software, and a hardware driver that acts as an intermediary between the hardware device and the user software and provides a level-specific customized driver according to the user's level. do.

상기 레벨별 맞춤형 드라이버는 초보자용의 제1 레벨 드라이버, 중급자용의 제2 레벨 드라이버 및 전문가용의 제3 레벨 드라이버를 포함한다.The customized drivers for each level include a first level driver for beginners, a second level driver for intermediate users, and a third level driver for experts.

상기 제1 레벨 드라이버는, 사용자가 설정하는 미리 설정된 기본 기능을 제공하고, 상기 기본 기능을 제외한 나머지 기능은 미리 정의된 자동설정사항에 따라 설정한다.The first level driver provides preset basic functions set by the user, and sets the remaining functions excluding the basic functions according to predefined automatic settings.

상기 제2 레벨 드라이버는, 초기화 시 상기 제1 레벨 드라이버가 설정한 사항이 적용되고, 상기 사용자가 설정하는 상기 기본 기능 및 미리 설정된 중급자용 추가 기능을 제공하고, 상기 기본 기능 및 상기 중급자용 추가 기능을 제외한 나머지 기능은 미리 정의된 자동설정사항에 따라 설정한다.The second level driver applies the settings of the first level driver upon initialization, provides the basic function set by the user and a preset additional function for intermediate users, and provides the basic function and the additional function for intermediate users. Except for, the remaining functions are set according to predefined automatic settings.

상기 제3 레벨 드라이버는, 초기화 시 상기 제1 레벨 드라이버가 설정한 사항이 적용되고, 모든 설정사항을 사용자가 모두 개별 설정하는 기능을 제공한다.The third level driver applies the settings set by the first level driver upon initialization and provides a function for the user to individually set all settings.

본 발명의 실시예에 따른 마이크로컨트롤러 교육용 키트는, 초보자, 중급자 및 전문가 별로 레벨별 맞춤형 드라이버를 제공함으로써, 초보자부터 전문가 레벨의 모든 마이크로컨트롤러 학습자에게 적합한 드라이버가 제공되어 매우 효과적이고 편리한 학습이 이루어지게 할 수 있다.The microcontroller education kit according to an embodiment of the present invention provides customized drivers for each level for beginners, intermediates, and experts, providing drivers suitable for all microcontroller learners from beginners to expert levels to enable very effective and convenient learning. can do.

도 1은 종래의 실험 키트의 구성을 개략적으로 예시하여 나타낸 도면.
도 2는 PWM 기능 사용을 위한 설정의 예를 나타낸 도면.
도 3은 비주얼 베이직에서의 명령어 리스트 표시의 예를 나타낸 도면.
도 4는 본 발명의 실시예에 따른 마이크로컨트롤러 교육용 키트의 구성을 개략적으로 예시하여 나타낸 도면.
도 5는 비주얼 베이직에서의 모듈 설치 과정을 예시하여 나타낸 도면.
Figure 1 is a diagram schematically illustrating the configuration of a conventional experiment kit.
Figure 2 is a diagram showing an example of settings for using the PWM function.
Figure 3 is a diagram showing an example of a command list display in Visual Basic.
Figure 4 is a diagram schematically illustrating the configuration of a microcontroller education kit according to an embodiment of the present invention.
Figure 5 is a diagram illustrating the module installation process in Visual Basic.

본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.As used herein, singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, terms such as “consists of” or “comprises” should not be construed as necessarily including all of the various components or steps described in the specification, and some of the components or steps may be included in the specification. It may not be included, or it should be interpreted as including additional components or steps. In addition, terms such as "... unit" and "module" used in the specification refer to a unit that processes at least one function or operation, which may be implemented as hardware or software, or as a combination of hardware and software. .

이하, 본 발명의 다양한 실시예들을 첨부된 도면을 참조하여 상술하겠다. Hereinafter, various embodiments of the present invention will be described in detail with reference to the attached drawings.

도 3은 비주얼 베이직에서의 명령어 리스트 표시의 예를 나타낸 도면이다.Figure 3 is a diagram showing an example of a command list display in Visual Basic.

본 발명의 실시예에 따른 레벨별 맞춤형 드라이버는 3종류의 외부 파일 형태로 구성될 수 있다.The customized driver for each level according to an embodiment of the present invention may be composed of three types of external files.

우선, 제1 레벨 드라이버는 초보자를 위한 것으로서, 전술한 PWM의 경우, 기본적인 PWM 펄스폭 제어 기능만을 사용자가 이용할 수 있고, 나머지 기능들은 자동으로 설정한다. 이에 따라, 마이크로컨트롤러를 처음 학습하는 초보자의 경우라도 간단히 PWM의 개념을 습득하고, 동작상태를 확인할 수 있다. 이와 마찬가지로, 아날로그/디지털 변환회로, 비동기 통신회로, 동기식 통신회로 등도 사용자가 함수를 호출하면, 해당 하드웨어의 결과를 즉시 얻을 수 있도록 내부의 세부적인 사항들은 제1 레벨 드라이버가 자동으로 설정한다.First, the first level driver is for beginners. In the case of the aforementioned PWM, only the basic PWM pulse width control function can be used by the user, and the remaining functions are automatically set. Accordingly, even beginners who are learning microcontrollers for the first time can easily learn the concept of PWM and check the operating status. Likewise, when a user calls a function for analog/digital conversion circuits, asynchronous communication circuits, synchronous communication circuits, etc., the first level driver automatically sets the internal details so that the results of the corresponding hardware can be obtained immediately.

예를 들어, 본 발명의 실시예에 따른 마이크로컨트롤러 교육용 키트에 적용되는 제1 레벨 드라이버는 하기 표와 같이 나타낼 수 있다.For example, the first level driver applied to the microcontroller education kit according to an embodiment of the present invention can be represented as in the table below.

다음으로, 제2 레벨 드라이버는 중급자를 위한 것으로, 드라이버 초기화 시에는 기본적으로, 제1 레벨 드라이버가 설정하는 자동설정사항들이 적용되고, 제1 레벨 드라이버의 기능을 모두 제공한다. 다만, 제2 레벨 드라이버는 제1 레벨 드라이버에 자동으로 설정된 사항 중에서 중급자에게 필요한 사항들을 설정할 수 있는 기능을 제공한다. 예를 들어, 중급자가 설정할 수 있는 사항은 포트-A - F의 데이터 방향 제어 DDR(Data Direction Register), PWM 주파수 변경, 분해능 변경, ADC 분해능 변경, 변환속도 변경, 비동기 통신 BPS 변경, Stop bit, Parity 변경, 동기 통신 BPS 변경, Master/Slave 변경 등이 있다.Next, the second level driver is for intermediate users. When the driver is initialized, the automatic settings set by the first level driver are basically applied and all the functions of the first level driver are provided. However, the second level driver provides the ability to set the items necessary for intermediate users among the items automatically set in the first level driver. For example, the items that an intermediate level can set include data direction control DDR (Data Direction Register) of ports A - F, PWM frequency change, resolution change, ADC resolution change, conversion speed change, asynchronous communication BPS change, Stop bit, There are parity changes, synchronous communication BPS changes, Master/Slave changes, etc.

다음으로, 제3 레벨 드라이버는 전문가를 위한 것으로, 제2 레벨 드라이버와 마찬가지로, 초기화 시에는 기본적으로, 제1 레벨 드라이버가 설정하는 자동설정사항들이 적용되고, 제1 레벨 드라이버 및 제2 레벨 드라이버의 기능을 모두 제공한다. 또한, 제3 레벨 드라이버는 하드웨어 장치의 모든 설정사항을 사용자가 모두 개별 설정할 수 있는 기능을 제공한다.Next, the 3rd level driver is for experts, and like the 2nd level driver, the automatic settings set by the 1st level driver are basically applied during initialization, and the 1st level driver and the 2nd level driver are applied. Provides all functions. Additionally, the third level driver provides a function that allows the user to individually set all settings of the hardware device.

이와 같이, 제3 레벨 드라이버는 제1 레벨 드라이버 및 제2 레벨 드라이버를 모두 포함하므로, 사용자가 제3 레벨 드라이버에서 필요로 하는 부분만 사용할 수도 있다. 그러나, 비주얼 베이직이나 비주얼 C++과 같은 프로그래밍 언어 소프트웨어의 경우, 도 3에 도시된 바와 같이, 사용가능한 기능의 명령어 리스트가 자동으로 제공되어 이들 중에서 선택하여 사용하게 되는데, 초보자는 명령어 선택 시에 혼란을 겪을 수 있다. 그래서, 각 레벨 별로 사용되는 명령어 리스트만이 출력되어 초보자가 필요로 하는 것만 열람하고 선택하여 사용할 수 있도록, 개별 드라이버 파일로 구성될 필요가 있다.In this way, since the third level driver includes both the first level driver and the second level driver, the user may use only the parts needed from the third level driver. However, in the case of programming language software such as Visual Basic or Visual C++, as shown in Figure 3, a list of instructions for available functions is automatically provided and used by selecting from among them, but beginners may be confused when selecting instructions. You can experience it. Therefore, it is necessary to configure it as an individual driver file so that only the list of commands used for each level is output so that beginners can view, select, and use only those they need.

예를 들어, 제1 내지 제3 레벨 드라이버가 제공하는 기능의 명령어의 예는 하기 표와 같이 나타낼 수 있다.For example, examples of instructions for functions provided by first to third level drivers can be shown in the table below.

이러한 레벨별 맞춤형 드라이버의 레벨별 분류는 자동차 운전이 유사한 예가 될 수 있는데, 운전이 처음인 초보 운전자는 오로지 엑셀, 브레이크 및 핸들의 조작만으로도 벅찬 상황이다. 차량에는 이 외에도 각종 다양한 세부 장치들이 장착되어 있으므로, 비록 당장에 사용하지 않는다 할지라도 초보 운전자 입장에서는 매우 혼란스러운 것이다. 실제로, 초보 운전자가 운전할 때, 운전에 집중하다가 스위치를 잘못 조작해 와이퍼가 움직이는 경우가 자주 발생한다. 이 경우, 운전자는 자신이 무엇을 건드려 이와 같은 상황이 발생하였는지 몰라서 매우 당황하여 본래의 운전마저도 정상적으로 수행하기 어려운 상태에 도달한다.A similar example of this type of classification of customized drivers by level can be found in car driving, where a novice driver who is new to driving is in a daunting situation just by operating the accelerator, brake, and steering wheel. Vehicles are equipped with various other detailed devices, so even if they are not used right away, it can be very confusing for a novice driver. In fact, when beginner drivers are concentrating on driving, they frequently operate the switch incorrectly, causing the wipers to move. In this case, the driver is so embarrassed that he does not know what he touched that caused this situation, and reaches a state where it is difficult to even drive normally.

초보 운전자가 어느 정도 기본적인 운전에 익숙해지면, 방향지시등, 헤드라이트, 야간 미등, 경적 등의 조작을 습득하고, 이후 완전히 숙련되면, 안개등, 비상등, 기어 조작에 의한 엔진 브레이크 등의 차량의 세부적인 사항들을 조작하고 사용할 수 있을 것이다. 즉, 본 발명의 실시예에 따른 마이크로컨트롤러 교육용 키트는, 초보 운전자에게는 엑셀, 브레이크 및 핸들의 기본사항만이 차량에 부착되고, 다른 사항들은 아예 눈에 띄지 않는 내부에서 모두 자동으로 동작하도록 구성되고, 이후 어느 정도 운전에 익숙해지면, 다음 레벨로서 방향지시등 레버가 주어지고 헤드라이트 스위치가 주어지는 등으로 필요에 따라 기능들이 주어지는 것으로 볼 수 있다.Once a novice driver becomes familiar with basic driving to a certain extent, he or she learns to operate turn signals, headlights, nighttime taillights, and horns, and later, when he or she becomes fully proficient, he/she learns the details of the vehicle, such as fog lights, emergency lights, and engine braking by gear operation. You will be able to manipulate and use them. In other words, the microcontroller training kit according to an embodiment of the present invention is configured so that for a novice driver, only the basics of the accelerator, brake, and steering wheel are attached to the vehicle, and all other details are operated automatically inside the vehicle, completely out of sight. , After becoming accustomed to driving to a certain extent, functions can be seen as being given as needed, such as a turn signal lever and a headlight switch as the next level.

예를 들어, 본 발명의 실시예에 따른 마이크로컨트롤러 교육용 키트의 포트-C에는 다양한 기능을 포함하고 있으며, 하기 표와 같이 레벨별로 설정할 수 있다.For example, Port-C of the microcontroller training kit according to an embodiment of the present invention includes various functions and can be set by level as shown in the table below.

도 4는 본 발명의 실시예에 따른 마이크로컨트롤러 교육용 키트의 구성을 개략적으로 예시하여 나타낸 도면이고, 도 5는 비주얼 베이직에서의 모듈 설치 과정을 예시하여 나타낸 도면이다.Figure 4 is a diagram schematically illustrating the configuration of a microcontroller training kit according to an embodiment of the present invention, and Figure 5 is a diagram illustrating a module installation process in Visual Basic.

도 4를 참조하면, 본 발명의 실시예에 따른 마이크로컨트롤러 교육용 키트는, 하드웨어 장치(10), 사용자 소프트웨어(20) 및 하드웨어 드라이버(30)를 포함하여 구성될 수 있다.Referring to FIG. 4, a microcontroller training kit according to an embodiment of the present invention may be configured to include a hardware device 10, user software 20, and hardware driver 30.

여기서, 하드웨어 드라이버(30)는 하드웨어 장치(10)와 사용자 소프트웨어(20) 사이에서 매개체 역할을 담당하며, 도 4에 도시된 바와 같이, 사용자의 레벨에 따라 레벨별 맞춤형 드라이버(31, 32, 33)를 제공한다.Here, the hardware driver 30 serves as an intermediary between the hardware device 10 and the user software 20, and as shown in Figure 4, customized drivers 31, 32, and 33 for each level according to the user's level. ) is provided.

여기서, 레벨별 맞춤형 드라이버(31, 32, 33)는 초보자용의 제1 레벨 드라이버(31), 중급자용의 제2 레벨 드라이버(32) 및 전문가용의 제3 레벨 드라이버(33)를 포함할 수 있다.Here, the customized drivers 31, 32, and 33 for each level may include a first level driver 31 for beginners, a second level driver 32 for intermediate users, and a third level driver 33 for experts. there is.

예를 들어, 비주얼 계열 프로그래밍 언어 소프트웨어의 경우, 프로그램에 일종의 모듈 부품과 같이 끼워 넣어 사용하는 DLL(Dynamic Library Link)이라는 개념을 활용할 수 있다. 이는, 도 4에 도시된 바와 같이, 사용자가 소프트웨어에서 사용할 드라이버를 손쉽게 선택할 수 있는 것이다. 그리고, 도 5에 도시된 바와 같이, 비주얼 베이직에서 드라이버 모듈을 설치할 수 있다. 즉, 파일의 형태로 구성된 사용자가 필요로 하는 모듈을 마우스를 이용하여 비주얼 베이직에 집어다 올리면 곧바로 모듈이 설치되고, 이후에도 비주얼 베이직을 켜기만 하면 이 모듈이 항상 나타난다.For example, in the case of visual programming language software, you can utilize the concept of DLL (Dynamic Library Link), which is inserted into a program like a kind of module part. As shown in FIG. 4, the user can easily select the driver to use in the software. And, as shown in Figure 5, the driver module can be installed in Visual Basic. In other words, when the user places the module he or she needs in the form of a file into Visual Basic using the mouse, the module is installed immediately. Afterwards, this module always appears as soon as Visual Basic is turned on.

이후 학습자의 수준이 높아져 레벨을 변경하려면, 기존 설치되어 있던 모듈은 즉시 삭제가 가능하고, 새로운 레벨의 파일을 도 5에 도시된 바와 동일한 방법으로 다시 설치해 사용한다. 이때, 이전 레벨로 구성했던 프로그램의 경우, 더 높은 레벨은 하위 레벨의 명령어를 그대로 포함하고 있으므로, 이전과 동일하게 실행된다.If the learner's level increases and the level is changed, the previously installed module can be immediately deleted, and the file for the new level can be reinstalled and used in the same way as shown in Figure 5. At this time, in the case of a program composed of a previous level, the higher level contains the instructions of the lower level, so it is executed in the same way as before.

한편, 표준 C-언어인 ANSI-C(리눅스 등에서 사용되는 표준 C-언어)나 최근 유행하는 파이썬(Python), 코딩 교육용 언어인 스크래치(Scratch) 등과 같은 언어에서는 프로그램 코드의 첫 부분에 모듈을 포함시키도록 하는 "include" 명령어를 이용하면, 해당 모듈을 포함시켜 사용할 수 있다.Meanwhile, languages such as ANSI-C (the standard C-language used in Linux, etc.), the recently popular Python, and Scratch, a coding education language, include modules at the beginning of the program code. If you use the "include" command, you can include and use the module.

이와 같이 모듈의 선택이 가능하므로, 프로그래밍 키트의 교육현장에서, 학습 대상자에게 그 레벨에 맞는 드라이버만 공급해 주면, 학습자는 그 모듈에서 허용되는 명령어만 사용할 수 있고, 그 이외의 것은 자동으로 조절되므로, 매우 효과적이고 편리한 학습이 이루어질 수 있다. 이에 비해, 고급 기능이 필요한 연구소나 대학원 연구실 등에서는, 고급 레벨을 활용하여 하드웨어 장치의 세부적인 사항까지 모두 설정해 사용할 수 있으므로, 초보자부터 고급 사용자까지 모두 만족할 수 있는 하드웨어 드라이버의 선택이 가능하다.Since the selection of modules is possible in this way, in the training field of the programming kit, if only the driver appropriate for the level is supplied to the learner, the learner can use only the commands allowed by the module, and the rest are automatically adjusted. Very effective and convenient learning can be achieved. On the other hand, in research institutes or graduate laboratories that require advanced functions, the advanced level can be used to set up all the details of the hardware device, making it possible to select a hardware driver that will satisfy everyone from beginners to advanced users.

상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.The above-described embodiments of the present invention have been disclosed for illustrative purposes, and those skilled in the art will be able to make various modifications, changes, and additions within the spirit and scope of the present invention, and such modifications, changes, and additions will be possible. should be regarded as falling within the scope of the patent claims below.

10: 하드웨어 장치
20: 사용자 소프트웨어
30: 하드웨어 드라이버
31: 제1 레벨 드라이버
32: 제2 레벨 드라이버
33: 제3 레벨 드라이버
10: Hardware device
20: User software
30: Hardware drivers
31: First level driver
32: Second level driver
33: Third level driver

Claims (5)

마이크로컨트롤러 교육용 키트에 있어서,
하드웨어 장치;
사용자 소프트웨어; 및
상기 하드웨어 장치와 상기 사용자 소프트웨어 사이에서 매개체 역할을 담당하며, 사용자의 레벨에 따라 레벨별 맞춤형 드라이버를 제공하는 하드웨어 드라이버를 포함하되,
상기 레벨별 맞춤형 드라이버는 초보자용의 제1 레벨 드라이버, 중급자용의 제2 레벨 드라이버 및 전문가용의 제3 레벨 드라이버를 포함하고,
상기 제1 레벨 드라이버는, 사용자가 설정하는 미리 설정된 기본 기능을 제공하고, 상기 기본 기능을 제외한 나머지 기능은 미리 정의된 자동설정사항에 따라 설정하고,
상기 제2 레벨 드라이버는, 초기화 시 상기 제1 레벨 드라이버가 설정한 사항이 적용되고, 상기 사용자가 설정하는 상기 기본 기능 및 미리 설정된 중급자용 추가 기능을 제공하고, 상기 기본 기능 및 상기 중급자용 추가 기능을 제외한 나머지 기능은 미리 정의된 자동설정사항에 따라 설정하는 것을 특징으로 하는 마이크로컨트롤러 교육용 키트.
In the microcontroller education kit,
hardware device;
user software; and
Includes a hardware driver that acts as an intermediary between the hardware device and the user software and provides a level-specific customized driver according to the user's level,
The customized drivers for each level include a first level driver for beginners, a second level driver for intermediate users, and a third level driver for experts,
The first level driver provides preset basic functions set by the user, and sets the remaining functions except the basic functions according to predefined automatic settings,
The second level driver applies the settings of the first level driver upon initialization, provides the basic function set by the user and a preset additional function for intermediate users, and provides the basic function and the additional function for intermediate users. A microcontroller training kit where the remaining functions, except for, are set according to predefined automatic settings.
삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 제3 레벨 드라이버는, 초기화 시 상기 제1 레벨 드라이버가 설정한 사항이 적용되고, 모든 설정사항을 사용자가 모두 개별 설정하는 기능을 제공하는 것을 특징으로 하는 마이크로컨트롤러 교육용 키트.
According to paragraph 1,
The third level driver applies the settings set by the first level driver upon initialization and provides a function for the user to individually set all settings.
KR1020220102686A 2022-08-17 2022-08-17 Microcontroller Training Kit KR102625220B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220102686A KR102625220B1 (en) 2022-08-17 2022-08-17 Microcontroller Training Kit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220102686A KR102625220B1 (en) 2022-08-17 2022-08-17 Microcontroller Training Kit

Publications (1)

Publication Number Publication Date
KR102625220B1 true KR102625220B1 (en) 2024-01-15

Family

ID=89542840

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220102686A KR102625220B1 (en) 2022-08-17 2022-08-17 Microcontroller Training Kit

Country Status (1)

Country Link
KR (1) KR102625220B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101735301B1 (en) 2016-03-11 2017-05-15 (주)티앤원 Microcontroller Kit
KR20170002569U (en) * 2016-01-07 2017-07-17 (주)헬로소프트 arduino learning kit embed practice programs
KR20190109951A (en) * 2018-03-19 2019-09-27 조성건 Method and system for controlling spherical-shape robot for programming education
KR20210142305A (en) * 2020-05-18 2021-11-25 주식회사 씨앤알테크 AI-based coding coaching service system
KR20230007728A (en) * 2021-07-06 2023-01-13 김율 Educational video production and information provision service system using Arduino coding information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170002569U (en) * 2016-01-07 2017-07-17 (주)헬로소프트 arduino learning kit embed practice programs
KR101735301B1 (en) 2016-03-11 2017-05-15 (주)티앤원 Microcontroller Kit
KR20190109951A (en) * 2018-03-19 2019-09-27 조성건 Method and system for controlling spherical-shape robot for programming education
KR20210142305A (en) * 2020-05-18 2021-11-25 주식회사 씨앤알테크 AI-based coding coaching service system
KR20230007728A (en) * 2021-07-06 2023-01-13 김율 Educational video production and information provision service system using Arduino coding information

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
공개특허공보 제10-2019-0109951호(2019.9.27. 공개) 1부.*

Similar Documents

Publication Publication Date Title
EP1123842B1 (en) Driver assist system and control method for representation of information, for communication means and for actuators in a vehicle
US11794579B2 (en) Driving system for automated driving with a steering wheel display
DE102009060213A1 (en) Method for operating motor vehicle i.e. car, as driving simulator in garage, involves determining dynamic parameter during simulated driving, and controlling e.g. chassis system for simulating excitations by considering dynamic parameter
CN108230828B (en) Physical programming system and programming method
US20160167605A1 (en) Power window control apparatus and system
US20210237762A1 (en) Activation and Deactivation of a Driving Function for Automated Driving with Longitudinal and Transverse Guidance
DE102016120995A1 (en) User interface and method for inputting and outputting information in a vehicle
KR102625220B1 (en) Microcontroller Training Kit
KR102076308B1 (en) Method and system for controlling spherical-shape robot for programming education
EP1423290A1 (en) An apparatus and a device for using auxiliary control devices of a vehicle
JP2001171499A (en) Vehicle control method and device
US11465651B2 (en) Activation of a driving function for automated driving with longitudinal and transverse guidance via a different driving function for automated driving with a low degree of automation
CN106891721A (en) Vehicle shift system
CN105460207B (en) For providing the system and method for visual feedback in aircraft
JP6797472B2 (en) Vehicle system
CN112519795B (en) Automobile manual function demonstration system, automobile and method
US20210316764A1 (en) Method for transferring vehicle control from automated vehicle control to manual vehicle control
DE102011105435A1 (en) Operating device for driver assistance system for vehicles, has control device, with which driver assistance system is activated, such that automatic level, which is provided by different driver assistance modules, is adjusted
DE102011115168A1 (en) Method for controlling interior lighting of vehicle, involves controlling and adjusting outer brightness or personal preference of driver of vehicle, where interior lighting is function of clock
EP1306278A3 (en) Control device for a driving school vehicle and affiliated driving instructor post
US20230127363A1 (en) Device and Method for Controlling a Vehicle Function of a Vehicle
WO2018024367A1 (en) Method for determining control parameters for light sources of a vehicle headlamp
Michelfelder Driving While Beagleated.
US20200349857A1 (en) Virtual reality pc case / simulation chassis
US3940671A (en) Control circuit for amusement device

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant