![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
嵌入式点灯大师
萌新一枚~
展开
-
易语言PUSH窗口
程序导入OD,查找二进制字符串在FF 25上面出现push 0x52031925,这就是主窗体查找命令,push 10001找到另一个push窗体,复制,并替换到主窗体的push程序再运行就会发现主窗口没有了,变成了之后的窗口当然了窗体不止一个,可以把所以窗体都保存出来但是要注意暗桩,要在虚拟机破解...原创 2022-02-03 19:55:44 · 1941 阅读 · 0 评论 -
易语言的花指令
简单记录一下易语言花指令破解流程先PEid查壳发现什么都找不到深度扫描和扩展信息 也得不到什么直接开始破解,常规PEID通用脱壳器,之后没有找到再使用OEP查找工具,找到了地址00454E54在OD里进入这个地址设置硬件执行断点之后运行,运行到断点出就可以把断点删除了紧接着使用OD脱壳调试进程->脱壳,并保存到桌面保存的文件再次载入OD,并查找字符串FF 55 FC 5F 5E,易语言的按钮事件...原创 2022-02-03 19:46:10 · 861 阅读 · 0 评论 -
OD与易语言
一、让时钟失效程序导入到OD,Ctrl+G,输入SetTimer找到时钟事件在时钟事件处直接改成return 10(10是根据本身的0x10所定)之后运行,即可解决时钟问题二、窗体程序导入OD,出现易语言体,也是创建窗口的代码紧接着下面是push主窗体在窗体下段运行程序,F8单步向下,当运行到call时窗体就出来了三、信息框程序载入OD,找到易语言体的弹窗在段首下段运行程序,下图push的立即数就是存放弹...原创 2022-02-03 19:22:31 · 1408 阅读 · 0 评论 -
汇编中的一些存储器
EAX---累加器 add。EBX---基址寄存器 base ,存放内存地址。ECX---计数寄存器 counter,存放循环次数,字符串操作中也常用。EDX---数据寄存器,常与EAX一起使用。ESI---源变址寄存器source,存放要处理的数据的内存地址EDI---目的变址寄存器destination,存放处理后的数据的内存地址EBP---指针基址寄存器ESP---堆栈指针寄存器EIP---指令指针寄存器(总是指向下一条要执行的指令地址)标志寄存器的8给位:原创 2022-01-31 21:15:53 · 982 阅读 · 0 评论 -
AD20画PCB的学习之路(四)(完)
8月4日学习笔记PCB设计要点:1.规则编辑器的九大类:Electrical电器性规则(间距规则,断路规则,开路规则),Routing路径规则(线宽规则,过孔规则,拓扑结构规则,扇孔规则),SMT贴片规则,Mark阻焊规则,Plane铺铜规则,Testpoint测试点规则,Manufacturing生产规则,High Speed高速规则,Placement放置器件的规则,Signal Integrity信号完整性的规则。2.最小线宽/线距一般在4mil<x<6mil,当x<4原创 2021-08-04 20:56:57 · 1690 阅读 · 0 评论 -
isolated copper:split plane(dgnd) on ground,dead copper delected.copper area is: 2.5e2 sq.mils
画完AD在检查的时候可能会出现这种错误提示,不要慌张,很简单的就能解决:大体意思就是有死铜,需要去掉,你要做的就是定位到提示的地方,你会发现那里有你打的几个孔,通常是好几个聚集在一起的,就像这样:你要做的就是把他们拆开,不要靠的太近,就可以解决了:像这样打乱他们,或者间距大点即可。...原创 2021-08-04 19:42:22 · 3147 阅读 · 1 评论 -
AD20画PCB的学习之路(三)
8月3日学习笔记PCB设计要点:1.布线(U)——取消布线(U)——连接(C):可取消一条布线。2.关闭电源和地的连线:设计(D)——对象类浏览器(C)——在Net Classes中新建类,命名为Power——在右侧把非成员的GND,5V,3V3,全部移动到成员里,电源类就创建完成——在PCB界面就可以右击Power,点击连接,隐藏。3.想把几个器件作为一个整体:选中器件——联合(U)——从选中的器件中生成联合4.隐藏全部连接:N——隐藏连接(H)——全部5.位号丝印集体改小:选中原创 2021-08-03 22:06:56 · 1204 阅读 · 0 评论 -
AD20画PCB的学习之路(二)
8月2日学习笔记画原理图的一些要点:①放置导线:点击放置(P)——线(W)(ctrl+w) 注:与绘图工具里的线进行区分,导线是具有电器属性的,而普通的辅助线没有。②修改完原理图库里的原理图后,记得一定要右击元件更新到原理图。...原创 2021-08-02 21:32:04 · 2674 阅读 · 0 评论 -
AD20画PCB的学习之路(一)
7月31日笔记开始所需工作:新建工程——保存——新建原理图库(.schlib)——保存——新建原理图(.schdoc)——保存——新建PCB库(.pcblib)——保存——新建PCB(.pcbdoc)——保存做原理图库(为了方便可以从EDA中直接拷贝):①放置管脚:按空格键进行旋转。②有电器属性的一头放在外面。③视图v——栅格g——设置捕捉栅格s:根据需要设置栅格宽度。④...原创 2021-08-01 17:24:15 · 4023 阅读 · 0 评论 -
Ardunio库Ticker库基本操作(定时器函数)
本文章借鉴于太极创客团队,以表感谢。使用Ticker库函数可以轻松实现定时器中断,外部中断。一、Ticker库的几个函数#include <Ticker.h>Ticker ticker;// 建立Ticker用于实现定时功能ticker.attach(1, sayHi);//每隔一秒钟调用sayHi函数一次,attach函数的第一个参数 // 是控制定时间隔的变量,该参数的单位为秒。第二个参数是原创 2021-07-31 10:16:07 · 7460 阅读 · 2 评论 -
Arduino 外部中断的使用
外部中断在不同的Arduino型号上位置也不同,只有外部中断发生在以下端口,Arduino才能捕获到,以下例举了常见的几种型号的外部中断引脚标号。型号 int.0 int.1 int.2 int.3 int.4 int.5 UNO\Ethernet 2 3 Mega2560 2 3 21 20 19 18 Leonardo 3 2 0 1原创 2021-07-31 09:47:38 · 1496 阅读 · 0 评论 -
Ardunio中的定时器中断函数
Arduino已经为我们写好了定时中断的库函数了,我们可以直接直接使用,这对于对底层了解较少的同学来说真是一个好消息。常用的库有FlexiTimer2.h和MsTimer2.h,这两个库的用法是大同小异的。下面对其中的几个常用的函数进行详细的介绍。这两个库你可以很轻松的从网上下载。1.void set(unsigned long ms, void (*f)())这个函数设置定时中断的时间间隔和调用的中断服务程序。ms表示的是定时时间的间隔长度,单位是ms,void(*f)()表示被调用中断服务程序,原创 2021-07-31 09:45:28 · 1604 阅读 · 0 评论 -
基于arduino的oled显示屏的使用
https://blog.csdn.net/jiayan0428/article/details/105254403原创 2021-07-17 22:28:11 · 450 阅读 · 0 评论 -
STM32管脚的复用和重定义功能(RCC_APB2Periph_AFIO)
最近在学习STM32,看到一篇关于的串口通信文章里有这么一段代码:RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_AFIO,ENABLE);当初是参考开发的里子写的一直对GPIOD或上“RCC_APB2Periph_AFIO”这句话的意思没搞懂,通过这几天在网上查找资料和看手册,终于高清楚了,不敢独享,希望能对跟我一样的新手有所帮助吧o(∩_∩)o…STM32上有很多I/O口,也有很多的内置外设想I2C,ADC,ISP,USA原创 2021-06-26 11:27:57 · 4582 阅读 · 2 评论 -
STM32 串口采用DMA方式收发(配置方法)
https://blog.csdn.net/dddxxxx/article/details/79278967感谢博主的这片博客,很详细!!原创 2021-06-25 22:46:56 · 330 阅读 · 0 评论 -
配置完串口,用了printf函数,但程序运行不了?
解决方案在https://blog.csdn.net/ZIIllIIll/article/details/118150878我已经踩了很多次这个坑o(╥﹏╥)o原创 2021-06-23 16:48:00 · 299 阅读 · 0 评论 -
STM32中串口使用printf函数时出现程序卡死、运行不了的现象?
当在keil中串口使用printf函数时出现程序卡死、运行部了的现象,是因为没使用use MicroLIB(微库),有以下两种方法。法一:在魔术棒 / Targer 选项页中勾选use MicroLIB,即可成功运行。法二:在usart.c(自己编写的串口的c文件中)添加以下代码://加入以下代码,支持printf函数,而不需要选择use MicroLIB #if 1#pragma import(__use_no_semihosting) //标准库需要的支持函原创 2021-06-23 13:14:00 · 12128 阅读 · 15 评论 -
通用定时器中两个重要参数的设置心得(TIM_Prescaler、TIM_Period)
TIM_Prescaler:定时器预分频器设置,时钟源经该预分频器才是定时器时钟,它设定 TIMx_PSC寄存器的值。可设置范围为 0 至 65535,实现 1 至 65536 分频。TIM_Period:定时器周期,实际就是设定自动重载寄存器的值,在事件生成时更新到影子寄存器。可设置范围为 0 至 65535。根据定时器时钟的频率,比如时钟的频率是72MHZ,可以理解为一秒钟STM32会自己数72M次,预分频系数就是将频率分割,比如分频系数是72,则该时钟的频率会变成72MHZ/72=1MHZ,但是在原创 2021-06-22 21:16:24 · 28014 阅读 · 7 评论 -
中断方式和查询方式的区别?
**中断方式:**是事件触发的,换訖只要有事件产生都会进入中断,組取得最优运行,因此响应更快,及时。**查询方式:**就是在主函数里面不停循环,查询端C ]状态,明显其弊端在于响应速度,在处理事件多,处理流程复杂,函数嵌套执行的情况下,于处理不过来容易丢失事件。CPU比作人,定时器比作闹钟的。①中断就相当于是人设定的时间到了闹钟自己响起的过程,此时人放下手中的事去做另一件事。②查询就是人发现自己有充足的计划支配权,看一下钟,确定是否到了做计划上的某件事的最佳时间。总而言之, 中断时CPU是被动的用原创 2021-06-21 22:33:21 · 3566 阅读 · 1 评论 -
C语言获取时间戳
#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include <time.h>int main(){ time_t i; i=time(NULL); printf("%d\n",i); return 0;}这样就会输出一串整形,就是你当前的时间戳!原创 2021-06-21 16:47:37 · 6645 阅读 · 0 评论 -
STM32最小系统概述
概述STM32最小系统是由电源 复位 时钟 调试接口 启动的搭建组合。下面我主要以STM32F103ZET6这款MCU作为介绍给大家认识。1.主芯片部分主芯片部分采用的是ST公司系列下的STM32F103ZET6,是一种嵌入式-微控制器的集成电路,是由ST公司开发的STM32F1系列的其中一种,芯体尺寸是32位,速度是72MHz,程序存储器容量是256KB,程序存储器类型是FLASH,RAM量是48K。其实物图片如下:在这里插入图片描述对于ST公司主营的几款MCU,具体的命名也表示着芯片之间具体选型不原创 2021-06-18 18:08:33 · 1609 阅读 · 0 评论 -
什么是STM32?
初识STM32STM32单片机是ST(意法半导体)公司使用arm公司的cortex-M3为核心生产的32bit系列的单片机。一、STM32字面含义ST——意法半导体(一个公司名),即SOC厂商此处扩展:一个芯片比如STM32里面有内核(ARM),而 内核ARM由ARM公司(IP厂商)生产,外设由ST公司(SOC厂商)生产,再此基础上添加各种外设,比如GPIO,I^2C等M——Microelectronics的缩写即微控制器注意: 微处理器在微控制器的基础上有MMU——内存管理单元,一般微控制器不跑系统,原创 2021-06-18 18:02:38 · 3808 阅读 · 0 评论