51微控制器怎樣計算sin x 和cos x

時間 2022-05-30 12:30:12

1樓:匿名使用者

三角函式的計算是使用的弧度(rad),如果你得到的角度單位是度(deg),需要將deg轉換為rad才能用三角函式計算。

1rad=180/π,所以任意度數x轉換為弧度就是x*π/180。

2樓:匿名使用者

sin(x) cos(x)的引數應該是弧度吧,用(角度*π/180)換算成弧度作為輸入引數就對了。

另外你看到的很大一個值可能是負數,如果看成無符號數就很大了。

3樓:year醫海無邊

cosx=1/2,由常見角度的正餘弦直接可得x=2kπ±π/3

4樓:法術大師巴林

能不能描述下具體怎麼錯了,sin函式本身不應該有問題,最好吧附近**和結果貼上來,這樣好幫你看看。

5樓:匿名使用者

用c51的浮點庫吧。

51微控制器使用數學函式庫中的正弦函式 需要怎樣改?

6樓:匿名使用者

不建議直接用正弦函式,因為執行時間會很久,51微控制器運算能力比較弱,一般都是用演算法計算高階函式的,為了執行時間以及效率高,通常都是把高階函式用另外的方法去做,例如你這裡要計算y=sinx這個函式,顯然直接用庫函式是容易寫程式是容易,但是微控制器執行就很慢(可能要算一秒才能出結果),如果你的精度不需要很高(例如精確到1度),你做表,把1度到90度的正弦值全部自己算出來,然後做成表,通過查表方法就可以得到結果,這樣雖然寫程式是麻煩,但是執行速度和效率都高。你應該是剛剛學習微控制器的,不理解cpu底層,c語言雖然是很靈活,但是也要看是什麼cpu,是根據cpu選擇高效率的資料型別以及演算法。

7樓:匿名使用者

y= (float)sin(x);

強制型別轉換,是這麼表示的,其實不用轉換都可以,sin返回就是float型別

8樓:melody丶丨

最後一句 改成 y= sin(x);

51微控制器:用查表法求y=5sin(x)(0<=x<=360度,分20檔)

9樓:匿名使用者

float code tab=;

float sin(uint x)

return 0;//否則返回0}

誰有用微控制器編的實現sin,cos功能的計算器的程式?高分!

10樓:

在標頭檔案math.h裡就有sin和cos,直接呼叫就可以了

如果是用匯編的話,去網上找子程式,自己的話有點難度

11樓:匿名使用者

大驢哥,大驢哥,愛吃魚

51微控制器,數碼管,矩陣鍵盤,簡易計算器,加上獨立鍵盤sin cos,求解答

12樓:敲骨吸髓社會

加標頭檔案直接引用就好

13樓:yd極女

都不知道你要問的是什麼?怎麼答

如何在微控制器上輸入sin()函式

14樓:匿名使用者

不知道你用的什麼微控制器,要是51系列的 直接新增標頭檔案#include"math.h"即可

STC89C51微控制器復位,51微控制器復位後各暫存器狀態是怎樣的

該微控制器正常工作時復位端電壓應保持低電平狀態,復位時給復位端加上一個短暫的高電平即可使微控制器程式復位。該復位電路的工作原理是,電源通過電解電容再通過電阻串聯到地,電容兩段並聯一按鍵開關,正常工作時電容隔斷電源電壓,微控制器復位端相當於通過電阻接地。因電路中無電流,所以復位端電壓為0伏。當執行過程...

51微控制器C語言控制頻率原理,51微控制器改變頻率怎麼實現,最好是用C語言程式

1全部假設你的51微控制器用的晶振是12mhz的,那麼可以得到如下結論 51執行一個指令的時間週期是1us,這個是51的基礎知識,就不深入講解了。然後,如果用定時器0確定輸出頻率,假設定時器0的tl0初始值是0x01,那麼當tl0變為0x02時,就是經過了1us時間 這個懂吧?那麼,設定定時器0為工...

C51微控制器程式設計

include define uchar unsigned char define uint unsigned intsbit high key p1 0 sbit low key p1 1 sbit led p2 0 sbit speak p2 1 uint count void delay ui...