CN217306014U - 非代码类手持编程装置 - Google Patents

非代码类手持编程装置 Download PDF

Info

Publication number
CN217306014U
CN217306014U CN202121889038.0U CN202121889038U CN217306014U CN 217306014 U CN217306014 U CN 217306014U CN 202121889038 U CN202121889038 U CN 202121889038U CN 217306014 U CN217306014 U CN 217306014U
Authority
CN
China
Prior art keywords
module
button
microprocessor
programming
programming device
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202121889038.0U
Other languages
English (en)
Inventor
张�林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Application granted granted Critical
Publication of CN217306014U publication Critical patent/CN217306014U/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/263Arrangements for using multiple switchable power supplies, e.g. battery and AC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • G06F1/305Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations in the event of power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
    • G06F15/0216Constructional details or arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
    • G06F15/0225User interface arrangements, e.g. keyboard, display; Interfaces to other computer systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
    • G06F15/025Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators adapted to a specific application
    • 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/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • G06F9/4486Formation of subprogram jump address
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells
    • 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
    • H04B5/70
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

本实用新型提供一种非代码类手持编程装置,通过按钮操作实现编写程序并进行程序运行及结果展示,其包含核心板,其上设置有核心板电路,其包含:输入模块、运算模块、存储模块、输出模块、电源模块及扩展模块。其中,输入模块包含若干按钮,其排布方式为手柄式布局,其中一侧为上、下、左、右四个方向按钮,另一侧为确认和返回两个功能按钮。其中,运算模块由微处理器与周边电路构成,微处理器上内置有操作系统固件程序。其中,输出模块包含若干单色LED灯、彩色LED灯、蜂鸣器、以及液晶屏。为非软件编程行业的非专业人士,提供了一套无需使用计算机,也无需预先学习门槛相对较高的编程语言的简单有效的学习设备。

Description

非代码类手持编程装置
技术领域
本实用新型涉及手持编程器领域,具体的指一种非代码类手持编程装置。
背景技术
近年来,编程课和单片机已经成为家长之间交流的热门话题,单片机编程的普及,一方面得益于开源硬件与软件带来的低成本,另一方面,软件上的图形化编程模式显著降低了学习编程的门槛与难度。从工程科学的角度来看,一个优秀的工程师首先需要具备良好的专业基础,在大量的实际项目中积累经验,才可能在未来的工作中更加高效地进行产能输出。从机电一体化的角度来衡量,做出一件合格的产品原型必须具备四个能够协调运作的、相辅相成的子系统(即四要素):机械、电子、软件和控制系统。而编程技术又是实现软件控制所不可或缺的必要工具与技能储备,这一技能的学习过程通常需要依赖在计算机的程序编辑器上文本输入编写程序并运行查看结果,这一操作过程就需要专门学习,并且复杂而枯燥,如果有一种学习方式与看得见摸得到的硬件相结合而又上手简单必将能够达到更好学习的效果。
发明人自2007年起在欧洲一所大学从事电子专业的理论与实践课程教学,并于2015年起开始尝试将专业性较强的电子与程序类教育内容引入中小学教学环境,以课外科技课和兴趣小组的形式对学生进行特长培养。根据以往的教学经验,大多数处于接受全面学科教育与课外教育阶段的中学生(尤其是国内的中学),并不具备长期学习代码编程技能的时间和精力,尤其是在大多数情况下图形化编程只作为了解,真正的编程训练基本上要到大学阶段才能更加深入有序地开展。而且,现有的非专业与低龄段编程教育中的拖拽式图形化编程载体多为手机和平板电脑,其学习过程更类似于解谜益智类游戏,并不具备与软件行业方向上更加深入、专业和高效率的代码类编程衔接的可能性,也无法对接电子行业所广泛采用的实际的电子器件与模块,相比较而言在科技教育这一主线上缺乏必要的延续性与承接性。并且,代码类编程通常要求有一定的英语基础,传统编程教育对计算机及机房也有一定的依赖。
基于上述问题,本实用新型提出一种基于流程图编程思维较为简单易学的半专业化编程方式,具体为通过一种非代码编程的手持设备的形式来实现无需依赖于计算机的编程思维培养与学习,围绕使用教程与基础案例进行编程思维的推广与教学,以期实现编程思维能够有效面向各个年龄段群体,在不需要具备编程基础或掌握任何编程语言的条件下,能够有效开展编程学习并获得显著成效,旨在从专业角度帮助非专业人士对流程图编程思维进行学习,为将来进一步走向代码编程打下一定基础。
目前,现有技术中与本实用新型最接近的技术方案为各微控制器厂商所广泛采用的计算机汇编语言。汇编语言和它的编程模型能够以较为清晰的结构将功能流程图转化为程序,与本案主推的流程图编程思维相近似。
但是,汇编语言的学习课程通常设置在大学专科或本科的电子及计算机类专业的二至三年级阶段,同时需要一定的数据手册学习基础。汇编语言的指令及参数通常为英文电子技术专业短语的首字母缩写,如Microchip公司产品中的MOVSF、PUSHL,Atmel公司产品中的RCALL,MOV等,对于非专业人士来说较为晦涩难懂。此外,汇编语言的学习通常需要较为专业的微控制器烧录机才能够将写好的程序烧录到单片机上,并至少需要使用面包板搭建较为专业复杂的外围电路才能使微控制器正常运行。因此现有技术中的计算机汇编语言及其所需专业背景知识不适用于非专业人士的编程教学。
实用新型内容
有鉴于先前技术的问题,本发明者认为应有一种改进的技术方案,为此设计一种非代码类手持编程装置,其具体的技术手段为:
本实用新型提供一种非代码类手持编程装置,通过按钮操作实现编写程序并进行程序运行及结果展示,其包含核心板,其上设置有核心板电路,其包含:输入模块、运算模块、存储模块、输出模块、电源模块及扩展模块。其中,上述输入模块包含若干按钮,其排布方式为手柄式布局,其中一侧为上、下、左、右四个方向按钮,另一侧为确认和返回两个功能按钮。其中,上述运算模块由微处理器与周边电路构成,上述微处理器上内置有操作系统固件程序,上述微处理器通过其上的各管脚分别与上述输入模块、上述存储模块、上述输出模块、上述电源模块及上述扩展模块的各元器件管脚连接,并通过上述操作系统固件程序读取及解释上述微处理器连接的各器件传感器的数值。其中,上述输出模块包含若干单色LED灯、彩色LED灯、蜂鸣器、以及液晶屏,其中上述液晶屏通过扩展插口与上述微处理器连接。其中,上述电源模块包含电源开关,Micro USB接口,限流保险以及集成电路。其中,上述存储模块包含若干排母接口,用于连接外部存储设备。其中,上述扩展模块包含若干单排排母的扩展孔位,其布局采用上下两面非对称分布方式。
进一步的,上述输入模块在方向键上键和左键之间还设有一个功能按键FUNC,其作为组合键或切换功能时使用。
进一步的,上述微处理器通过上述操作系统固件程序与上述输入模块的若干按钮交互通信完成用户操作及程序编写,具体包含对程序的编辑、存取、运行、调试、查看运行状态及运行结果、显示内部存储空间的数据。
进一步的,上述输出模块包含八个可编程控制的单色LED灯,按照左右各四个分为两组,其中左侧的四个单色LED灯均为白色,右侧的四个单色LED灯分别为绿、黄、橙、红四种颜色。
进一步的,上述输出模块包含一块编程操作屏以及一块信息显示屏,其中上述编程操作屏为LCD1602双行16字符液晶屏,上述信息显示屏为128x64点阵型OLED液晶屏。
进一步的,还包含扩展板,其连接至上述核心板的上述扩展模块中向下的排母孔位,并可同时连接6个具有I2C接口的模块。
进一步的,上述核心板还包含设置于左侧中部的固件更新预留接口。上述核心板还包含设置于左侧上部的四孔排母插座,用于连接预置的特定功能的I2C芯片驱动。
进一步的,上述核心板为正反双面布线,布线之外的空白区域采用覆铜处理,且在上述电源模块设有散热铜区。
进一步的,上述微处理器位于上述核心板的正面中部偏上位置,其为48管脚的QFP封装。上述按钮模块的按钮位于上述核心板下部,可由六个6 x 6 毫米的方底微动开关组成。
进一步的,上述电源模块的上述Micro USB接口位于上述核心板的右侧中部位置,其用于上述核心板的供电并可同时连接其他设备。上述存储模块为闪存模块预留的排母接口位于上述核心板的正面右上部。
本实用新型一种非代码类手持编程装置,其核心优势是为非软件编程行业的非专业人士,以及对编程思维及编程逻辑有学习需要的群体提供了一套有效的学习器材。无需使用计算机,也无需预先学习门槛相对较高的编程语言,只需适当掌握进制转换的基础知识以及顺序执行思维,便可通过按钮操作数字化指令代码形式代替输入英文指令,进行编程训练,获得程序运行结果,大大降低了编程思维的学习难度。同时注重电子技术与相关知识的拓展,用户能够通过一系列电子模块以及电路搭建,有针对性地对电子技术进行学习。其进一步具有如下有益效果:
(1)非代码类手持编程装置小巧灵活,在普通环境中能够以大班的形式开展课程,无需占用机房资源,随时随地均可开展编程的学习。
(2)非代码类手持编程装置核心板上用户输入模块内的用户输入按钮以传统手柄的方式排布,使用手柄操作配合预置的指令集进行功能编程和编程思维的学习。手柄式的按键布局使用普遍,各年龄段接受度高,无需特殊学习即可快速上手。并且手柄上设有的组合按钮在普通运行模式下最多为两个,在程序单步调试运行模式下最多为三个,组合数量有限,在提高趣味性的同时保持了操作低复杂度的优点。同时使用按钮作为输入媒介又避免了汇编语言的高门槛,以数字化指令代码的形式代替了英文指令,简单直观,操作方便,有利于降低编程思维的学习难度。
(3)非代码类手持编程装置的核心板上设有存储模块,其包含若干个排母接口可以连接类似闪存模块的存储模块用于将用户生成的程序存储到多个区域,从而为编程学习中程序的反复设计及打磨提供了有效支持。
(4)非代码类手持编程装置的核心板上的输出模块包含有两个液晶显示屏,分别由于程序编辑以及执行信息显示,并设有多个LED灯,以及蜂鸣器,使得用户在编程学习中的交互体验更丰富直观,进一步提升学习效率及兴趣。
(5)非代码类手持编程装置的核心板上设有扩展模块,其包含的若干单排排母的扩展孔位,可与扩展板及其他外部电子设备连接,例如接入计算机进行代码输入,并且也能够通过连接蓝牙模块与他人共享自己所写的程序,从而为用户提供了更丰富的编程方式,学习过程更加灵活方便。
(6)非代码类手持编程装置的电源模块可通过USB电源或电池供电,并配有限流保险,若因任何问题发生短路造成大电流,限流保险将自动断开,避免损坏USB电源,保证用户的使用安全。
(7)非代码类手持编程装置的采用国际主流的主板芯片及通用的电子器件,制造通用性强,且器件价格实惠,生产性价比较高,具有很高的经济价值。
附图说明
图1为本实用新型的非代码类手持编程装置的核心板各器件功能模块布置的立体效果俯视图。
图2为本实用新型的非代码类手持编程装置的核心板连接液晶屏后器件布置的立体效果俯视图。
图3a,图3b为本实用新型的非代码类手持编程装置的核心板正反面元器件布置平面图,图3a为正面,图3b为反面。
图4a,图4b 为本实用新型的非代码类手持编程装置的核心板正反面布线图, 图4a为正面,图4b为反面。
图5为本实用新型的非代码类手持编程装置的扩展板带有部分元器件及接口的实物图。
图6为本实用新型的非代码类手持编程装置的核心板电路中输入模块的各元器件及电路布置实例图。
图7为本实用新型的非代码类手持编程装置的核心板电路中运算模块的各元器件及电路布置实例图。
图8为本实用新型的非代码类手持编程装置的核心板电路中存储模块的各元器件及电路布置实例图。
图9为本实用新型的非代码类手持编程装置的核心板电路中输出模块的各元器件及电路布置实例图。
图10为本实用新型的非代码类手持编程装置的核心板电路中电源模块的各元器件及电路布置实例图。
图11为本实用新型的非代码类手持编程装置的核心板电路中扩展模块的各元器件及电路布置实例图。
图12为本实用新型的非代码类手持编程装置的编程操作屏上展示的系统菜单实例图。
图13为本实用新型的非代码类手持编程装置的编程操作屏上展示的数字化程序行描述信息实例图。
具体实施方式
如图1及图2所示,其展示了本实用新型的非代码类手持编程装置的核心板各元器件功能模块分布情况,核心板100上设置有核心板电路,其包含:输入模块20、运算模块10、存储模块30、输出模块60、电源模块40及扩展模块50。其中,该输入模块20包含若干按钮21,其排布方式为手柄式布局,其中一侧为上、下、左、右四个方向按钮,另一侧为确认和返回两个功能按钮。其中,该运算模块10由微处理器11与周边电路构成,该微处理器11上内置有操作系统固件程序,该微处理器11通过其上的各管脚分别与该输入模块20、该存储模块30、该输出模块60、该电源模块40及该扩展模块50的各器件管脚连接,并通过该操作系统固件程序读取及解释该微处理器11连接的各器件传感器的数值;其中,该输出模块60包含若干单色LED灯、彩色LED灯、蜂鸣器、以及液晶屏,其中该液晶屏通过扩展插口与该微处理器11连接;其中,该电源模块40包含电源开关,Micro USB接口,限流保险以及集成电路;其中,该存储模块30包含若干排母接口,用于连接外部存储设备;其中,该扩展模块50包含若干单排排母的扩展孔位,其布局采用上下两面非对称分布方式。
优选的,如图1及图3a、3b所示,该输入模块20位于核心板下部,可由六个6 x 6 毫米的方底微动开关组成。其中,在方向键上键和左键之间还设有一个功能按键FUNC22,作为组合键或切换功能时使用。此外,编程器上还设有两个微动贴片按钮。上述类似手柄按钮排布的按键上、下、左、右、确认和返回按钮分别连接于微处理器的PB5、PB8、PB9、PC13、PC14和PC15管脚,功能按键FUNC连接至PA0管脚。手柄式的按键布局使用普遍,各年龄段接受度高,无需特殊学习即可快速上手。
优选的,如图1及图3a、3b所示,该微处理器11位于核心板100正面中部偏上位置,为48管脚的QFP(方型扁平式封装技术 Quad Flat Package)封装。其周围还布置有微处理器启动运行所需的、包括晶振(参考图5中编号Y1的器件)在内的外部电路及电容电阻等器件。核心板中所涉贴片电容电阻较多,参考编号均以C或R开头的编号形式标识(例如,图5中编号C12, R22的器件)。具体可采用STM32F103CBT6型号微处理器芯片及8MHz 贴片晶振。该微处理器11通过所述操作系统固件程序与该输入模块20的若干按钮交互通信完成用户操作及程序编写,具体包含对程序的编辑、存取、运行、调试、查看运行状态及运行结果、显示内部存储空间的数据。从而配合硬件整体实现了以数字化指令代码的形式代替了英文指令,简单直观,操作方便,避免了汇编语言的高门槛,有利于降低编程思维的学习难度。
优选的,如图2及图3a、3b所示,在核心板100的中上部设置了一个可以使用程序控制的蜂鸣器和八个单色LED灯,其中该蜂鸣器的类型为12 x 9.6 有源蜂鸣器,LED灯为标准的0805封装LED。八个单色LED灯分为两组,其中左侧四个均为白色,右侧四个分别为绿、黄、橙、红四种颜色。左侧四个白色LED灯允许使用PWM(Pulse Width Modulation 脉宽调制)信号进行亮度控制,右侧四个使用标准的开关模式控制亮灭。从左到右的八个LED灯分别连接到微处理器的PB1、PB0、PB3、PB4、PA8、PA9,PA10、PA15管脚。此外还包含一个WS2812B全彩色LED灯,两块液晶屏分别为编程操作屏61以及信息显示屏62,其中,该编程操作屏61为LCD1602双行16字符液晶屏,该信息显示屏62为128x64点阵型OLED液晶屏。
其中,如图3a所示,核心板100正面中部的白色方框为0.96英寸OLED液晶信息显示屏的预留插口,位于方框顶部的四个孔位分别为GND、3.3V、SCL和SDA插口。如图2所示,该OLED液晶信息显示屏62用于在编程过程中实时查看内部寄存器的数值、使用指令绘图、查看程序、显示时间日期、显示已保存的贴图。其中SCL和SDA对应微处理器的PB6和PB7管脚。
其中,如图2所示,位于核心板100左上部的XH-2.54插座用于连接I2C接口的LCD1602液晶编程操作屏61。该编程操作屏62用于显示JoyKit OS 操作系统界面与程序输入界面的信息。从上到下的四个孔位分别连接到GND、VCC、SDA和SCL,其中VCC为USB供电或通过扩展板进行供电的5V电压,GND为核心板接地位。其中SCL和SDA对应微处理器的PB6和PB7管脚。
优选的,如图1及图3a所示,该电源模块40通过USB电源或电池供电,配有一个限流保险,若因任何问题发生短路造成大电流,限流保险将自动断开,避免损坏USB电源。其中,该核心板100右侧中部为Micro USB接口(参考图3a中编号U2),在电源开关(参考图3a中编号SW2)连通的状态下,可通过USB接口为核心板供电。这一接口同时具备供电和USB数据传输功能,可通过USB数据线连接至计算机等设备进行数据交换。其中,Micro USB接口的数据管脚D-和D+分别通过串联20Ω电阻的方式连接至微处理器的PA11和PA12管脚。手持编程装置支持通过板载的USB接口,以及扩展板上的串口进行程序行的读取和写入,能够根据需要完全脱离按钮输入,在手机或计算机端进行编程,为学习者提供了更灵活且丰富的编程学习方式。
优选的,如图1及图3a所示,该存储模块30包含的若干排母接口,可以为W25Q闪存模块提供排母接口,使用者可将编辑的程序存储在闪存里,供后续读取修改或继续编辑。其中,闪存模块(参考图3a中编号U3)的预留位置在核心板正面右上部,该芯片可通过微处理器上的SPI串行外设接口进行访问。其中,闪存模块上SPI的四个信号管脚MOSI、MISO、SCK及SS分别连接至微处理器的PA7、PA6、PA5和PA4管脚。
优选的,如图1及图3a所示,按照核心电路板上文字丝印可读方向为正向,此方向面向使用者时,该扩展模块50的20孔排母在上侧,18孔排母在下侧。这一非对称设计的目的之一在于使用者在连接扩展板时更方便对齐,防止反插造成的电路损坏。其中,排母上各孔位与核心板100上的芯片、电源等元器件的管脚相连接,用于连接扩展板。
此外,如图3a所示,非代码类手持编程装置的核心板上预置了若干特定功能的I2C芯片驱动,在核心板上可通过位于该核心板左上部的四孔排母插座(参考图中编号J17)进行连接。该J17插座自上而下的四个孔位分别连接了微处理器的3.3V,GND,PB6和PB7管脚(即I2C信号的SCL和SDA)。手持编程器装置的核心板上还为固件更新预留了接口,可通过其左侧中部的四孔(参考图3a中编号J1)进行固件烧写。其从上到下的四个孔位分别连接到3.3V,SWIO,SWCLK和GND。其中SWIO和SWCLK对应微处理器的PA13和PA14管脚。
如图4a、4b所示的本实用新型的非代码类手持编程装置的核心板正反面布线图,其中核心电路板为双面设计(图4a为正面布线图,图4b为反面布线图)。其中在双面布线的空白区域采用覆铜处理,并为电源芯片AMS1117-3.3所在区域设计了散热铜区,该铜区的网络为3.3V,板上其余覆铜区域网络为GND,确保电源芯片的散热安全。
如图5所示,非代码类手持编程装置的扩展板200与核心板100具体的连接方式为:将核心板上的包含四个数字输出信号(其与核心板上部右侧四个单色LED灯共用管脚)、四个PWM信号(其与核心板上部左侧四个单色LED灯共用管脚)、四个模拟输入信号(ADS1115的模拟数据采集管脚),四个数字输入信号、两个串行接口、全彩色LED灯接口,I2C总线引至扩展板上的排针、排母或XH2.54型插座。该扩展板可同时连接6个I2C接口的模块,其中三个I2C接口位已为特定的颜色识别传感器(图5中标号1)、温湿度传感器(图5中标号2)、RTC时钟模块预留(图5中标号3)。该扩展板200为核心板100提供一定数量的额外接口以连接更多的传感器、驱动器以及通信模块等,用于丰富手持编程器的可编程功能。
如图6至图11所示,其为本实用新型的非代码类手持编程装置的核心板电路分模块电路图,展示了各个模块的元器件布置电路的实施例情况,均采用国际主流的主板芯片及通用的电子器件,制造通用性强,且器件价格实惠,生产性价比较高。
其中,该核心板上的各模块可包含下列直接焊接在板上的不可拆卸或替换的元器件:
• STM32F103CBT6型号微处理器芯片;
•模数转换芯片ADS1115;
• 3.3V电压转换芯片AMS1117-3.3;
• WS2812B全彩色LED灯;
• Micro USB 插口;
•单色贴片电源指示LED灯1个;
• 8MHz 贴片晶振;
•贴片电流保险;
•保障各元器件正常工作所需的贴片电容、电阻;
•蜂鸣器;
•用户可编程的单色贴片LED灯 8个;
•用于用户输入的按钮型微动开关7个;
•用于复位单片机的按钮型微动开关1个;
•用于连通或断开USB电源的拨码开关1个。
其中,该核心板上的扩展模块可预留以下专用扩展接口位,用于连接可拆卸或替换的扩展电子模块:
•四孔HX2.54插座:用于连接显示编程界面的编程操作屏幕;
•四孔普通排母1:用于连接OLED信息显示屏幕;
•四孔普通排母2:用于连接MPU6050模块;
•四孔插孔:用于编程器固件升级;
•六孔普通排母:用于连接W25Q系列Flash存储模块;
•十八孔普通排母与二十孔普通排母:用于连接基础的扩展板。
优选的,本实用新型非代码类手持编程装置的核心板100上的微处理器11中内置的操作系统固件程序为一套命名为JoyKit OS的迷你操作系统,其使用C/C++混合代码在STM32CubeIDE开发环境中实现。所述操作系统固件程序采用核心板上的若干按钮作为输入媒介,通过按钮进行用户操作及程序编写,具体包含对程序的编辑、存取、运行、调试、查看运行状态及运行结果、显示内部存储空间的数据。在操作的过程中,编程操作屏LCD1602和信息显示屏OLED可以被视为计算机上的显示器,供使用者获取系统反馈,查看程序的运行结果、内部寄存器的数据、所连接的外设模块的数据及连接状态。
本实用新型非代码类手持编程装置可按照如下操作步骤实现编写程序并进行程序运行及结果展示:
A1:开启主机,微处理器进行系统初始化:对所支持的I2C接口芯片进行初始化并检查连接状态,同时将初始化所有寄存器的值为零。
A2:展示系统菜单:如图12所示,在LCD1602编程操作屏上展示“1.EDIT”、“2.RUN”、“3.SAVE”、“4.LOAD”四个菜单项目,分别指向编辑,运行,存储和读取四个界面。
A3:用户操控输入模块的按钮:获取当前按下的按钮选择的步骤A2中的菜单项目的序号并执行对应的操作。具体为:
A3-1:通过按钮选择“1.EDIT”菜单进行编辑操作,在LCD1602编程操作屏上显示当前程序行(包括行号、指令、运算元信息),初此进入编辑页面默认为第000行,通过按钮对于程序行的指令及运算元进行逐行编辑,最后使用组合键退出编辑界面;
A3-2:通过按钮选择“2.RUN”运行程序,如图13所示,按照A3-1编辑的程序行排列顺序逐行解释程序并在息显示屏OLED上展示执行状态及结果信息,在顺序执行过程中可通过点击“左”按钮重置到第000行程序重新执行,也可通过点击“上”按钮进入单步调试模式,程序将停止顺序自动执行,当用户点击“下”按钮后才会移动至后一程序行并运行该行程序指令,同时也可以通过点击“左”按钮重置到第000行程序,并可通过点击“右”按钮退出调试模式,最后使用组合键退出运行界面;
A3-3:通过按钮选择“3.SAVE”存储程序,在LCD1602编程操作屏上显示程序的编号,并可通过左右按钮进行选择,之后点击功能按钮“确认”将编辑的程序保存至外部闪存模块,或点击“返回”按钮取消保存并退出存储界面;
A3-4:通过按钮选择“4.LOAD”,在LCD1602编程操作屏上显示程序的编号,并可通过左右按钮进行选择,之后点击功能按钮“确认”展示程序内容信息,或点击“返回”按钮退出读取界面。
由上述可知,本实用新型创新的提出一种非代码类手持编程装置,其核心优势是为非软件编程行业的非专业人士,以及对编程思维及编程逻辑有学习需要的群体提供了一套有效的学习器材。无需使用计算机,也无需预先学习门槛相对较高的编程语言,只需适当掌握进制转换的基础知识以及顺序执行思维,便可通过本实用新型的按钮操作实现数字化指令代码形式代替英文指令,进行编程训练,获得程序运行结果,大大降低了编程思维的学习难度。

Claims (9)

1.非代码类手持编程装置,其特征在于:通过按钮操作实现编写程序并进行程序运行及结果展示,其包含核心板(100),其上设置有核心板电路,其包含:输入模块(20)、运算模块(10)、存储模块(30)、输出模块(60)、电源模块(40)及扩展模块(50);
其中,所述输入模块(20)包含若干按钮(21),其排布方式为手柄式布局,其中一侧为上、下、左、右四个方向按钮,另一侧为确认和返回两个功能按钮;
其中,所述运算模块(10)由微处理器(11)与周边电路构成,所述微处理器(11)上内置有操作系统固件程序,所述微处理器(11)通过其上的各管脚分别与所述输入模块(20)、所述存储模块(30)、所述输出模块(60)、所述电源模块(40)及所述扩展模块(50)的各元器件管脚连接,并通过所述操作系统固件程序读取及解释所述微处理器(11)连接的各器件传感器的数值;
其中,所述输出模块(60)包含若干单色LED灯、彩色LED灯、蜂鸣器、以及液晶屏,其中所述液晶屏通过扩展插口与所述微处理器(11)连接;
其中,所述电源模块(40)包含电源开关,Micro USB接口,限流保险以及集成电路;
其中,所述存储模块(30)包含若干排母接口,用于连接外部存储设备;
其中,所述扩展模块(50)包含若干单排排母的扩展孔位,其布局采用上下两面非对称分布方式;
所述微处理器(11)通过所述操作系统固件程序与所述输入模块(20)的若干按钮交互通信完成用户操作及程序编写,具体包含对程序的编辑、存取、运行、调试、查看运行状态及运行结果、显示内部存储空间的数据。
2.如权利要求1所述的非代码类手持编程装置,其特征在于:所述输入模块(20)在方向键上键和左键之间还设有一个功能按键FUNC(12),其作为组合键或切换功能时使用。
3.如权利要求1所述的非代码类手持编程装置,其特征在于:所述输出模块(60)包含八个可编程控制的单色LED灯,按照左右各四个分为两组,其中左侧的四个单色LED灯均为白色,右侧的四个单色LED灯分别为绿、黄、橙、红四种颜色。
4.如权利要求1所述的非代码类手持编程装置,其特征在于:所述输出模块(60)包含一块编程操作屏(61)以及一块信息显示屏(62),其中所述编程操作屏(61)为LCD1602双行16字符液晶屏,所述信息显示屏(62)为128x64点阵型OLED液晶屏。
5.如权利要求1所述的非代码类手持编程装置,其特征在于:还包含扩展板(200),其连接至所述核心板(100)的所述扩展模块(50)中向下的排母孔位,并可同时连接6个具有I2C接口的模块。
6.如权利要求1所述的非代码类手持编程装置,其特征在于:所述核心板(100)还包含设置于左侧中部的固件更新预留接口;
所述核心板(100)还包含设置于左侧上部的四孔排母插座,用于连接预置的I2C芯片驱动。
7.如权利要求1所述的非代码类手持编程装置,其特征在于:所述核心板(100)为正反双面布线,布线之外的空白区域采用覆铜处理,且在所述电源模块(40)设有散热铜区。
8.如权利要求1所述的非代码类手持编程装置,其特征在于:所述微处理器(11)位于所述核心板的正面中部偏上位置,其为48管脚的QFP封装;
按钮模块的按钮位于所述核心板(100)下部,可由六个6 x 6 毫米的方底微动开关组成。
9.如权利要求1所述的非代码类手持编程装置,其特征在于:所述电源模块(40)的所述Micro USB接口位于所述核心板(100)的右侧中部位置,其用于所述核心板(100)的供电并可同时连接其他设备;
所述存储模块(30)为闪存模块预留的排母接口位于所述核心板(100)的正面右上部。
CN202121889038.0U 2021-03-17 2021-08-12 非代码类手持编程装置 Active CN217306014U (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110288507 2021-03-17
CN2021102885071 2021-03-17

Publications (1)

Publication Number Publication Date
CN217306014U true CN217306014U (zh) 2022-08-26

Family

ID=78789173

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202121889038.0U Active CN217306014U (zh) 2021-03-17 2021-08-12 非代码类手持编程装置
CN202110926022.0A Withdrawn CN113760256A (zh) 2021-03-17 2021-08-12 非代码类编程方法及使用该编程方法的手持编程装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202110926022.0A Withdrawn CN113760256A (zh) 2021-03-17 2021-08-12 非代码类编程方法及使用该编程方法的手持编程装置

Country Status (1)

Country Link
CN (2) CN217306014U (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113760256A (zh) * 2021-03-17 2021-12-07 张�林 非代码类编程方法及使用该编程方法的手持编程装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116700134B (zh) * 2023-08-08 2023-10-27 华软盛科技有限公司 一种可以简化代码的工业数控方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050216895A1 (en) * 2004-03-23 2005-09-29 Tran Hieu T Method and apparatus for remote debugging of kernel and application software
US20130290693A1 (en) * 2012-04-27 2013-10-31 Esencia Technologies Inc. Method and Apparatus for the Automatic Generation of RTL from an Untimed C or C++ Description as a Fine-Grained Specialization of a Micro-processor Soft Core
CN110554863A (zh) * 2018-05-31 2019-12-10 宁波科安网信通讯科技有限公司 一种类集成电路的图形化编程方法
CN109471622A (zh) * 2018-11-02 2019-03-15 成都娄外科技有限公司 一种程序编辑方法和装置
CN217306014U (zh) * 2021-03-17 2022-08-26 张�林 非代码类手持编程装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113760256A (zh) * 2021-03-17 2021-12-07 张�林 非代码类编程方法及使用该编程方法的手持编程装置

Also Published As

Publication number Publication date
CN113760256A (zh) 2021-12-07

Similar Documents

Publication Publication Date Title
CN217306014U (zh) 非代码类手持编程装置
CN102157091B (zh) 一种钢琴学习信息生成处理方法
CN105913739A (zh) 基于虚拟仿真平台的单片机模块化实验实训系统及方法
CN209591134U (zh) 一种可用于教学的兼容型硬件编程电子积木系统
KR20180026714A (ko) 코딩 툴 키트
KR20170135481A (ko) 코딩 툴 키트
CN104900121B (zh) 一种基于智能评价的数字电子技术实验系统及方法
CN102693658A (zh) 多功能可编程逻辑器件cpld开发板
CN202871158U (zh) 一种单片机实验教学开发板
CN202171889U (zh) 便携通用型cpld/fpga教学实验仪
CN202171892U (zh) 数字系统设计教学平台
CN203397577U (zh) 分离式fpga实验箱
CN212933911U (zh) 一种基于Esp8266的物联网学习实验板
CN202258050U (zh) 一种新型数字电子技术与单片机综合实验箱
CN210091512U (zh) 核心板可替换的模块化fpga实验板
CN110021216A (zh) 口袋式物联网实验平台及其实验使用方法
CN211375968U (zh) 一种电子计算器儿童益智教具
CN220232611U (zh) 具备通信和情景化实验功能的单片机实验装置
CN211403648U (zh) 一种新型学习用编程学习机
CN207189662U (zh) 基于arm的教育机器人的控制系统
CN203165312U (zh) 一种开放式单片机实验板
CN209183082U (zh) 一种综合电子线路和fpga课程的实验教学装置
Ali et al. Module-based Edukit for teaching and learning 8051 microcontroller programming
Кривонос et al. The use of visual electronic circuits modelling and designing software Fritzing in the educational process
CN202183180U (zh) 一种plc综合实验箱

Legal Events

Date Code Title Description
GR01 Patent grant
GR01 Patent grant