1

私はこの低レベルのものに慣れていません。私は現在arduinoを学んでいます。私は現在 Arduino Mega 2560 を使用しており、私たちのコースではメモリ管理を実践しています。私はPCのメモリ管理のプロですが、どういうわけかここarduinoでクレイジーな問題を抱えています. 例えば:

arduinoには8192Bがあり、uint_16でオーバーフローさせようとしているので、512である8192/16の配列を作成しました。

uint16_t A[512+1];

まあ、それがオーバーフローを引き起こすと思っていました。

私のコンセプトの何が問題になっていますか?

4

2 に答える 2

3

あなたはあなたのバイトのためにあなたのビットを混乱させているようです。

Arduinoで2であると仮定するとsizeof (uint16_t)、513個の16ビット整数の配列は1026バイトしか使用しないため、簡単に適合します。

于 2012-11-13T10:55:28.750 に答える
0

また、メモリがいっぱいのArduinoでも、エラーや警告は発生しません。マイクロコントローラが再起動するだけです。

于 2012-11-13T15:28:17.720 に答える