文章目录1、格式化输出字符串2、列表操作3、切片4、字典5、函数式编程6、面向对象 1、格式化输出字符串常见的占位符有:%d 整数, %f 浮点数, %s 字符串, %x 十六进制整数(1) %print('Hi, %s, you have %d kg.' % ('大白', 100)) #'Hi, 大白, you have 100 kg.'(2) .format()print('%2d-%02d
转载 9月前
24阅读
# 如何使用Python实现方波及其占空比 在电子和信号处理中,方波是一种基本而重要的信号,它由一系列交替的高低电平组成。方波的一个基本特性是占空比(Duty Cycle),占空比表示高电平与方波周期的比率。本文将引导初学者如何使用Python生成方波,并控制其占空比。 ## 整体流程 在开始编码之前,我们需要明确整体流程,便于后续实施。以下是一个简单的流程图,展示了我们需要执行的步骤。
原创 11月前
188阅读
1. 信号量信号量本质也是锁,只不过一把锁可以有很多钥匙(自己设置),决定同一时间可以有多个进程同时操作,其他进程会一直等待(阻塞)知道拿到钥匙的进程释放钥匙; from multiprocessing import Process,Semaphore sem=Semaphore(4) # 设置四把钥匙,表明可以同时开四个进程 sem.acquire() # 需要钥匙 print("第一个
转载 2024-09-21 11:05:29
35阅读
申明以下都是个人理解,仅供参考。如果错误欢迎指教。本文不讲底层,根据实际使用来逆向讲解。1.什么是pwm?pwm最简单的理解就是“功率”,调节PWM的占空比就是调节功率。2.如何调节占空比?图1  根据图1很容易看出来调节CCRX的值就可以调节占空比,CCRX的值越大,占空比越大(在不超过ARR时)。在默认有效值为高电平的时,当CCRX的值等于ARR时PWM的波形为一条直线(即
上个试验中,我们创建了简单的工程编程了FPGA并且通过现实的开关测试了代码。这样的测试在实验一这样的简单的工程是足够了,但实际的工程中都是比较复杂的,这使手动的测试很难满足工程需求,这就需要仿真来验证工程。这里举一个最简单的仿真。Test Bench仿真所设计的工程需要人为控制输入以验证输出的正确性。理想的的测试是创建输入激励信号并且验证输出的正确性。实际工程中,当测试进行过程中,需要打
  最近的工程要用到PID算法,在这里与大家分享一下。本文章适合直接上手PID,直接将PID与STM32结合运用起来,比较适合没有接触过PID的新人或者是算法与STM32结合不熟悉的新同学,如果要详细了解PID算法与调整算法还是需要深入了解一下PID算法。这里介绍一个讲PID算法很详细的博主         PID参数调整,个人经验(配输
UC3842是AC-DC反激式变压器中常用的电源管理芯片,其具有较低的启动电流(<1mA),并且可以在高达500KHz频率下工作,在输出端输出可脉宽调制的PWM波来驱动NMOSFET,并且在MOS管关断时具有较低的功耗。一、管脚描述(以8脚封装为例)图1. UC3842管脚分布图1.COMP(Compensation):误差放大器补偿引脚。内接误差放大器E/A的输出端,可通过连接外部补偿组件
转载 2024-04-09 14:47:12
1159阅读
1点赞
1评论
对于很多使用智能手机的用户来,很多抱怨手机耗电太快,很多人买手机的时候卖家都是推荐买两块电池,还有如果用户留心的话,在买手机的网页上,卖家会显示播放视频多长时间,听音乐多长时间,待机多长时间,不过看的最多的应该是他们说待机能够多长时间,今天写这篇文章是由于之前面试一家公司,老板问我如何说一个app算是一个好的程序,当时我给出了三点:1、界面UI 2、流畅度 3、处理耗时数据时,如何在UI上的体现。
占空比(Duty Cycle)是描述开关电源中功率开关管导通时间比例的重要参数。计算公式为:占空比(D) = 导通时间(Ton)/ 总周期时间(T) × 100% 其中: • Ton:开关管一个周期内的导通时间• T:开关周期(= 1 / 开关频率)一、通用电路占空比计算占空比由电路拓扑和工作模式决定:Buck电路(降压) D = \frac{V_{out}}{V_{in}} (连续导通模式,忽略
原创 2月前
698阅读
简言我之前学linux的时候,觉得linux的命令很酷,最近又有写代码的热情,于是手撸了一个串口终端。初次使用介绍特性像终端一样使用输入niubi后,键入回车,输出自己写的回调函数中的内容。支持tab键补全按下n后按下tab键后,到库中匹配关键词,匹配到niubi,显示到下一行。当有多个关键词可以匹配时,提示匹配关键词,并在新的一行显示刚刚输入的内容。支持Backspace键当输入有误时,可以按B
在Linux系统中,PWM(Pulse Width Modulation)是一种用来控制硬件设备的技朧,它通过调整信号的占空比来控制输出电压的平均值,从而控制硬件设备的运行状态。在Linux系统中,可以通过设置PWM占空比来控制硬件设备的工作频率和亮度等参数。本文将重点介绍在Linux系统中如何设置PWM的占空比。 在Linux系统中,PWM的驱动通常由相应的设备驱动模块来管理。在设置PWM占空
原创 2024-03-25 10:05:35
387阅读
根据我的经验,处理Android蓝牙扫描占空比的问题通常涉及多个方面。接下来,我将记录下这一过程中的环境预检、部署架构、安装过程、依赖管理、服务验证和最佳实践。希望这段内容能够帮助其他开发者解决类似的问题。 在开始之前,我们需要了解“Android蓝牙扫描占空比”的含义。扫描占空比通常指的是在蓝牙扫描过程中设备处于扫描状态的时间与设备的整个工作周期的比例。合理的占空比设置能够有效减少电池消耗,同
原创 6月前
50阅读
在使用STM32F103产生固定频率、固定占空比的PWM波时,虽然有官方以及众多开发板提供的例程,但是关于有点问题并没有说的很清晰,并且《STM32F10X参考手册》的中文翻译可能容易造成歧义,所以一开始并没有理解,这里就梳理一下我的理解,如果有误解的情况,希望交流指正。1. 遇到的问题先直接上段配置代码,这段代码是产生一个20kHz固定频率,50%固定占空比的方波信号,典型的配置过程
3).查看3.查看#(1)通过索引和切片查看元素 #(2)通过索引值和出现次数 list = [1,2,2,2,2,3,4,4,5] print(list.count(2)) # 元素2出现的次数? print(list.index(3)) # 元素3的索引值是多少?4.删除(1) 根据索引删除list = [1,2,3] del_num = list.pop(0) print(list)
问题描述为了备赛蓝桥杯,开始更深入的接触PWM的各个模式(之前只使用过PWM1和PWM2的输出模式)。在比赛提供的官方固件库的基础上进行修改,暂且用了两块板子,板子A烧录的之前写的输出比较输出两路频率和占空比可变的PWM作为信号发生源供烧入捕获的板子B检测。 板子A一路是1Khz作为基频的频率可调,另一路是10Khz作为基频的占空比可调的PWM(只有四个按键,就一路一个功能了)。官方例程基本不需要
### 重要知识点 - 生成式(推导式)的用法 ```Python prices = { 'AAPL': 191.88, 'GOOG': 1186.96, 'IBM': 149.24, 'ORCL': 48.44, 'ACN': 166.89, 'FB': 208.09, 'SYMC': 21.29 }
转载 2023-08-29 22:38:04
39阅读
占空比是接通时间与周期之比冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同占空比:就是输出的PWM中,高电平保持的时间与该PWM的时钟周期的时间之比,如一个PWM的频率是1000Hz,那么它的时钟周期就是1ms,就是1000us,如果高电平出现的时间是200us,那么低电平的时间肯定是800us,那么占空比就是200:1000,也就是说PWM的占空比就是1:5。分辨率:
转载 2022-12-07 01:08:51
1944阅读
前言博文基于STM32F103ZET6芯片,标准固件库3.5.0和MDK5编写;博文并不讨论PWM的基础知识,而是直接去谈对PWM灵活的控制问题;想全面了解的可以看看我写的专门针对PWM的博客: 如有不足之处还行多多指教;PWM的两个重要参数占空比:0~100%;信号周期:PWM信号里一个高电平和一个低电平的时间和; 对这两个参数的设置是配置PWM输出的核心也是今天要讨论的主要任务;是什么决定上面
下面的这个是stm32的定时器逻辑图,上来有助于理解: TIM3的ARR寄存器和PSC寄存器,确定PWM频率。 这里配置的这两个定时器确定了PWM的频率,我的理解是:PWM的周期(频率)就是ARR寄存器值与PSC寄存器值相乘得来,但不是简单意义上的相乘,例如要设置PWM的频率参考上次通用定时器中设置溢出时间的算法,例如输出100HZ频率的PWM,首先,确定TIMx的时钟,除非APB1的时
STM32-定时器输入捕获实验(捕获PWM方波的频率和占空比)一、输入捕获模式在输入捕获模式下,当检测到ICx信号上相应的边沿后,计数器的当前值被锁存到捕获/比较寄存器(TIMx_CCRx)中。当捕获事件发生时,相应的CCxIF标志(TIMx_SR寄存器)被置’1’,如果使能了中断或者DMA操作,则将产生中断或者DMA操作。如果捕获事件发生时CCxIF标志已经为高,那么重复捕获标志CCxOF(TI
  • 1
  • 2
  • 3
  • 4
  • 5