|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
单片机中基于查表法的多变量函数求解方法设计
( l- q/ @4 D6 E- Y4 R51系列单片机具有成本低廉性能优良的特点,在生产控制与信息检测方面得到了广泛应用。一般情况下,单片机要对接收到的" c8 M& a" {3 R" t" a# G) W
检测量进行分析运算,然而其并不擅长实现复杂的算术运算。主要原因是单片机直接实现复杂的算术运算不仅要耗费大量时间,而.& k/ x+ X* {4 f# ^4 v
且在编程实现方面也存在很大困难。例如对于Atmel公司的AT89C51单片机而言,其外部晶振一般为12MHz,其振荡周期为tz,则" W! ]- S3 q- T4 w2 U) Y F# X
有:4==us ,其机器周期为t,则t,=12一us=1μus "。在单片机计算编程方面,可以利用汇编语言或C语言两种方式进行编
. H8 W: l/ I5 b+ q" B7 U程,其中前者执行效率较高。在51单片机的汇编语言系统中,只有加、减、乘除四种算术运算指令,执一位加法至少需要一个机器
( N: _, Y1 }1 e1 I& T& p周期,而执行一次以为乘法或除法命令则至少需要四个机器周期即4us。指令系统中没有三角函数、指数函数,对数函数等算术运箅.
& j: ]" v' k) a: U/ E+ ~0 k! s指令q。因而对于一-个复杂的算术公式,如果想要实现在单片机中对其进行算数求解,首先要根据某些复杂的算法将其转化为加、; m: c" O2 M( q% o- y4 V
减乘、除四种运算的形式,然后在计算时进行调用。这样必将大量占用单片机资源。所以开发人员一般利用建立数据表的方法实现9 L1 X3 @, r4 G9 T3 g+ Z
复杂关系式的分析求解,这样只需要成分利用转移查表语句,便可以快速找到所求结果。所以需要设计合理的建表、查表算法以实
$ f" N/ g* C* T& g现对数据的求解。; h# W( f) m. X4 n& ]
& x6 k, \5 s- Y2 l4 B
6 v, b+ e' M: a
9 y: t: X9 |) ]. s) q |
|