多做练习,如果你现在用的C语言开发单片机,想提高自己的算法能力,那建议你多看看C语言的常用算法,然后用单片机板子上的LCD,LED等来验证自己的算法程序。

举一些常用算法例子吧,你可以试试在单片机上实现。

一、嵌入式C语言常用算法举例

算法就是为解决某一特定问题而采取的具体有限的操作。具有有穷性、确定性、可执行性、领个或多个输入以及一个或多个输出。

如何提高单片机的算法

1、冒泡排序算法

将一串数据使用冒泡法进行排序。

将排序后的数据按照从大到小或者从小到大的顺序在LCD液晶上显示出来。

2、回文算法

检测字符串是否是回文字符串,如果是回文字符串,则点亮LED,如果不是,则蜂鸣器响一下。

3、幂运算

程序中随意定义一个无符号整型数据N,然后计算出1*2*3*4*......*N的结果,通过液晶显示出来结果。

4、加法运算

程序中随意定义一个无符号整型数据N,然后计算出1+2+3+4+......+N的结果,通过液晶显示出来结果。

5、求直角三角形边长

用正弦函数,余弦函数,通过已知的斜边长度计算出两个直角边的长度,通过液晶显示出来。

6、在排序好的数组中插入元素

程序中先定义一个排好序的数组,然后用随机数产生函数产生一个随机数,把这个转数组原有的排序方案插入到数组中,通过液晶显示该随机数位于数组的第几个元素。

7、字符串的拼接

程序中定义两个字符串,然后将它们拼接为一个字符串,通过液晶显示出来。

如何提高单片机的算法

8、闰年判断

编写一个判断闰年的程序。

9、字符串查询

在一个现有字符串中查找另一个字符串,如果找到则点亮LED,否则蜂鸣器响。

10、输出三位水仙花数

所谓水仙花数,是指一个三位数,其各位数字立方和等于该数本身。

例如,153是一个水仙花数,因为153=1的3次方+5的3次方+3的3次方。

11、计算某个日期对应该年的第几天

例如:编写程序计算2018年5月1日对应2018年的第几天。

12、输出月份对应的英文名称

例如:编写程序计算2018年5月对应的英文名称。

如何提高单片机的算法

二、常用数字滤波算法

编写一个AD转换程序,分别使用下面的滤波算法实现滤波功能。

1、程序判断滤波

2、中值滤波

3、算术平均滤波

4、去极值平局滤波

5、滑动平均滤波

6、滑动加权滤波

7、一阶滞后滤波

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查