版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
3.3流水灯之软件延时能力目标:理解并掌握通过改进算法提高编程效率的方法。任务要求:
电路如图所示,要求实现流水灯效果,即按LED0~LED7的顺序依次点亮,每次仅限一只LED发光,周期4秒。3.3.1程序算法
算法(Algorithm)是指解决方案准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。首先人们自然会想到“位操作法”,但这种算法编程效率太低,下面介绍两种比较好的算法:⑴查表法
即将8个状态,定义为8个字节,每隔一段时间,按先后顺序查表并将8个状态量赋值给单片机的规定输出口,状态表如下。序号状态字节(二进制)状态字节(十六进制)序号状态字节(二进制)状态字节(十六进制)11111,1110FE51110,1111EF21111,1101FD61101,1111DF31111,1011FB71011,1111BF41111,0111F780111,11117F⑵移位法所谓移位法,就是利用C语言的移位运算符“<<”、“>>”实现状态字节的循环移位。但由于C语言的移位运算符只能实现单向移位,因此必须通过一定的算法来间接实现,具体的做法是:假设M位数据A需要循环左移N位(M>N),先将A左移N位得到B,再将A右移(M-N)位得到C,最后将A、B按位求或运算即可获得最终结果。比如,8位二进制数,各位均用字母表示为“ABCDEFGH”,需要循环左移3位,可先将原数左移3位,得到“DEFGH000”,再将原数右移5位,得到“00000ABC”,最后将两数按位或即可得到循环左移3位的结果“DEFGHABC”,示意如下。①ABCDEFGH<<3→DEFGH000②ABCDEFGH>>5→00000ABC③DEFGH000|00000ABC
→DEFGHABC3.3.2任务程序的编写
本次任务程序将根据位操作法、查表法与移位法三种方法编写,需要用到的新的API函数:
①引脚输出函数HAL_GPIO_WritePin
新版HAL库改为:GPIO_PIN_RESETGPIO_PIN_SET
例程:今天我们要对若干个引脚一起输出相同的电平值,比如
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_0,GPIO_PIN_RESET);//PC0输出低电平HAL_GPIO_WritePin(GPIOC,GPIO_PIN_0,GPIO_PIN_SET);//PC0输出高电平HAL_GPIO_WritePin(GPIOC,GPIO_PIN_0|GPIO_PIN_2|GPIO_PIN_5,GPIO_PIN_RESET);//PC0、PC2、PC5三个引脚同时输出低电平或者也可以使用LL库函数,但LL库与HAL库(默认)不能同时使用,且必须在STM32CubeIDE“ProjectManager=>AdvancedSetting”中进行修改。
②引脚输出函数LL_GPIO_WriteOutputPort(推荐)
例程:LL_GPIO_WriteOutputPort(GPIOC,0x00000009);//除了PC0、PC3输出高电平,PC口其余引
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能仓储管理系统在物流行业的具体实施案例
- (教学设计)第10章 主题提升课1 静电场2023-2024学年新教材高中物理必修第三册(人教版2019)
- 2024-2025学年小学生愤怒管理技巧教学设计
- 钻采机械智能化与自动化
- 国企炼钢重组的财务与治理分析
- 陶瓷制品健康环保性能研究
- 稀疏强化学习算法
- 胚胎干细胞在脊椎动物发育中的作用
- 数字化转型对花店行业的影响
- 2023年镀锡板卷(马口铁)资金申请报告
- 《道家美学思想》课件
- 医学信息学基础知识和技术
- 医院医疗质量管理委员会会议记录五篇
- 《智能系统设计》课件
- 超市蔬果培训课件
- 语文立德树人课题研究报告
- 正视挫折主题班会课件
- 定语从句(经典)
- 研发资源的配置与利用
- 《招生话术技巧》课件
- 部编九年级语文上册第二单元大单元教学设计
评论
0/150
提交评论