自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 stm32f103调试,程序与定时器同步设置

在调试定时器相关代码时,注意到定时器的中断位总是置1,怀疑代码有问题,经过增大定时器的中断时间,发现定时器与代码调试并不同步,这一点对于调试涉及定时器的代码是非常不利的,这里给出keil调试stm32使定时器与代码同步的设置方法。点击下面的use custom SVD file ,然后点击文件选择,粘贴路径进入,选择调试的芯片,这里使用的使stm32f103,所以选择STM32F103xx.SFR,保存后重启keil,

2024-10-03 00:32:59 519

原创 stm32定时触发软件中断

这里使用定时器作为延时,单位为秒,使用exti的软件触发方式,配置见代码,在main里进行触发软件中断。

2024-09-25 16:49:24 379

原创 vscode+platformio开发小技巧

使用vscode+platformio开发,具体安装配置文章很多,这里分享一些方便使用的小技巧,让使用体验在不增加学习成本的情况下更加丝滑。

2024-08-01 18:13:38 512 2

原创 树莓派pico入坑笔记,at24c256使用

at24c256,8位非易失存储器,断电后内容不丢失,大小256Kbit=32KB,地址范围0~32767,通过iic进行通信,支持地址通过引脚选择,用来拓展多片存储,本文使用全部置零,支持随机/页写入,但是页写入需要考虑页的大小和地址,违背方便的初衷,故不作展开。里,是官方为at24c32编写的库,默认支持大小32Kbit=4KB,但兼容at24cxx系列,只需要在使用时显式声明大小即可。支持以切片的方式操作,[]内部即为操作的地址,注意单地址的存储空间为8位,所以不要输入0~255以外范围的数据。

2024-07-15 00:07:12 339

原创 树莓派pico入坑笔记,esp01/01s使用

AT+CIPSTART=4,"UDP","192.168.4.1",1113,1113,0,和该ip地址建立udp连接,该链接id设置为4(0~4),本地udp端口设置为1113,远端udp端口为1113,固定连接模式0。AT+CWSAP="ESP","1234567890",5,3,建立wifi,参数分别时WiFi名称、密码、信道号,加密方式,后两个参数默认使用5和3即可,此外还有其他参数,这里用不到,具体含义和功能见官网。使用硬件为esp01,01s和01在使用上没有差别,故使用方法通用。

2024-07-13 18:40:31 1152

原创 树莓派pico入坑笔记,dht11使用及温湿度表制作

dhtDevice = adafruit_dht.DHT11(board.GP28)选择一个引脚作为数据读取引脚。dht11支持3~5v供电,所以可以使用vout引脚对它供电,3.3v引脚用来给屏幕供电,不需要额外拓展引脚。使用circuitpython8.x环境,硬件dht11,电压范围3~5v。显示时注意每次刷新需要清空上一次的内容,否则会出现像素糊在一起的情况。用到的库adafruit_dht,需要导入pico才能使用,在。其他的是异常处理,输出异常信息的,可以不用加。进阶玩法,显示信息的温湿度计。

2024-07-11 15:49:07 474

原创 树莓派pico入坑笔记,ssd1306使用

text(string, x, y, color, *, font_name='font5x8.bin', size=1)将文本以可变大小放置在起点为(x,y)的屏幕上,文本大小size缺省值为1,字体库font_name缺省为font5x8,文本内部支持转义字符’\n'换行。circuitpython8.x使用iic接口驱动四线1306屏幕,屏幕参数128x64,由于屏幕是单色,所以衍射只用两种,程序涉及的颜色参数统一为:1白色,0黑色。pixel(x, y, color)将指定的像素设置为给定的颜色。

2024-07-11 00:24:02 1100

原创 stm8玩耍日记1

使用的stlink如图,线序是RESET GND SWIM VCCIN,注意这里的vccin是输入,要和3.3v连接,是没有输出能力的,而且一定要接上,可以从上面的jtag接口取电,其他类型的stlink的3.3是对外供电的,这里要注意。stm8L051f3配置:8k flash,1k ram,256 eeprom,1~16MHz时钟,最大17个GPIO,1个uart,1个spi,1个i2c,1个12位ADC最大10路通道,3.3v低功耗。写在前面,如题所示,这是一个stm8L051F3的玩耍记录。

2024-07-04 21:58:32 281

原创 树莓派pico入坑笔记,uart使用

在初始化时,使用busio.UART()方法创建uart对象,参数列表为TX,RX ,波特率,可以参考引脚图选择功能引脚。调用circuitpy的busio模块来使用uart,除此以外,spi、iic等要需要使用该模块,使用方法见。收发数据的格式是字节数组,该类型要求数据不可变,因此如果要修改,需要额外新建,然后将其转换为字节数组。然后是注意bytearray方法,它要求输入参数是可迭代对象,建议使用列表。官方的例子简洁,但没有过多其他应用的细节,主要是数据格式,发送数据方面。

2024-06-26 19:28:58 428

原创 2024春嵌入式系统考题

河北工业大学2024春嵌入式系统考题复习

2024-06-21 11:12:57 292

原创 河北工业大学嵌入式系统知识点总结二

河北工业大学嵌入式系统知识点总结二

2024-06-20 21:21:23 511

原创 河北工业大学嵌入式系统知识点总结第一章

河北工业大学嵌入式系统知识点总结第一章

2024-06-20 20:50:02 962

原创 树莓派pico入坑笔记,mpy文件制作

使用方法,将py文件和工具放到同一个文件夹里,然后再该文件夹下打开cmd窗口(右键-在在终端打开),输入 .\mpy-cross.static-x64-windows-8.0.3.exe .\xxx.py,xx.py就是用来生成mpy的源文件,在输入命令时打入前几个字符后按TAB键可以自动补全,回车即可看到生成的mpy文件,像普通模块一样导入使用即可。因此,为了减小代码存储空间,可以将代码预处理,转换成不可读的字节码文件,它移除了源代码中的空白、注释和格式等不影响执行的内容。

2024-06-17 20:35:05 298

原创 树莓派pico入坑笔记,快捷键键盘制作

使用usb_hid功能制作快捷键小键盘,定义了6个键,分别是。boot启动程序代码,作用是防止被识别为usb存储设备。需要用到的库,记得复制进单片机存储里面。更多hid设备参考以下教程。然后是main主程序代码。

2024-06-17 18:15:25 827

原创 嵌入式综合实验

综合使用实验开发板上的四个led和usart串口,结合前面学习的gpio、定时器、usart等知识,设计综合实验。实现功能:上位机通过usart通信控制由定时器中断驱动的led灯切换不同闪烁模式,并实现简单的命令提示功能。

2024-06-14 20:32:03 384

原创 分治法最近点对可视化python

【代码】分治法最近点对可视化python。

2024-06-14 14:49:02 101

原创 tsp可视化python

随机生成点的坐标并依据点集生成距离矩阵,通过点的坐标实现可视化。c代码看我的这篇文章。

2024-06-14 14:34:08 615

原创 kmp算法c++

kmp算法通过next数组使查找失败时减少跳转后比较的次数来优化字符串查找,next数组存储了前缀和后缀相同的位置信息,类似动规,可以存储查找数组的信息来防止重复查找

2024-06-09 17:07:23 523

原创 实验七 动态分区分配方式的模拟

请分别采用首次适应算法和最佳适应算法,对内存块进行分配和回收,要求每次分配和回收后显示出空闲分区链的情况。作业”作业1申请130KB“格式 1 1 130。这里假设申请模式为1,释放为2。•作业1申请130KB。•作业3申请100KB。•作业4申请200KB。•作业3释放100KB。•作业1释放130KB。•作业5申请140KB。•作业2申请60KB。•作业2释放60KB。•作业6申请60KB。•作业7申请50KB。•作业6释放60KB。

2024-06-06 16:58:44 189

原创 实验六 作业调度算法模拟

优先权高者优先调度算法与响应比高者优先调度算法十分相似,根据作业的优先权进行作业调度,每次总是选取优先权高的作业优先调度。优先权高者优先调度算法综合考虑了作业执行时间和等待时间的长短、作业的缓急度,作业对外部设备的使用情况等因素,根据系统设计目标和运行环境而给定各个作业的优先权,决定作业调度的先后顺序。FCFS调度算法只片面地考虑了作业的进入时间,短作业优先调度算法考虑了作业的运行时间而忽略了作业的等待时间。该算法仅考虑了作业到达的先后顺序,而没有考虑作业的执行时间长短、作业的运行特性和作业对资源的要求。

2024-06-06 16:51:57 627

原创 实验八 页面置换模拟程序设计

网上找到的程序得到的答案经过手算验证是错的,所以自己实现了一个,具体实现看代码吧,多余的操作已经去掉了。opt和lru算法

2024-06-06 16:45:03 271

原创 01背包c++

【代码】01背包c++

2024-06-05 21:54:53 115

原创 01背包回溯解法c++

01背包回溯解法c++

2024-05-30 11:45:09 518

原创 tsp回溯法递归解法c++

tsp回溯法递归解法c++

2024-05-30 11:38:37 297

原创 tsp动态规划非递归写法c++

tsp动态规划非递归解法,看注释

2024-05-30 11:31:35 108

原创 tsp动态规划递归解法c++

tsp问题动态规划递归解法,记得看注释

2024-05-30 11:18:35 326

原创 素数环_回溯法

围成一个圆环,若其中任意2个相邻的数字相加,结果均为素数,那么这个环就成为素数环。素数环是一个计算机程序问题,指的是将从1到n这n个。

2024-05-28 21:52:30 263

原创 力扣3152. 特殊数组 II

那么就可以通过预处理,对处于同一个区域的数据做标记,在查找时比较范围边界是否在相同区域即可,预处理时间复杂度为O(n),单次查找为O(1),全部查找为O(n),则时间复杂度为O(n)看了大佬的代码,感觉自己写的太丑了,靠直觉写出来的东西,还要有边界的单独处理,这里稍作修改。首先可以通过定义知道如果数组中存在两个范围,范围内符合要求,那么两个范围一定相邻,即0110,可以分为01,10 两个合法区域,且不存在一个合法区域介于两个区域之间。1.暴力,直接遍历每一个要求的区间,每一个区间都检查一次是否符合要求。

2024-05-24 12:58:47 302

原创 动态规划:力扣LCR 188. 买卖芯片的最佳时机

动规,每一次交易的利润可以看作当前交易利润和前一次交易利润的最大值,当前交易利润为当前价格和之前最低价格的差,即DP[I]=MAX(DP[I-1], prices[i]-mincost),DP[pricesSize-1]即为所求。在第 5 天(芯片价格 = 3)买入,在第 6 天(芯片价格 = 10)卖出,最大利润 = 10 - 3 = 7。在第 3 天(芯片价格 = 2)买入,在第 4 天(芯片价格 = 9)卖出,最大利润 = 9 - 2 = 7。时间复杂度O(n),空间复杂度O(1)

2024-05-11 11:56:55 395

原创 c++学习笔记3,继承

指针和引用,允许基类指向或者引用派生类,派生类无法指向或引用基类,但是只能使用基类的方法和成员,因为在编译阶段就会按照指针或者引用的类型进行绑定,如果要实现指针指向的对象不同而使用不同方法,需要用到虚函数。继承方式决定对基类成员的访问权限,基类的私有变量方法派生类不可访问,其他的按派生类与基类的访问范围取最小范围,比如基类protect方法,派生类继承方式为private,则在派生类内为private方法。构造,派生类在构造时顺序是先基类后派生,析构相反,如果基类的方法缺省,派生类可以缺省。

2024-04-16 17:26:47 239

原创 c++学习笔记2,类

拷贝构造函数是构造函数的重载,用来实现一个对象来创键同类对象的,缺省默认添加,默认实现是值拷贝,如果涉及指针,需要自行定义,否则会出现同一个指针删除两次的运行时错误。对象数组的定义和普通数组一样,但是注意如果只有有参构造方法时,需要在定义时进行有参构造,在有构造参数定义时系统不会提供默认无参构造方法。函数在类体内定义默认为内联函数,在外定义要在方法名前加上类的作用域,也可以在前面加上inline在外面定义内联函数。析构函数没有返回类型,在类名前加“~”,在销毁类时调,用来释放申请的空间,缺省默认添加。

2024-04-13 18:53:09 260

原创 c++学习笔记1,c的扩充

a++;//声明给出后,定义不能再给默认值,声明时默认值可以省略形参名默认参数顺序靠右//错误//正确默认值可以是函数,但不能是局部变量//不能是局部变量,在编译时变量不确定int i;

2024-04-13 14:13:26 275 1

原创 树莓派pico入坑笔记,模拟输入输出

模块,同时注意要连接vref和gnd,才能正常使用内部adc(用来采集芯片温度)来正常工作,一开始以为片内的温度传感坏了,具体看下面的例子。树莓派pico引出了3个可用的adc引脚,可以实现0~3.3V采样范围,使用。注意,以上提到的模块均为内置模块。输入,使用adc1(GP27)片内温度有专门的模块,在。

2024-03-25 21:30:50 664

原创 树莓派pico入坑笔记,数字输入输出

circuitpy的board模块类似于micropy的machine模块,保存有引脚信息,shell查询支持引脚如下。数字引脚的输入输出需要用到对应的digitalio模块,可以用来设置引脚输入/出状态,设置引脚初始状态,具体看下面例子。

2024-03-25 21:10:40 292

原创 树莓派pico入坑笔记,一些资源

CircuitPython自带的模块外,其他模块需要按需导入pico硬盘,建议去github复制下载链接使用加速下载,教程网页的下载按钮下载太慢,下面我会附上一份我下载的压缩包。adafruit官方教学,注意以下内容为全英文,可以搭配浏览器翻译按需食用。CircuitPython库和拓展库的详细说明。CircuitPython使用的一些说明。,因为库太多,所以除了。,其他的一些资源压缩包。

2024-03-18 20:51:29 424

原创 树莓派pico入坑笔记,环境搭建

本篇将介绍树莓派pico circuitpython环境搭建以及一些基础使用方法 ,注意以下circuitpython有时简称python。

2024-03-18 20:47:03 1665

原创 树莓派pico入坑笔记,circuitpy和micropy比较

提供了丰富的库和驱动,所有支持的芯片均带有USB外设。CircuitPython:CircuitPython在嵌入式系统中的应用相对较少,但由于其易用性和硬件兼容性,它仍然可以在某些特定场景中发挥重要作用。MicroPython和CircuitPython都是基于Python的微型解释器,用于在小型设备上运行Python代码,但它们各有侧重点和适用场景。硬件兼容性:CircuitPython对Adafruit系列硬件的支持非常出色,提供了丰富的库和驱动,使得开发者可以更容易地与这些硬件进行交互。

2024-03-18 15:32:27 707

原创 树莓派pico入坑笔记,基于Circuitpython

最近入手了一块树莓派pico,黑板的YD RP2040(与原版引脚一致),吸引我的是它支持micropython还有USB 1.1 主机和设备支持(circuitpy基于micropy,由Adafruit赞助,但模块和micropy有区别,并不兼容)。

2024-03-17 20:21:37 474 1

原创 记录一下被自己蠢哭的代码(1)

真就被自己蠢哭了,每次判断需要进行一次探索左右子树深度,O(n2)恐怖的达到了126ms。思路,深度遍历确定所有节点为根节点的子树符合要求。给定一个二叉树,判断它是否是高度平衡的二叉树。的左右两个子树的高度差的绝对值不超过 1。

2024-02-17 21:06:36 399 1

原创 二叉树层序建立、中序线索化(c语言)

使用队列存储每一个节点,每次出队一个节点为其连接子节点,然后子节点入队,这里使用“/”分割字符串。建立后进行中序线索化,推荐看。然后是中序线索树的遍历。

2024-01-05 22:18:00 540 1

红外接收入门资料大全,红外接收原理、元件、电路,红外接收学习入门

红外接收入门资料大全,红外接收原理、元件、电路,红外接收学习入门,资源分享,让更多人看到好的资料

2024-08-20

circuitpython的esp01/01s库,适用于树莓派pico,circuitpython8.x版本,用于udp单链接

circuitpython的esp01/01s库,适用于树莓派pico,circuitpython8.x版本,用于udp单链接通信,作者本意是用esp01作为短距离自定义的遥控使用,特将相关操作进行封装,使用方法见作者关于树莓派pico上使用esp01/01s的文章

2024-07-13

circuitpython,ssd1306单色oled,显示中文显示库,树莓派pico,circuitpython8.x

适用于circuitpython8.x版本,为方便显示中文,作者将中文显示操作做了封装,支持16x16大小字体,具体用法看作者的树莓派pico使用1306oled显示屏教程

2024-07-10

stm8固件库、stm8教程合集,IAR用于开发stm8的官方固件库,stm8教程资源整理

stm8固件库,IAR用于开发stm8的官方固件库,内含示例代码以及固件库介绍html文件,stm8开发教程整理

2024-06-27

stm32f103固件库v3.5,kill开发stm32f103固件库

stm32f103固件库v3.5,kill开发stm32f103固件库,含示例代码,介绍html文件

2024-06-27

mpy-cross.static-x64-windows-8.0.3.exe

micropython官方mpy文件制作工具,适用于circuitpython8.x,使用环境windows64位版本

2024-06-17

circuitpytho8.x库源代码参考

circuitpytho8.x库的python源代码参考

2024-03-18

circuitpytho示例库adafruit-circuitpython-bundle-examples-20240307

circuitpytho示例库adafruit-circuitpython-bundle-examples-20240307 ,版本circuitpython8.x

2024-03-18

adafruit-circuitpython-bundle-8.x-mpy-20240307.zip

8.x官方拓展库adafruit-circuitpython-bundle-8.x-mpy-20240307 使用库文件请解压8.x官方拓展库,注意版本,现在已经有9.x的拓展库了,要和circuitpython版本对应

2024-03-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除