atmega

    0熱度

    1回答

    我很難找到我懷疑在我的代碼中是一個非常愚蠢的錯誤。我正在使用ATmega328。 我需要的是產生一個PWM信號,其佔空比不是介於0%和100%之間,而是介於另外兩個值之間。這是通過設置宏duty_max和duty_min來考慮的。我在做什麼在我的代碼正在讀取ADC技術,具有1024個值的分辨率,並映射讀取接受值的範圍值: #define duty_max 239 #define duty_min

    0熱度

    2回答

    我想設置一箇中斷和一個計數器/定時器。中斷是外部的,從引腳讀低邏輯。計時器應該每增加一個100美分並加起來爲count變量。 但是,我設置了中斷,但它正常工作,設置定時器後,既不中斷也不定時器工作。該代碼是這樣的: volatile boolean allowCount = false, timerFlag = false; volatile unsigned int counter; boo

    1熱度

    1回答

    我正在寫一個小型嵌入式程序,在那裏我通過uart發送一些命令到atmega328p芯片。這些命令以字符$開頭並以字符#結尾(所以我知道何時執行解析)。接收到命令後,我解析並打開設備(COMMAND:TURN_ON_I1)或關閉(COMMAND:TURN_OFF_I1)。該應用目前看起來是這樣的: // ------- Defines -------- // #define F_CPU 80000

    0熱度

    1回答

    我試圖在Arduino板上使用C來控制2個電機的速度。但是,在上傳代碼時,儘管OCR值相同,但每臺電機仍以不同的速度運行。你可以給它一個檢查原因,如果你這樣做,我會非常感激。兩臺電機是一樣的。我使用的板是Arduino Uno #include <avr/io.h> #include <util/delay.h> void setup() { DDRB = B11111100;

    -2熱度

    1回答

    我想要使用if語句來控制在Arduino Uno電路板上使用C的電機。但是,如果設定爲當傳感器的PIN等於0時,電機會運轉,但根本不工作。我也嘗試設置PIN不等於0和1,都工作正常。你們可以給它一張支票嗎?非常感謝你。 int MotorL=11; int DirectionR=12; int MotorR=10; int DirectionL=13; int SensorM=0; #

    1熱度

    1回答

    我試圖用adafruit PWM伺服控制器來控制幾個伺服器。它使用i2c接口從微控制器進行通信。 https://www.adafruit.com/product/815 我正在使用Atmega 168試圖使用簡單的i2c庫向微控制器發送I2C指令。 #include "i2c.h" void initI2C(void) { TWBR = 32; /* set bit

    0熱度

    1回答

    我目前正在研究Arduino。我正在使用Atmega1284爲Lamp工作。我看到一個示例代碼,ModbusIP_ENC28J60 - > Lamp。我第一次編譯它時沒有添加任何內容,它編譯正確。現在,我添加了WebSocketServer,因爲我希望它也可以在websocket上工作。我添加了一些必要的行,但我結束了這個錯誤: error: 'EthernetClass Ethernet' re

    1熱度

    1回答

    我想了解Arduino引導程序。我在這裏找到了一些介紹:Arduino Bootloader,但我需要更多的細節,因此我尋求幫助。 在我的研究中,我發現一個起點:好的,Arduino(atmega家族)有一個專用於引導加載程序的特定閃存塊。一旦該MCU具有引導加載程序,它就可以通過串行下載新程序並將其存儲在地址爲0x00的閃存中。 讓我們爲這個問題設定atmega328p。 #1 - 如果你看看3

    0熱度

    2回答

    使用Arduino Mega 2560的寄存器,我試圖獲取PORTA的信息。我已經提到了datasheet(第69-72頁),並且明白我必須爲此使用PINxn(PINA)。但是我得到的結果是0作爲輸出。我已將該引腳連接至LED。 代碼和輸出如下所述。 CODE #define F_CPU 16000000 #include <avr/io.h> int main(void) { D

    0熱度

    1回答

    我正在做一個項目,我需要兩個不同ADC的兩個測量值以及兩個不同的PWM信號。測量值存儲在變量freq和duty中。如名稱所示,我想要一個PWM信號的頻率根據freq的值而變化,而另一個必須根據duty更改其佔空比。問題是第一個信號工作正常,但第二個信號沒有。 我正在使用ATmega328p。我試過使用一個常量值而不是變量duty,但發生了同樣的情況。代替PWM信號,輸出引腳(OC0B)始終設置爲高