|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
单片机中基于查表法的多变量函数求解方法设计
/ @( e. ]3 L) ?( H# O2 o8 a51系列单片机具有成本低廉性能优良的特点,在生产控制与信息检测方面得到了广泛应用。一般情况下,单片机要对接收到的* A0 Q* O/ |/ i4 k; j, I! ~
检测量进行分析运算,然而其并不擅长实现复杂的算术运算。主要原因是单片机直接实现复杂的算术运算不仅要耗费大量时间,而.& C9 F# l6 @# N! G" I7 E L
且在编程实现方面也存在很大困难。例如对于Atmel公司的AT89C51单片机而言,其外部晶振一般为12MHz,其振荡周期为tz,则! c' P {5 c* @6 ~/ O# a
有:4==us ,其机器周期为t,则t,=12一us=1μus "。在单片机计算编程方面,可以利用汇编语言或C语言两种方式进行编0 i9 D- {( U5 k5 N4 ^2 w9 H, v
程,其中前者执行效率较高。在51单片机的汇编语言系统中,只有加、减、乘除四种算术运算指令,执一位加法至少需要一个机器% \( D1 g6 D3 Z |- ]! [
周期,而执行一次以为乘法或除法命令则至少需要四个机器周期即4us。指令系统中没有三角函数、指数函数,对数函数等算术运箅.9 F" y" G; V" [) B2 M4 y' O0 c3 ?6 }
指令q。因而对于一-个复杂的算术公式,如果想要实现在单片机中对其进行算数求解,首先要根据某些复杂的算法将其转化为加、
2 ?- n& ]6 e: T' Z减乘、除四种运算的形式,然后在计算时进行调用。这样必将大量占用单片机资源。所以开发人员一般利用建立数据表的方法实现/ J) {% ~ ?. y* K* [+ |2 \+ y
复杂关系式的分析求解,这样只需要成分利用转移查表语句,便可以快速找到所求结果。所以需要设计合理的建表、查表算法以实
& W' m( [$ A5 T" [8 G8 x6 E现对数据的求解。* N. [, \+ P9 c& _
R6 I# W4 O' t! Y) F, \8 J `/ I$ S2 R
) S9 I3 }/ |- a# ]9 ^8 S
|
|