- 博客(15)
- 收藏
- 关注
原创 【学习笔记】STM32F103CBT6--特殊IO之PA13
STM32F103CBT6的PA13用于SWDIO下载IO口,且SWDIO接了一个上拉电阻的LED指示灯,在程序下载过程中,该LED灯能够闪烁,但CPU启动后,无法控制LED亮灭。PA13作为特殊IO口,不能按普通的配置去配置IO口,需要在配置普通IO的基础上,增加开启复用时钟和PA13脚的重映射。我这里实现的是,CPU运行后,该LED一秒亮一秒灭循环亮灭。增加两个语句后,就可按普通IO口去控制亮灭了。
2023-05-25 16:09:40
941
原创 什么是预编译
预编译就是处理以#开头的指令,比如赋值#include包含的文件、#define宏定义的替换、条件编译等。预编译就是为编译前做准备工作的阶段,主要处理以#开头的预编译指令。 预编译指令指示了程序在正式编译前,由编译器进行的操作,可以放在程序中的任何位置。 什么时候使用预编译? 1、总是使用不经常改动的大型代码体 2、程序包含了很多模块,所有模块都使用一组标准的包含文件和相同的编译选项,在这种情况下,可以将所有包含文件预编...
2021-07-18 17:51:09
10333
原创 单片机static关键字的主要作用
1、限制变量或函数的作用域被static修饰的全局变量或者函数,只能在本c文件访问,其他c文件不能访问2、设置变量的存储域局部变量是放在栈当中,被static修饰后的局部变量被放在静态存储区,能进行默认初始化,而且只能初始化一次,下次访问的时候能保留上一次的值...
2021-07-18 17:44:04
2079
原创 【STM32】 GPIO_EXTILineConfig详解
官方源码+个人注释/** * @brief Selects the GPIO pin used as EXTI Line. * @param GPIO_PortSource: selects the GPIO port to be used as source for EXTI lines. * This parameter can be GPIO_PortSourceGPIOx where x can be (A..G). * @param GPIO_PinSource:
2021-07-14 12:27:38
12266
原创 【IAR】编译STM32出现 Error[Li005]: no definition for “assert_param“[referenced from
如果出现这个错误,请增加预编译内容:USE_STDPERIPH_DRIVER
2021-07-09 21:17:03
795
1
原创 【单片机】计数器0工作方式1
/**利用计数器0工作方式1,在实验板上实现如下描述:用一根杜邦线***一段连接GND引脚,另一端去接触T0(P3.4)引脚,每接触一下,计***数器计一次数,将所计的数值实时显示在数码管的前两位,计满100***时清0,再从头计起。***根据原理图确定T0的引脚是多少,这里是P3.4**/#include <reg52.h>typedef unsigned char uchar; //重命名sbit dula = P2^6; //声明U1锁存器的锁存端s.
2021-07-06 18:55:18
1571
原创 【单片机】重写打印函数printf
#include <reg52.h>#include <stdio.h>#include <stdarg.h> //调用打印函数的一些声明typedef unsigned char uchar; //重命名,方便写typedef unsigned short uint;bit busy; //串口发送完成标志xdata char string[100]; //存放重定向的临时字符串,声明为全局是怕栈溢出//xdata为相对于.
2021-07-05 17:36:05
878
原创 测试大小端
大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放;这和我们的阅读习惯一致。小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低。//这里针对大端模式来命名变量,如果用户测试后与效果相反,则为小端模式#include <reg52.h>void
2021-07-05 17:07:09
145
原创 【单片机】定时器2捕获模式测试脉冲周期(实例)
/**在串口助手,以十六进制向实验板发送01命令,表示***启动定时器2的捕获模式,并返回“Captch On!”,以十***六进制向实验板发送02命令,使P1.1产生一次负跳变,***第一次负跳变时,串口助手显示”Fisrt Drump!020s ***50272us“,第二次负跳变时,显示”Second Drump! ***023s 22296us“并返回两次负跳变之间的脉冲周期。***”Result is:002s 37560us“,当以十六进制向实验板***发送02命令时,表示停止定.
2021-07-04 23:19:35
2409
1
原创 【单片机】常用寄存器(STC89C52)
一、定时器0/11、控制寄存器TCON为定时器/计数器T0、T1的控制寄存器,同时也锁存T0、T1溢出中断源和外部请求中断源等,TCON格式如下:TCON : 定时器/计数器中断控制寄存器 (可位寻址)]
2021-07-03 17:50:33
7297
2
原创 单片机c语言code的作用
code即编码的意思单片机c语言定义变量时是占用内存空间(RAM)的,而定义为code时是直接分配到程序空间中,编译后,编码占用的空间是程序存储空间(ROM),该变量是只读的,作为表格查询用的
2021-04-23 22:55:04
3637
原创 STC8A8K64S4A12的命名规则
STC8A8K64S4A12的命名规则STC8 -- STC8系列A -- 子系列中的A子系列8K -- 片内SRAM为8K字节64 -- 片内FLASH为64K字节S4 -- 4个串口外设USARTA12 -- 12位ADC转换精度28 -- 芯片外部晶振最高可接入28MHzI -- 表示工业用产品,温度范围为-40℃ ~ +85℃LQFP64 -- 封装是LQFP64...
2021-04-22 23:41:34
2495
原创 搭建python PyQt5环境遇到的几个问题和解决方法
一、安装Qt51、在cmd中运行pip install PyQt5由于cmd中默认去python官网下载,由于官网是国外网站,而且Qt包40多M,下载速度超慢,导致下载失败因此可以去国内的网站下载,比如豆瓣2、在cmd中运行pip install PyQt5 -i https://pypi.douban.com/simple其中,-i是指访问具体网站3、运行上面的命令下载完...
2019-08-13 21:06:00
901
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人