cost 72 ms
實現 core::fmt::Write 時的編譯器錯誤

[英]Compiler bug when implementing core::fmt::Write

在為 avr 串行監視器實現core::fmt::Write時,在write_str unwrap編譯器錯誤寫入write_fmt在任何容量下調用 write_fmt 都會崩潰,但我認為這些問題可能是相關的。 我正在為 avr 使用自定義目標:這是{ "arch": "avr", " ...

試圖了解一系列 arrays 是如何映射到 AVR 例程中的

[英]Trying to understand how a series of arrays is being mapped in an AVR routine

我正在嘗試將 Arduino AVR 例程移植到 ESP32/8266 或 python 腳本,希望了解如何破解該程序的操作。 我是自學的,只想得到有用的東西——漂亮不是必需的。 這是一種愛好,我是唯一的觀眾。 了解基本操作(99% 確定;))- 總共有 4 個 arrays - Equilarg ...

匯編中這段代碼的function

[英]The function of this piece of code in the assembly

下面的代碼是我從一個站點上找到的代碼,用於進一步研究assambly。但是我不知道這段代碼到底做了什么。 例如 do.ORG 140 做什么? 為什么是 140? 或者在這一行:.DB 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F 我們怎么寫呢 ...

帶 PWM 的聲音合成 output

[英]Sound synthesis with PWM output

我正在嘗試在 Arduboy 上合成聲音,Arduboy 是一款手持游戲設備,帶有 AVR ATMega32u4 微控制器和連接在其引腳 C6 和 C7 之間的揚聲器。 我的方案是用定時器4在C7上產生高頻PWM信號,然后用定時器3改變定時器4的占空比。 對於“hello world”級別的程序, ...

不同模塊的全局聯合

[英]Global union for different modules

我有帶有一組不同驅動程序的 MCU 代碼(用於 AVR)。 使用中的驅動程序是在啟動時選擇的(在初始化代碼中),並且一次只會使用一個驅動程序。 因此,我可以將所有 RAM 段別名為同一個位置。 這是必需的,因為 RAM 非常有限,並且所有驅動程序都需要 2-3 KB 的緩沖區等存儲空間。 目前我在所 ...

為什么 sbi 會導致位切換?

[英]Why does sbi cause the bit to toggle?

考慮這個 AVR 匯編代碼: 根據文檔,這應該在端口 A 上設置位 0,但是,此代碼實際上導致該位切換。 這是為什么? ...

2023-01-14 13:22:10   2   38    assembly / avr  
使用匯編程序使用 llc 的 output

[英]Consuming the output of `llc` with an assembler

LLVM 的llc實用程序可以將 LLVM 位文件編譯成匯編文件: 但是,生成的.s文件不能按原樣使用 GCC 的匯編程序進行匯編,有 150 多個錯誤: 作為參考,第 3213 行, llc的 output 的第一行,其中avr-as chokes 是一個.type指令: 但是,由於結果僅來自 ...

AVR mega2560 uart 示例錯誤

[英]AVR mega2560 uart example errors

當我嘗試編譯 nongnu avr 用戶手冊上的示例時,出現錯誤: 這是示例: 當我嘗試編譯它時,出現 UDR、UCSRA、UDRE 和 loop_until_bit_is_set 未聲明的錯誤。 為什么會這樣? 謝謝! ...

AVR mega2560 printf() 和 fgetc() 不工作

[英]AVR mega2560 printf() and fgetc() don't work

我正在嘗試學習嵌入式編程,所以我買了一個 arduino mega2560。 我不太喜歡 arduino IDE(因為它感覺有點太基礎和抽象了,至少對我而言:))所以我開始使用純 C 和 avr 工具包(avrdude 等)對其進行編程。 我正在嘗試編寫一個程序來讀取你的名字,然后為你名字中的每個字 ...

為什么我在使用 ReadFile() 時會在緩沖區中的偏移量處接收字符?

[英]Why do I receive characters at an offset in the buffer when using ReadFile()?

我想做什么: 我正在嘗試編寫 win 控制台,它將通過 UART 與我的 ATMega2560 板進行通信。 現在它應該將保存在stringToSend中的字符串發送到 MCU,該 MCU 應該發送回 PC。 MCU發送過來的字符串要保存在receivedString中,然后寫入win控制台wi ...

如何為外部庫定義 F_CPU?

[英]How to define F_CPU for external libraries?

我想為使用 <util/delay.h> 的 avr 編寫庫,它需要定義 F_CPU,所以我遇到了問題,C/C++ 中有沒有什么方法可以讓庫獲取用戶在 main 中寫入的屬性的定義文件? 我想這個問題有點愚蠢,因為庫首先編譯,然后是主文件。 我已經找到了使用 init.h 文件的解決方 ...

2023-01-01 22:47:13   1   66    c++ / c / avr  
整潔/緊湊的 C 代碼,用於在微控制器上使用多個 GPIO 端口

[英]Neat/compact C code for working with multiple GPIO ports on a microcontroller

我正在編寫一個程序,我需要在我的 Atmega4809 上控制許多 output 引腳。 我如何在不必編寫重復代碼的情況下使用這些代碼(例如使用循環和 arrays)? 而不是這樣做...... ..我想做這樣的事情 我試圖#define所有端口和引腳,並將它們放在 arrays 中,如下所示:( ...

划分 unsigned char 與划分 unsigned short 時的不同編譯器行為

[英]Different compiler behavior when dividing unsigned char vs dividing unsigned short

我在 C 編程領域不是很有經驗,我之前只使用過 arduino,我決定通過在不使用 Arduino IDE 的情況下在 ATtiny13 上做一個項目來讓我的腳更加濕潤,只通過 cli 進行avr-gcc 。 由於閃存非常寶貴,我正在探索各種減少代碼大小的技術。 在我的旅程中,我遇到了乘法和除法,我 ...

在 AVR 匯編程序中添加兩個帶進位的 9 位數字

[英]Adding two 9-bit numbers with carry in AVR Assembler

我需要使用指令 ADD 和 ADC 添加兩個9 位數。 這些數字存儲在R21:R20和R23:R22 (MSB:LSB) 對寄存器中。 寄存器不應被覆蓋。 我使用的微控制器是 AtMega16A,它的最大寄存器大小為 8 位。 以下是我的解決方案。 如果有人可以分享他們的反饋,我將不勝感激。 ...

無符號整數除法舍入 AVR GCC

[英]unsigned integer devision rounding AVR GCC

我正在努力理解如何將無符號整數除以 10 來計算四舍五入,就像浮點數會四舍五入一樣。 我希望這兩個總和都四舍五入到 33(3.3 相當於小數點后 1 位) 如果我比我更了解處理器如何執行整數除法,我相信答案很簡單。 ...

AVR 組件 - 停止時 Timer1 輸入捕獲?

[英]AVR Assembly - Timer1 input capture while stopped?

我在atmega328上以輸入捕獲模式使用Timer1來測量 PDM 編碼信號的周期持續時間(用於根據 DCC NMRA 標准控制 model 鐵路)。 見圖片: 捕獲在引腳ICP1上的信號下降沿觸發。 TCNT1在每次捕獲后復位,以避免16位減法(更不用說占用4個寄存器)來獲得脈沖持續時間。 ...

2022-12-15 12:03:58   1   24    assembly / avr  
avr-gcc 庫存儲在哪里?

[英]Where are avr-gcc libraries stored?

我試圖找到與 avr 中的#include 頭文件相關的.c 文件。 我想看看 avr-gcc 庫中定義的一些標准庫,尤其是 <avr/io.h> 中包含的 PORT 定義。 我在 /usr/lib/avr/include/avr 中搜索了庫並找到了頭文件,但是我正在尋找的是 .c 文 ...

PWM output 在 proteus 上始終為 0(使用 atmega328p 和 microchip studio 上的程序集編寫代碼)

[英]PWM output always 0 on proteus (using atmega328p and assembly on microchip studio to write the code)

我目前正在嘗試使用 atmega328p 上的 PWM 信號 (TCR0) 在 proteus 電路上設置伺服電機,我瀏覽了幾本手冊來設置 TCCR0A 和 TCCR0B 寄存器中的位以及 OCR0A 上的占空比值並期望OCR0A 端口上的 output。變形電路結果誰能告訴我我錯過了什么? 任何 ...

在 AVR 閃爍程序中聲明函數使其發生故障

[英]declaring function in AVR blinking program makes it malfunction

我有這個閃爍的 LED 程序(它每秒閃爍 L LED) 這工作正常但是當我添加如下功能時 L LED 不閃爍我打算這樣做。 即使我從主函數中刪除了所有代碼,它仍然以相同的方式閃爍。 我使用 avrdude 來刷新程序。 處理器是atmega328p。 這是我使用的 Makefile 我嘗試刪除參數、 ...

2022-12-11 09:23:35   1   43    c / avr / avr-gcc  

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM