- 博客(15)
- 问答 (2)
- 收藏
- 关注
原创 关于中断与外设出现bug的记录
最近使用单片机用DS18B20进行温度采集,并将采集到的温度显示到数码管上,定时器用来定时以及输出PWM。在温度采集的时候,发现采集到的温度没有问题,但是数码管会发生抖动。经过分析,发现是中断太频繁(100us一次)且中断服务函数运行的时间过长,经常性的会打断温度的采集。将中断里面原来的计数代码改为更简便之后,程序正常运行无bug。原来的程序一共进行了两次运算,对应的汇编代码也更多,导致中断服务函数运行时间过长。...
2021-04-12 18:37:22 226
原创 STM32CUBEMX学习3.0定时器中断
第一步:在cubemx中将想要设置的定时器的IO口设置为定时器通道第二步:将对应的GPIO配置好第三步:设置时钟树,在这里由于PE9是挂在AHB1上的,设置AHB1的时钟为10MHz第四步:将定时器1的时钟源选择为内部时钟第五步:设置好定时器的参数第六步:设置中断优先级第七步:使能中断第八步:编写回调函数第九步:...
2020-09-26 21:27:04 148
原创 STM32CUBEMX 学习过程2.0 外部中断
使用cubemx工具进行配置外部中断时第一步 只需将IO口设置为外部中断模式第二步配置好中断的触发方式第三步 设置中断优先级第四步 只需要自己编写一个回调函数就可以了(里面放置中断发生时需要做的操作)...
2020-09-26 15:16:34 142
原创 STM32CUBEMX学习过程记录1.0 IO输入输出 led与按键
1.在使用led的过程中,主要需要mcu输出信号,因此需要使用到HAL库中的HAL_GPIO_WritePin( )函数,此函数有三个参数HAL_GPIO_WritePin(GPIOA,GPIO_PIN_8,GPIO_PIN_SET),其中GPIO_PIN_SET为设置输出为高电平,GPIO_PIN_RESET为设置输出为低电平。2.在使用按键的过程中,主要需要mcu获取输入的信号,因此需要使用到HAL库中的HAL_GPIO_ReadPin( )函数,此函数有两个参数HAL_GPIO_ReadPin(GP
2020-09-16 20:21:36 307
原创 python第十一章
11-1 城市和国家 : 编写一个函数, 它接受两个形参: 一个城市名和一个国家名。 这个函数返回一个格式为City, Country 的字符串, 如Santiago, Chile 。 将这个函数存储在一个名为city_functions.py的模块中。创建一个名为test_cities.py的程序, 对刚编写的函数进行测试(别忘了, 你需要导入模块unittest 以及要测试的函数) 。 编写一个名为test_city_country() 的方法, 核实使用类似于’santiago’ 和’chile’ 这
2020-07-29 23:21:45 189
原创 python第十章
10-3 访客 : 编写一个程序, 提示用户输入其名字; 用户作出响应后, 将其名字写入到文件guest.txt中。name_get=" "filename = "D:\Pycharm1\\first\guest.txt"name_get=input("please input your name")with open(filename,"a") as file_objects: file_objects.write(name_get+"\n")10-4 访客名单 : 编写一个whil
2020-07-29 21:42:34 654
原创 python第九章
9-1 餐馆 : 创建一个名为Restaurant 的类, 其方法__init__() 设置两个属性: restaurant_name 和cuisine_type 。 创建一个名为describe_restaurant() 的方法和一个名为open_restaurant() 的方法, 其中前者打印前述两项信息, 而后者打印一条消息, 指出餐馆正在营业。class Restaurant(): def __init__(self,name,type): self.name = nam
2020-07-23 17:15:08 277
原创 python第八章
8-1 消息 : 编写一个名为display_message() 的函数, 它打印一个句子, 指出你在本章学的是什么。 调用这个函数, 确认显示的消息正确无误。def display_message(): """8-1例题""" print("学习函数")display_message()8-2 喜欢的图书 : 编写一个名为favorite_book() 的函数, 其中包含一个名为title 的形参。 这个函数打印一条消息, 如One of my favorite books is
2020-07-20 00:30:36 280
原创 python学习过程记录
7-4 编写一个循环, 提示用户输入食物, 并在用户输入’quit’ 时结束循环。 每当用户输入一种食物后, 都打印一条消息, 说我们会给你这种食物。messgae = "If you want some food? "food = " "while food != "quit": food = input(messgae) if food != "quit": print("I will give you "+food)7-5 电影票 : 有家电影院根据观众的年
2020-07-19 16:12:49 132
原创 蓝桥杯学习记录05之IIC
脉冲记得延时;错误:IIC接受数据时,写成了receiver=(SDA&0X01);因此把高位直接忽略了。应改为receiver|=(SDA&0X01);或者if(SDA) receiver|=0X01;硬件写保护指的是当WP接高电平时,只能进行读操作;EEPROM连续写和读时,记得加两毫秒左右的延时;...
2020-02-24 00:04:28 156
原创 蓝桥杯学习记录04
1.二进制与十进制可以进行乘除运算,结果为10进制2.DS18B20中的释放总线操作即为放弃对总线的控制,此时主机不能对外有输出3.关于unsigned int 存疑???...
2020-02-11 00:44:49 93
原创 ad18的使用记录
原理图绘制 选元件时,右下角panels的components改原理图的大小 :双击边缘,sheet size里面改复制元件:可以框选中+shift按x 镜像 按a 选对齐调整格点 :视图里面的栅格designator是位号 pcb的丝印添加辅助线:放置,绘图工具,线 shift+空格 改变角度...
2020-02-11 00:39:12 3174
原创 蓝桥杯学习笔记03
1.在进行用按键控制led的亮灭时,抬手检测非常重要,如果没有抬手检测,led电平就会反复偏转,导致控制效果不明显常见的按键抬手检测:while(!P30);2.关于定时器/计数器实现定时功能的几种方法:(1)软件定时:不占用硬件资源,但占用了CPU时间,降低了CPU利用率(2)定时器…3.关于52系列单片机和15系列单片机的定时器(1)机器周期与晶振周期晶振(时钟)周期:时钟脉...
2020-02-04 17:08:54 168
原创 关于蓝桥杯的学习笔记02(动态数码管)
1.蓝桥杯单片机的led模块,数码管模块,蜂鸣器模块均用到了锁存器,要应用这些模块时,首先应该打开锁存器。尤其应该注意,在操作动态数码管时,对于多个数码管,要进行多次开锁存器,以及记得“消影”ps:关于或非门的补充 2.共阳极数码管位选为高电平,数码管是由发光二极管组成的,是单向导电,公共端是位控制(位选)端,共阳极就是发光二极管正极连接在一起,所以需要高电平驱动,电流流向低电平的段控制...
2020-01-31 22:36:02 364
原创 关于单片机中共阳极发光二极管及位运算
如图为共阳极发光二极管,即发光二极管的正极共同连在电源正极(共阴极即发光二极管负极共同接地),在单片机中,操作共阳极发光二极管时,若要使led亮,则IO口应输出低电平,反之若要熄灭led,则IO应输出高电平.共阴极发光二极管原理一样。关于单片机中位运算的补充:左移 << 用来将一个数的各二进制位全部左移N位,高位舍弃,低位补0。右移 >> 将一个...
2020-01-30 22:49:04 1100
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人