一个MM和各路神仙的暴强对话

本文通过一系列幽默诙谐的对话,展现了不同人物对于各种问题的独特见解,从婚姻到职业选择,再到宗教哲学,妙趣横生。

MM:菩萨!您大慈大悲,请您告诉我,我什么时候才能找到老公? 

菩萨:天机不可泄露!冥中自有定数! 

MM:靠!您这不是废话吗? 

菩萨:呸!我要知道我还出家? 


MM:斗战胜佛,您当初为什么选择保唐僧取经? 

孙悟空:还不是为了搞到学历! 

MM:学历真的那么重要? 

孙悟空:我一个在五指山服刑的流氓,现在成了斗战胜佛,你说重要不? 


MM:女娲娘娘!您为什么造人? 

女娲:天漏了,我好不容易补上,不造些人,我找谁收维修费去? 

MM:那您为什么把人分男女? 

女娲:我本身不男不女,我想知道男和女哪个厉害些? 

MM:结果呢? 

女娲:我又补了一回天! 


MM:后羿!您当年为什么射日? 

后羿:有人付钱 

MM:为什么留下一个? 

后羿:他们只付了九个的钱! 

MM:为什么单单留下这个? 

后羿:它也付了钱! 


MM:织女!为什么下嫁给董勇? 

织女:为了爱情! 

MM:单单是这个原因? 

织女:这…… 

MM:还因为别的什么? 

织女:他有房子! 


MM:净坛使者!你为什么喜欢高月娥? 

猪八戒:他漂亮 

MM:那现在为什么不和她来往? 

猪八戒:老子现在是公务员! 


MM:万能的佛祖!佛理的精髓是什么? 

如来:慈悲为怀! 

MM:那寺院养武僧干什么? 

如来:别人对我不慈悲为怀! 

MM:那武僧打人杀人又做何解释? 

如来:奶奶的!老子兄弟多、有钱、够狠!顺我者昌,逆我者亡!谁敢欺负我的兄弟我就打丫的! 

MM:您……怎么如此粗俗? 

如来:阿弥陀佛!咳咳……我是说:佛家广结善缘,惩恶扬善,因果报应,普渡众生! 


MM:姜太公!您当年为什么封神? 

姜子牙:替天行道,奉天呈运! 

MM:但最后没了您自己的位置! 

姜子牙:我故意的 

MM:为什么?舍己为人? 

姜子牙:屁!我封神时受贿太多,不如早早退居二线,免得麻烦! 


MM:玉皇大帝!当年唐僧取经,为什么有那么多神仙或家属下界为妖? 

玉皇大帝:天宫待的太久,收入又低,难免有几个下海的。 

MM:后来都处分了吗? 

玉皇大帝:都处分了!有的判了刑,有的严重警告以观后效。 

MM:大家犯的错误都差不多,为什么判罚如此悬殊? 

玉皇大帝:凡严重警告的都是官员! 


MM:阎罗老爷,你为什么要让人下地狱呢? 

阎罗王:谁让那些家伙看贴老不回帖呢!

### 使用单个定时器PWM同时初始化并控制舵机电机 对于STM32平台而言,在某些情况下,可以通过配置单个定时器来实现对多个设备(如舵机电机)的PWM控制。然而,由于舵机电机所需的PWM频率不同,这增加了在同一定时器下管理两者的复杂性。 舵机通常需要50 Hz的PWM信号,即周期为20 ms,占空比在0.5 ms至2.5 ms之间变化以覆盖整个运动范围[^2];而电机可能工作于不同的PWM频率,具体取决于应用需求以及所连接硬件的要求。当尝试通过同一定时器驱动这两种负载时,需确保选定的基础频率能够兼容两者的需求,并且不会引起性能下降或其他不可预见的行为。 为了满足上述条件下的多路PWM输出要求,可以采用如下策略: #### 定时器的选择与配置 选择具有足够通道数目的高级定时器(比如TIM1或TIM8),这些定时器支持更高的分辨率更复杂的波形生成功能。设定基础计数值使得产生的PWM频率至少达到最高所需频率的一百倍以上,从而允许精确调整各个独立PWM流的具体特性而不互相干扰[^1]。 #### 初始化代码示例 下面是一个简单的例子展示如何利用单一定时器完成两个不同PWM信号——一个用于舵机(假设目标频率为50Hz),另一个用于直流电机(这里假定其最佳操作频率为2kHz)——的同时生成: ```c #include "stm32f1xx_hal.h" // 假设使用TIM4作为公共定时器资源 #define SERVO_PWM_CHANNEL TIM_CHANNEL_1 // 舵机对应的PWM通道 #define MOTOR_PWM_CHANNEL TIM_CHANNEL_2 // 电机对应的PWM通道 void PWM_Init(void){ __HAL_RCC_TIM4_CLK_ENABLE(); // 启用TIM4时钟 TIM_HandleTypeDef htim4; TIM_OC_InitTypeDef sConfigOC; htim4.Instance = TIM4; // 设置实例为TIM4 htim4.Init.Prescaler = SystemCoreClock / (2000*100)-1 ; // 预分频系数计算,使定时器频率=200Khz htim4.Init.CounterMode = TIM_COUNTERMODE_UP; htim4.Init.Period = 999; // 自动重装载值设置为最大周期长度减一 htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; HAL_TIM_PWM_Init(&htim4); // 初始化PWM模式 // 配置舵机PWM通道 sConfigOC.OCMode = TIM_OCMODE_PWM1; sConfigOC.Pulse = 750; // 初始脉宽对应中间位置 sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; HAL_TIM_PWM_ConfigChannel(&htim4,&sConfigOC,SERVO_PWM_CHANNEL); // 配置电机PWM通道 sConfigOC.Pulse = 500; // 可根据实际应用场景调整初始占空比 HAL_TIM_PWM_ConfigChannel(&htim4,&sConfigOC,MOTOR_PWM_CHANNEL); } ``` 此段程序片段展示了基本框架,其中包含了针对两种不同类型外设(PWM控制对象)的不同参数设定过程。需要注意的是,这里的预分频器被设置成让定时器运行在一个相对较高的频率上(例如200 kHz), 这样可以在不影响整体精度的前提下灵活调节各路PWM的实际输出频率。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值