- 博客(16)
- 收藏
- 关注
原创 ESP32-S3系列教程6(micropython)-------SPI控制ST7735S OLED
摘要:本文介绍了使用ESP32-S3开发板通过MicroPython驱动ST7735S OLED显示屏的方法。内容包括硬件连接(SPI接口)、下载第三方驱动库(ST7735.py和sysfont.py)、以及测试代码(test.py)的详细说明。测试代码展示了各种图形功能,如线条、矩形、圆形、三角形绘制和文本显示。通过上传这三个文件到ESP32-S3并运行test.py,即可在屏幕上播放演示动画。
2025-07-25 00:10:42
341
原创 ESP32-S3系列教程5(micropython)-------实现WiFi连接
Wi-Fi是基于IEEE 802.11标准的无线局域网技术,由无线接入点和终端设备组成。文章提供了ESP32连接Wi-Fi的Python代码示例,包括配置Wi-Fi参数、建立连接、检查连接状态等功能。代码展示了如何初始化Wi-Fi接口、处理连接过程,并定期检查连接状态。特别指出ESP32不支持5G路由器,建议使用手机热点进行连接。示例中还包含获取IP地址、信号强度等网络信息的方法,为物联网设备开发提供了实用的Wi-Fi连接解决方案。
2025-07-24 14:24:02
241
原创 ESP32-S3系列教程4(micropython)-------实现PWM呼吸灯
PWM脉宽调制技术通过调节占空比控制LED亮度。占空比指高电平时间占周期的比例,直接影响平均电压和亮度。利用人眼视觉暂留效应,高频PWM可实现平滑亮度调节。实验使用Python代码,初始化1kHz PWM频率,通过循环逐步增减占空比(0-1024范围),形成LED呼吸灯效果。关键函数:freq()设置频率,duty()调节占空比,配合延时实现渐亮渐暗的视觉过渡效果。
2025-07-22 15:42:00
160
原创 ESP32-S3系列教程3(micropython)-------点亮LED灯
本文介绍了如何使用MicroPython控制LED灯的亮灭。通过连接GPIO引脚,使用Pin和time模块实现LED的点亮与熄灭控制。具体方法是将LED正极连接GPIO2引脚,负极连接GND,通过设置value(1)输出高电平来点亮LED。进一步扩展功能,利用time.sleep()函数实现LED的闪烁效果,如1秒亮1秒灭的循环,还可调整时间间隔实现摩斯密码等更复杂的应用场景。文章展示了从基础点亮到控制闪烁的完整LED控制方法。
2025-07-21 19:13:49
136
原创 ESP32-S3系列教程2(micropython)-------调用彩色灯珠
neopixel模块可使用Neopixel(WS2812)(单独可寻址的RGB LED条带)与Microbit连接。效果:灯珠先按顺序显示红绿蓝,之后显示随机颜色。
2025-01-30 15:01:58
359
1
原创 ESP32-S3系列教程1(micropython)-------烧录micropython
本教程所用到开发板为乐鑫科技ESP32-S3,相较于普通版的ESP32,S3版本对内存容量进行了升级,内存由原先的4M扩展为16M,能够存储更多数据。点击下方三道杠的标志---->select local micropython image ,找到之前下载的micropython文件。端口与之前一致,选UART口 , 点击安装,等待安装完成。重启thonny,显示boot程序表示安装成功。选择右下角安装或更新micropython。点击菜单栏运行---->配置解释器。2.下载micropython。
2025-01-30 00:53:11
1296
原创 基于stc89c52单片机的密码锁制作
这一段的处理是对输入数字进行左移,并把输入个数限制在4个,而之所以选择4位,是因为LCD的数字显示最多到65535,超了会生成乱码。由于单片机弱上拉(也就是1的输出能力有限,而0的作用效果较好),所以即便按键按下,vcc直接到gnd(打个比方)也能够进行判断。若该列某个按键按下则通过行也为0,则可以通过行列的交叉判断出按键的位置。本人也是一枚新手小白,如文章中有错误,还请多多指教。创建一个.c文件,命名为MatrixKey.c。创建一个.c文件,LCD1602.c。最后,将文件烧录进单片机即可。
2023-01-25 20:09:01
1807
2
原创 njupt MOOC 第十章编程
输出每个学生的平均分.printf中请用格式控制串"The average score of the %dth student is %d.\n"利用结构体数组保存不超过10个学生的信息,每个学生的信息包括:学号、姓名和三门课(高数、物理和英语 )的成绩和平均分(整型)。编写程序,从键盘输入学生的人数,然后依次输入每个学生的学号、姓名和3门课的成绩。然后每行输入一个学生的信息:学号、姓名和高数、物理及英语成绩。最后按指定格式输出每个学生的平均分。学生平均成绩计算和输出(10分)然后计算每个学生的平均分。
2022-12-13 16:31:08
1671
原创 MOOC 第九章编程
定义一个带参数的宏DAYS_FEB(year),以计算给定年份year的二月共有几天。请用以下格式字符串输出:"days of the FEB.: %d\n"时间限制:500ms内存限制:32000kb。带参宏替换计算给定年份的二月天数(10分)
2022-12-02 14:45:40
1130
原创 njupt MOOC第八章编程
编写程序,输入一个长整型数,将其转换为十六进制,以字符串形式输出。(提示:可以定义char s[]="0123456789ABCDEF"以帮助输出十六进制字符)。输入一个字符串,过滤掉所有的非数字字符,得到由数字字符组成的字符串,并输出。时间限制:500ms内存限制:32000kb。时间限制:500ms内存限制:32000kb。十进制转换十六进制(10分)去掉非数字字符的字符串。字符串过滤(10分)
2022-12-02 14:36:11
1874
原创 编写函数同时求两个整数的和与差(10分)
主函数已经给定,请补齐程序,使函数SumDiff完成求两个整数的和与差(函数返回和值,差值通过设定指针形式参数通过间接引用进行计算),提交完整的程序代码。时间限制:500ms内存限制:32000kb。主函数已经给定输入语句。主函数已经给定输出语句。
2022-11-26 22:38:11
1332
原创 交换法排序(10分)
从键盘输入n个(n≤10)整数,用交换法进行排序(非递减有序),结果输出排序后的序列。交换法排序的基本思想是:n个元素共需要n-1趟,其中第i(从0变化至n-2)趟的任务是找出本趟中最小的元素放在下标为i的位置上,每趟通过从i+1到n-1下标的元素逐个与i下标元素比较及时交换进行排序。说明:输入n时假定输入的值一定在闭区间[1,10]之内,不需要用分支或循环结构对输入n的值再进行判断。先输入n的值,再用循环输入n个数组元素,输入每个整数用的格式控制串都是"%d"
2022-11-26 22:37:31
1183
原创 MOOC数列移位(10分)
有数组其10个元素值依次是:{1 2 3 4 5 6 7 8 9 10},现在将前面各数顺序向后移动m个位置,最后m个数变成最前面m个数,并输出。(编程提示:定义函数,实现每次数组往后移动一个元素,最后一个放到数组前面,这样调用m次即可实现数组后移m个数)假设输入的m的值在闭区间[1,10]之间,程序中不再用选择或循环结构来处理输入部分。输出最后一个元素后用printf("\n");循环控制输出每个元素,printf中的格式串为"%3d"输入移动的次数m,scanf的格式串为"%d"
2022-11-26 22:36:30
1915
2
原创 求数组元素的平均值(10分)
定义一个含10个整型元素的一维数组,从键盘上输入10个元素值,求去掉最大值和最小值之后的元素平均值.用循环控制依次输入10个元素值,scanf语句中的格式控制串为: "%d"输出平均值, printf中的格式控制串为 "%lf\n"
2022-11-25 16:20:56
2275
原创 南京邮电大学mooc第六章编程2生成指定的数列
编写程序:编写函数fun,求出a到b之内能被7或者11整除,但不能同时被7和11整除的所有正数,并将他们放在数组中,函数返回这些数的个数。编写main函数,定义一个整型数组,可容纳1000个元素,定义整型变量a,b,输入a,b的值(输入时a小于等于b)并调用函数fun进行求解,最后在main函数中输出所有符合条件的元素。其中的r用于存放a,b之间满足条件的所有元素。输出每个元素时用格式串"%d", 不同元素间以一个空格分隔,但是最后一个元素之后没有空格,输出后直接换行。输出满足条件的所有元素。
2022-11-25 16:20:10
1285
原创 NJUPTMOOC题目:算算是第几天?(10分)题目内容:给定一个日期,数据格式为YYYY-MM-DD,输出这个日期是该年的第几天。提示:一年十二个月每个月的天数可以作为一维数组的元素输入格式:输入代
NJUPTMOOC题目:算算是第几天?
2022-11-21 15:07:14
1410
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人