版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 漳州城市职业学院《成本会计学》2025-2026学年期末试卷
- 闽江学院《临床医学概要》2025-2026学年期末试卷
- 闽南科技学院《幼儿园课程与教学论》2025-2026学年期末试卷
- 中国药科大学《新闻采访写作》2025-2026学年期末试卷
- 六安应用科技职业学院《宪法学》2025-2026学年期末试卷
- 人工智能促进教育变革
- 产科护士职业规划
- 广西柳州市2026届高三语文二模考试试卷(含答案)
- 感光材料生产工安全技能测试模拟考核试卷含答案
- 飞机外勤仪表、电气工安全技能模拟考核试卷含答案
- 艰难梭菌感染
- (2025版)血液净化模式选择专家共识解读
- 2026年北京市丰台区高三一模英语试卷(含答案)
- 材料力学试题库(含答案)
- 2021 年四川‘五类人员’选拔笔试题目及解析
- 工程监理现场巡视检查规程
- 博物馆展厅安全工作制度
- 脑卒中急救绿色通道建设
- 胰岛素注射部位轮换的标准化操作
- 老年共病患者个体化诊疗的精准策略
- 2026年贵州省贵阳国家经济技术开发区招聘聘用制人员11人易考易错模拟试题(共500题)试卷后附参考答案
评论
0/150
提交评论