atmega

    -3熱度

    1回答

    我是AVR編程的新手,我試圖用atmega8實現一個急轉彎。我能夠實現直線路徑,但不能執行急轉彎。這裏是我的代碼: `#include <avr/io.h> #include<util/delay.h> int main(void) { DDRC=0b00000000; DDRB=0b11111111; int count=1,right=1; wh

    4熱度

    1回答

    我在我的atmega 328p上實現了一個時間計數器。我看了arduino millis函數的實現,我有點困惑,爲什麼他們使用定時器溢出中斷,每執行一個1.024毫秒(freg = 16MHz,64個預分頻),當他們可以使用輸出比較匹配中斷,可以設置爲每隔1ms觸發一次(OCR0A = 249)。使用定時器溢出中斷是否有優勢,並對輸出比較匹配中斷進行一些更正,以每隔1ms執行一次?或者他們爲什麼使

    0熱度

    1回答

    我有一個avr程序,我想使用指向方法的指針。但是,爲什麼使用函數指針比正常調用慢4倍呢?我如何加快速度? 我: void simple_call(){ PORTB |= _BV(1); } void (*simple)() = &simple_call; 然後,如果我編譯-O3,並呼籲: simple_call() 需要250ns的完成。如果我改爲撥打: simple() 需要96

    2熱度

    1回答

    我剛開始在Assembly中完全編碼的大型項目。有多個子程序,宏,內存表等。我想知道如何最好地將代碼分成多個文件。目標顯然是更好的結構和更好的可讀性。 目前我使用.inc文件包含我所有的常量定義(.equ),但如何處理我的許多子例程?如果我想將它們放在另一個文件中,是否需要使用.asm文件(因爲它包含可執行代碼)?更一般的:.asm-和.inc-文件有什麼區別,尤其是關於如何將它們包含在一個主文件

    0熱度

    1回答

    我寫了這個代碼: #define __AVR_LIBC_DEPRECATED_ENABLE__ #include <avr/delay.h> #include <avr/io.h> #include "lcd.h" #include <avr/interrupt.h> int screen = 0; void insideTemp(void) { while (1) {

    0熱度

    1回答

    我使用atmega2560從溫度傳感器tmp36讀取溫度。在讀取兩個atmega2560微控制器的溫度傳感器數字值並將其轉換爲可讀形式後,我得到了不同的答案。爲什麼我會得到這種類型的答案。 ? 一段代碼如下存在: float temp; // global variable { unsigned long temp_volt; unsigned char temp_h, temp_l;

    2熱度

    1回答

    傳輸到允許NACK的主機時是I2C從機嗎? 從規範(2.1)看來,在發送數據時,從設備無法實際發送NACK給主設備,即從從設備向主設備發送數據。 我已經在網上搜索過,無法在這裏找到任何幫助。 爲什麼?我正在AVR Atmega8中實現一個I2C主設備。我想涵蓋所有用例。我有一位用戶注意到,當I2C從設備在SLA + R模式下發送NACK時,主設備忽略它。 據我所知,啓動SLA + R的主設備是唯一

    0熱度

    1回答

    我一直在這一整天,我試圖創建一個使用兩個七段顯示倒數計時器。我希望它從20開始倒數​​到零。雖然10 <我只想在左邊顯示(即在十位沒有0)。我使用的是Atmega 324A。我已將端口C的所有端口連接到顯示段,並使用PIND0在兩者之間切換。這是我到目前爲止。 #include <avr/io.h> #include<util/delay.h> int main(void) {

    -1熱度

    1回答

    我使用C編程atmega8535我想使用ALFAT OEM模塊將數據保存到閃存磁盤。但是,我有問題,因爲我希望將數據保存到中間程序中的其他變量(數據保存成功,但數據錯誤)。它發生在malloc之後。我已經malloc變量數據。我正在使用超級終端來調試我的程序 這是我的代碼。我只顯示相關的 // Declare your global variables here char* reply = NU

    0熱度

    1回答

    我只是在學習如何使用Arduino,所以我買了一個與ATMega328一起的Arduino UNO。而剛剛開始學習我想使用控制器作爲緩衝: 如何將是該代碼?我可以使用什麼引腳來接收RS232信號? 非常感謝。