同步操作将从 FlameAI/SIGer 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
梁山派的探秘(考古)终于有了新的深度,当我写下 “全栈开发能力” 的时刻,也是我对梁山派的期许(同学们可以认真地研究下)加倍的时刻。选择吴工肝代码的视频作为封面,是对他的点赞,相信一定又是一个个连续奋战的夜晚,尽管版本号只有 0.1,我相信随着更多伙伴加入,小数点一定会快速跳变到1的后面的。期待这个时刻的到来。此时此刻,我已经构想出了,新扩展板的样貌啦,这几天刷屏的 “胸有成竹” 让我放弃了这个词,永远在路上是开源社区的标准配置,一起加油。
序列 | 教程 | 在线案例 |
---|---|---|
00 | 10分钟快速入门 | 10分钟快速入门案例 |
01 | 梁山Pi资料下载 | |
02 | 寄存器和库函数介绍 | |
03 | LED灯原理介绍 | |
04 | 寄存器点亮LED | 寄存器点亮LED案例 |
05 | 库函数点亮LED | 库函数点亮LED案例 |
06 | 滴答定时器 | 滴答定时器案例 |
07 | 位带操作 | 位带操作案例 |
09 | 串口通信原理介绍 | |
10 | 串口打印信息 | 串口打印信息案例 |
11 | 独立按键原理介绍 | |
12 | 按键点灯 | 按键点灯案例 |
13 | 中断原理介绍 | |
14 | 外部中断按键点灯 | 外部中断按键点灯案例 |
15 | 定时器原理介绍 | |
16 | 定时器灯闪烁 | 定时器灯闪烁案例 |
17 | PWM原理介绍 | |
18 | PWM呼吸灯 | PWM呼吸灯案例 |
19 | DMA原理介绍 | |
20 | 串口DMA接收和中断接收 | 在线案例 |
21 | MDK开发环境 | |
22 | 工程模板创建 | |
23 | VSCode安装 |
《版本修订详情表》
版本记录 | 编写人 | 修改日期 | 版本说明 |
---|---|---|---|
1.0 | 卓俊鸿 | 2022-10-19 | 立创·梁山派入门学习引导手册初版 |
这份引导手册主要是为了帮助用户快速了解我们立创·梁山派开发板,以及给大家后续学习起到一个引导的作用。如果你在学习立创·梁山派的过程中遇到了困难或者解决不了的问题,可以到我们的立创开发板官方网站或是立创开源平台进行提问,我们的技术人员将会给你提供帮助。最后,如果你好的建议,欢迎你到立创开发板官方网站进行留言。
图1 立创·梁山派开放板页面图
图2 立创·梁山派开放板资料
下载完资料包我们可以查看到以下目录结构,下面对各个文件夹进行详细的介绍。
图3 立创·梁山派资源包
表1 立创·梁山派开发板硬件资源详情表
资源 | 分配 |
---|---|
微控制器 | GD32F450ZGT6 |
按键 | 3个,RESET,BOOT0,KEY_UP |
LED | 4个 |
电源指示灯 | 1个 |
SWD下载接口 | 1个 |
USB接口 | 1个 |
屏幕接口 | 2个,RGB565和8080并口 |
SD卡槽 | 1个 |
P1引出IO口 | 40PIN |
P2引出IO口 | 40PIN |
FLASH | 1个,W25Q128 |
SDRAM | 1个,W9825G6KH-6I |
图4 立创·梁山派硬件资源分布图
选择合适的开发工具,先完成一个流水灯的实验,提高自己的学习兴趣。俗话说,工欲善其事,必先利其器,所以为了让大家可以快速上手立创·梁山派开发板,我们为大家准备了在线编译网站,无需安装和配置各种环境,只需在线一键下载即可将我们的程序烧录到我们的开发板,从而看到我们想要看到的现象,这给新手朋友提供了极大的便利性,所以这里强烈推荐新手使用立创·梁山派开发板的在线编译器。此外,立创·梁山派开发板配套教程不仅适用新手入门的朋友,同样也适用于有单片机基础的同学,因为我们有基于立创·梁山派开发板的扩展板独立项目开发,通过项目实战帮助大家提高软硬件能力。
这里教大家一分钟快速点灯验证开发板,以及如何使用使用在线编译器烧写程序。
图5 硬件连接示意图
图6 在线编辑器界面图
图7 在线编辑器使用步骤图
图8 进入ISP步骤图
图9 实验效果图
通过上述的流水灯实验,相信你已经被它的魅力所吸引。那么,你知道它的具体实现原理吗?不知道并没有关系,因为通过这个阶段的学习,你将彻底明白它的原理。所以在这个阶段,你将会学习到很多关于单片机底层原理的知识。
当你掌握了基本的单片机知识后,就可以开始做一个简单的项目作为实践了。我们在立创开发板官网开放了交通灯和智能小车等案例供大家学习参考。我们后续也会带领大家学习GD32高级应用项目实战,从硬件原理到软件实现,再到实物演示,一步步给大家进行讲解。
图10 交通灯实物图
图11 智能小车实物图
相信看到这里的你已经迫不及待想知道自己学完上述内容后,自己究竟能做哪些有意思的项目呢?这里给大家推荐几个有趣的小项目进行参考。
这里给大家分享一些学习上的建议以及一些常见的错误。
目标会让我们的学习变得明确和高效,合理制定学习目标是我们学习的第一步,也是成功的第一步。
光听不做假把式,很多东西你听的时候以为自己懂了,而实际操作起来还是各种问题,所以一定要多练,多动手敲代码,工科的东西光靠听和看是很难学会的。当你练多了,很多困扰你的东西自然就会消失。
这里的查阅资料包括看数据手册以及元器件说明书,还有电路原理图。开发的过程尽量自己去查阅数据手册相关的内容,包括引脚的模式配置,复用功能,重映射等,以及时钟的分配。看元器件的说明书时注意其电气参数,额定电压等参数。电路原理图的设计会多都是可以在元器件数据手册说明书中查阅到。所以说学会查阅资料也是一项必备的技能。
新手常见的错误就是只会用库函数,而不懂寄存器,或者说是害怕去查看寄存器。这里我给大家的建议就是平时开发使用库函数,但也要查阅一下相关寄存器,因为这对我们理解它的实现原理是有帮助的,当你深入学习时,对嵌入式内核的理解很有帮助。
开发的过程遇到问题是在所难免的,当我们遇到问题时一定要多思考,多调试自己的代码,不要急于寻找答案。这里推荐大家使用串口打印的方式进行调试,也可以使用DEBUG单步调试。
养成良好的编程习惯,代码勤写注释,课后善于总结,可以把遇到的问题以及解决方案汇总在一个文档里,积累学习经历。
最后,让我们一起出发,去探索立创·梁山派的奥秘和奇妙之处吧,祝你接下来的日子学习愉快。
把下面网址填入附加开发板管理网址 https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json 文件-》首选项
打开开发板管理器面板,工具-》开发板-》开发板管理器
选择stm32 MCU based boards 进行安装,这里安装可能会等一段时间;
这里选STM32F4,因为GD32F4对应的兼容STM32F4
这里选F429ZGTx,因为GD32F450/GD32F470ZGT6,对应兼容STM32F429ZGT6
代码效果,KEY_UP按键按下LED1点亮,松开灯关闭
int buttonState = 0; // variable for reading the pushbutton status
void setup() {
// initialize the LED pin as an output:
pinMode(PE3, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(PA0, INPUT);
}
void loop() {
// read the state of the pushbutton value:
buttonState = digitalRead(PA0);
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(PE3, HIGH);
} else {
// turn LED off:
digitalWrite(PE3, LOW);
}
}
新建
把上面代码粘贴进去
ctrl+s保存,然后在ctrl+alt+s进行编译并导出已编译的二进制文件
编译完成没有错误,显示项目文件夹
这时候目录下就已经生成了我们的可执行文件bin
使用DFU把bin烧入开发板,DFU烧入代码请查看梁山派使用DFU下载说明
LCKFB_LSPI_MicroPython_V0.1.hex
参考下载说明:梁山派使用DFU下载说明
open打开LCKFB_LSPI_MicroPython_V0.1.hex所在目录
注意:DFU下载时候把数据连接到了梁山派开发板板载USB上,测试的时候需要把数据线连接到DAPlink,因为我们是通过串口进行通讯
官方:http://docs.micropython.org/en/latest/ https://docs.singtown.com/micropython/zh/latest/moxingstm32f4/moxingstm32f4/tutorial/pin.html
https://lckfb.com/tools/serial_assistant/
首先输入help()让我们来看一下micropython简单使用,这里找到点灯的方法
//tab键可以补全
>>> import pyb
>>> pyb.LED(1).on()
>>> pyb.LED(1).off()
>>> print("abcde")
abcde
>>> from pyb import Pin
>>> myled = Pin("E3",Pin.OUT_PP)
>>> myled.value(1)
>>> myled.value(0)
>>> from pyb import Pin
>>> myled = Pin("E3",Pin.OUT_PP)
>>> while True:
... myled.value(1)
... pyb.delay(1000)
... myled.value(0)
... pyb.delay(1000)
更多玩法大家参考官方手册。。。。。。。
Distributor ID: Ubuntu
Description: Ubuntu 16.04.7 LTS
Release: 16.04
Codename: xenial
sudo apt-get update
sudo apt-get install git build-essential
sudo apt-get install gcc
sudo apt-get install gcc-arm-none-eabi
//查看是否安装成功
kerson@ubuntu:~/jlc/micropython/mpy-cross$ ar //tab
ar arm-none-eabi-g++ arm-none-eabi-ld.bfd
arch arm-none-eabi-gcc arm-none-eabi-nm
arecord arm-none-eabi-gcc-7.3.1 arm-none-eabi-objcopy
arecordmidi arm-none-eabi-gcc-ar arm-none-eabi-objdump
arm2hpdl arm-none-eabi-gcc-nm arm-none-eabi-ranlib
arm-none-eabi-addr2line arm-none-eabi-gcc-ranlib arm-none-eabi-readelf
arm-none-eabi-ar arm-none-eabi-gcov arm-none-eabi-size
arm-none-eabi-as arm-none-eabi-gcov-dump arm-none-eabi-strings
arm-none-eabi-c++ arm-none-eabi-gcov-tool arm-none-eabi-strip
arm-none-eabi-c++filt arm-none-eabi-gdb arp
arm-none-eabi-cpp arm-none-eabi-gprof arpd
arm-none-eabi-elfedit arm-none-eabi-ld arping
把文件解压到自己的ubuntu环境里去
LSPI_micropython.zip 1.9G
编译mpy-cross
kerson@ubuntu:~/jlc/micropython/mpy-cross$ make -j32
//编译成功
CC ../shared/runtime/gchelper_generic.c
LINK build/mpy-cross
text data bss dec hex filename
287744 776 840 289360 46a50 build/mpy-cross
编译梁山派开发板
//这里选 BOARD=GD32F450LSPI
kerson@ubuntu:~/jlc/micropython/ports/stm32$ make BOARD=GD32F450LSPI PYTHON=python3
//编译完成
CC build-GD32F450LSPI/pins_GD32F450LSPI.c
CC build-GD32F450LSPI/frozen_content.c
LINK build-GD32F450LSPI/firmware.elf
text data bss dec hex filename
326564 16 27612 354192 56790 build-GD32F450LSPI/firmware.elf
GEN build-GD32F450LSPI/firmware0.bin
GEN build-GD32F450LSPI/firmware1.bin
GEN build-GD32F450LSPI/firmware.hex //这个就是最终生成的目标文件,用DFU下载
GEN build-GD32F450LSPI/firmware.dfu
【笔记】all to ARDUINO and all to python
all to ARDUINO
all to python
切割板 A4双面雕刻垫板 介刀板 手工模型裁切护刀板
detail.1688.comdetail.1688.com|1920 × 1920 jpeg|Image may be subject to copyright.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。